4 ms·
Some time ago I read something that seemed a much stronger case against the Year of the Desktop Linux - lack of binary compatibility. It is hard to develop comm
by bakhy 12y ago
Some time ago I read something that seemed a much stronger case against the Year of the Desktop Linux - lack of binary compatibility. It is hard to develop commercial software for Linux, when it means building your software for every distribution and supporting all of them. Anyone buying a piece of software would probably have to stop upgrading their system if they want to keep using the software. Different desktops add to this pain, but not as much.
Of course, Linux is not about buying software, so I guess not many people care. But the availability of a certain, professional piece of software (aka "killer app"?) is often what eliminates Linux as a choice for many people, in my experience. (That is, now that there are good graphics drivers available and you can watch bloody YouTube.) Ultimately, in a very ironic twist, this makes Linux most suitable for people who do not know anything about computers. I install them Ubuntu, they don't touch anything except updates, and everybody's happy.
- zokier 12y agoOf course there is a twist to the binary compatibility story. Namely Linux (the kernel) works very hard to maintain userspace binary compatibility. Afaik you should be able to run some random 20 year old executable as long as you got the right libraries or have it statically compiled. Also considering that X11 (the protocol) is backwards compatible for quite some time, I'd say that cross-distro binaries in Linux is definitiely achievable thing if the application developer puts the effort into it. What is missing most is documentation and tooling to support such efforts. In near-future I also see containers as a possible cross-distro packaging solution, but that also needs some tooling to make the process more pleasant. Also container-supporting kernels need to get more prevalent for containers to be truly a solution.
- bakhy 12y agoI did not know that, thank you. I guess the key is in the phrase "as long as you got the right libraries"? Kernel+X alone is not enough... There should be some simpler solution to this than deploying your app in a container, but I really don't know enough to even dare guess.
- zokier 12y agoYou can bundle .so's with the application (this is how many humblebundle/steam linux games work) or you can statically link those libaries.
- pjc50 12y agoSteam is probably the best shot in a decade at selling consumer software for use on Linux. It'll be interesting to see if it takes off.
- diltonm 12y agoAgreed, I've bought several games from Steam since it became available on Linux, the process is easy and most of the games have been great.
- zokier 12y agoIt could have been but right now, 1.5 years after launch, Steam on Linux feels quite half-hearted. Steam Machines which were supposed to bring SteamOS (and Linux) to the masses have failed to materialize. Looking at the Linux game releases it seems like Valve is not providing enough developer support to make high-quality releases. Instead what I have seen, the games have been quite inconsistent from techincal point of view. Maybe half of the games (or less) in my library work at all on my Arch Linux systems, even after some minor tweaking. I wonder what they intend to do in couple of years when now-current Ubuntu becomes so outdated that nobody runs it anymore. I wouldn't be surprised if they end up shipping some sort of Ubuntu environment to run the games in.
- sparkie 12y agoThe purpose of Steam on linux was never "to bring linux to the masses", and you're a fool if you honestly believed this story. It should've been obvious the moment they created SteamOS, rather than the first plan, to ship as an application on Ubuntu - it's because the purpose of SteamOS is, and always was, for Steam to liberate themselves from greedy platform providers. They're not about to divorce Microsoft only to jump in bed with Canonical. The purpose of SteamOS is to power the eventual Steam pseudo-console, and to sit Steam at the centre of game distribution, rather than Microsoft - or rather, put Steam on par with Sony and Microsoft, instead of being a mere middle man. SteamOS, for all that matters, might as well be a proprietary platform on top of Linux, much like Android is. Its users won't even know it is running linux, nor will they have root access by default - they'll be given an interface which is the primary portal to games (and "Apps") distributed by Steam Anything "useful" for the rest of linux that comes out of Steam is only likely to be kernel additions, drivers, and other low level stuff that is merely incidental - required by the GPL of Steam, but nothing is going to solve the "problem" of cross-distro packaging, for instance - Steam will only distribute for SteamOS - it makes zero economic sense for them to do anything otherwise.
- davidgerard 12y agoIn practice, the way to run old binaries on Linux is ... Wine. So we have our long-term-stable ABI for Linux. It's just that it's called Win32. An ABI that will survive Microsoft.