ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.26k stars 175 forks source link

xz-utils package is called 'xz' on Fedora #2036

Closed alexmurray closed 11 years ago

alexmurray commented 11 years ago

Recently every time I launch steam I get a terminal pop-up with the message:

Steam needs to install these additional packages:
    xz-utils
[sudo] password for alex: <password_entered_here>
Loaded plugins: langpacks, presto, refresh-packagekit
No package xz-utils available.
Error: Nothing to do
Press return to continue: 

In Fedora this package is called simply 'xz' and I already have that package installed and steam itself continues to run fine after hitting enter above - so I think there needs to be some logic for handling the fact that the package is named differently on Fedora compared to Ubuntu etc

hickford commented 11 years ago

Yeah I see this message too. Steam works fine after I press return

Steam needs to install these additional packages: xz-utils /tmp/tmpfHiCZ3: line 6: sudo: command not found Press return to continue:

If it helps here are the packages I have installed:

$ yum list xz*
Installed Packages
xz.x86_64                             5.1.2-2alpha.fc18                installed
xz-devel.x86_64                       5.1.2-2alpha.fc18                installed
xz-libs.i686                          5.1.2-2alpha.fc18                installed
xz-libs.x86_64                        5.1.2-2alpha.fc18                installed
Available Packages
xz-compat-libs.i686                   5.1.2-2alpha.fc18                fedora   
xz-compat-libs.x86_64                 5.1.2-2alpha.fc18                fedora   
xz-devel.i686                         5.1.2-2alpha.fc18                fedora   
xz-java.noarch                        1.1-2.fc18                       updates  
xz-java-javadoc.noarch                1.1-2.fc18                       updates  
xz-lzma-compat.x86_64                 5.1.2-2alpha.fc18                fedora   
xzgv.x86_64                           0.9.1-6.fc18                     fedora   
scottlu commented 11 years ago

There is a script in the distro-specific package that steam runs, you can find it here: /usr/bin/steamdeps

Steam runs that for packages it wants to be installed. It uses Ubuntu 12.04 package names by convention. It is up to the fedora package maintainer to implement a steamdeps that translates these names into appropriate package names, and use the appropriate packaging tools, to install these dependencies.

In other words, this bug needs to be brought to the attention of the person that made the fedora steam package. If you aren't using a fedora steam package, and using the tarball directly instead, what you're seeing is expected.

I'm going to close this, please feel free to re-open if needed.

Scott

orthoB commented 11 years ago

I'll forward a note to the fedora maintainer, but here's a quick fix for /usr/bin/steamdeps:

--- /usr/bin/steamdeps_orig     2013-02-27 20:41:06.500598641 -0700
+++ /usr/bin/steamdeps  2013-02-27 20:41:46.386627514 -0700
@@ -326,6 +326,7 @@
        myval = myval.replace('zlib1g', 'zlib')
        myval = myval.replace('libpango1.0-0', 'pango')
        myval = myval.replace('libcairo2', 'cairo')
+       myval = myval.replace('xz-utils', 'xz')

        return myval

The rpm also should add a "Requires: xz" statement to the .spec file

Cheers, -Bob Arendt

orthoB commented 11 years ago

FYI - Tom just pushed out steam-1.0.0.34-1.fc18.i686.rpm that incorporates this patch and updates the base steam package.

hickford commented 11 years ago

Thanks ortho, thanks Tom.