Hacker News new | ask | show | jobs
by w1ntermute 4924 days ago
> I'm not 100% sure why they have a "repo" for an "installer". It sort of rather defeats the purpose.

It's because they don't really grasp yet how these things work on Linux. Which is understandable, since they're coming from a Windows world, where package management has to be done manually. So the Steam executable you download is an installer that downloads/installs the Steam package manager, which then downloads/maintains the games.

Ideally, all the Steam Linux games would be maintained in APT repositories and you would update them through APT, but I don't know if that will ever happen. At least this is better than nothing at all.

5 comments

They'd have issues with their DRM doing that.

They should ship the Steam binaries properly through apt and yum repositories, but I doubt that they'll ever ship the games that way.

I don't see why. If the Steam-DRM'd version of a game requires Steam installed in order to play, they can just add the Steam package as a dependency.

Possibly a bigger issue would be that Steam has incremental updates (fixing a bug in a game requires downloading a fixed binary but not the multi-gigabyte data files) while most Linux package managers do not support incremental updates (when Debian releases a new LibreOffice package that fixes some dependencies for the s360 archictecture, I still have to download hundreds of megabytes of changes on amd64).

There is also the issue that a Steam game may have dependencies on different versions of certain libraries than those which may be shipped with popular distros. You also have to think about people with custom PPAs etc.

I think it makes sense for Steam to be isolated from the rest of the system as much as possible.

It is also helpful to Valve if it is as consistent with Steam on other platforms as possible.

Game downloads can be pretty big and take a while too, I'd rather not have apt locked for an hour while it grabs some large game update.

The libraries can be installed from steam packages as well.
In Linux game packaging, this issue is often resolved by having a separate package for game data. This is also a neat workaround for licensing differences. For example Quake 3 is now open source, but the game data is still under commercial license. Distributions now offer just the game binaries built from the source and you have to buy the data yourself.
The problem with this is that with many steam games (such as TF2) the game data itself updates constantly aswell.
I remember when Steam was first launched for Mac; Valve decided to pop all the games' assets and support files into a folder in ~/Documents. It took a few days to explain to them that this probably wasn't the best place to dump a few GB of files.

A lot of people's backups suddenly grew rather large.

That "ideal" solution would only work on deb based distros.
Wrong, you could easily create similar repositories for other package management systems.
At some point they need a downloadable installer, if only for e.g. gentoo or slackware.
Not for Gentoo, which has overlays[0]. Slackware would be the exception, as it has no de facto package management solution.

0: http://www.gentoo.org/proj/en/overlays/userguide.xml

Well, the overlay needs to download something as well. So my point remains, I think.
No, it doesn't. I don't think that you understand how an overlay works. You run a command or modify a configuration file to add the overlay. Then you can install any packages in that overlay. Those packages would be the games.

The package manager on Windows (Steam) isn't needed on Linux because there's already a native package manager on the majority of distros. In fact, you can already buy games through the Ubuntu package manager. I believe they're in a separate, "partners" repository. Steam should just be another repository like that.

So if they "do not grasp yet how things work on Linux", Why they are not meeting Canonical guys and get some help? I believe they do things as they do now is they are looking forward for interoperability with other distros in their own way.
> I believe they do things as they do now is they are looking forward for interoperability with other distros in their own way.

Well, it's not working very well, since only Debian-based distros can directly install the software. And those distros could just add a repository anyway.

Other distros, like Arch, are forced to create workarounds, such as scripts that download and extract the .deb[0].

0: https://aur.archlinux.org/packages/steam/

it's best to think of steam as a new package manager for games, the same way you would have ruby gems or npm packages.