LWN.net Logo

A report from the RPM summit

A report from the RPM summit

Posted Oct 15, 2009 3:31 UTC (Thu) by elanthis (guest, #6227)
Parent article: A report from the RPM summit

So when is RPM going to gain support for installing packages that are 4GB+ in size (which it may be technically capable of doing, but the user experience for it is pure shit) and have a distro-standard way of updating 4GB+ RPMs when only 10M of it has changed, and have a standardized way of the RPM telling the package management system (at whatever layer is appropriate) of where to find those updates?

Until the Linux packaging process can handle installing Real Games, Linux is dead in the water on Real Desktops used by Real People, because despite what most of the Linux developers think, just about every regular person who has a PC or laptop plays games.

The idea I constantly see propagated about how "regular users just want Internet and Email" is the encyclopedia definition of "head in the sand," "out of touch with reality," and "wishful thinking."

The sad fact is that it is easier to install the Windows version of NWN on WINE than it is to install the Linux native version of NWN. Seriously. The installer broke barely a month after the game first came out, and it has no support from the packaging system because no packaging system can deal with that much data and sanely let the user apply patches without downloading the whole damn package over again.

The requirements are simple:
1) Installation must make it easy to install from CD/DVD
1b) Even if we had some hypothetical triple-A Open/Free game title, no distro in the world is going to host packages for it in their package repositories -- some games are bigger than the entire distro by itself
2) Installation must be able to keep track of many GB of files
3) System updates must be able to reasonable deal with small updates to those large sets of data
4) System updates must be able to check with third-party services since this software won't be hosted in distro repositories
4b) The user should not have to do anything special to get this update service working; installing the software must Just Work with the system's package updater
5) The system must be standardized and stable so that old CDs/DVDs keep working in the future and become artificially broken every 6 months when the packaging system adds extra barriers despite the binary libraries and such still being compatible with old binary applications
6) Either the core package system or a standardized GUI driver must support installation "configuration," e.g. picking what components of a larger application to install
6b) Supporting EULAs and product keys would be useful to support real-world proprietary games, but since all of these requirements are just as valid for theoretical Open/Free games, it is not mandatory that support for EULAs/product-keys be present

Outside of games, packaging in Linux needs no changes. With games, packaging in Linux needs massive changes. So either Linux remains a niche nerd OS and appliance/server OS and the whole packaging debate can just go away, or Linux can make a serious effort at gaining the desktop market and it needs to focus on the application that actually drives the desktop with Real People -- games.


(Log in to post comments)

A report from the RPM summit

Posted Oct 15, 2009 3:47 UTC (Thu) by rahulsundaram (subscriber, #21946) [Link]

RPM can very well install packages over 4 GB in size. If you have trouble, you need to be specific about it in a bug report.

http://www.rpm.org/wiki/Releases/4.6.0#Largepackagesupport

Delta RPM's are completely distribution agnostic as well. Even the higher level metadata is the same between SUSE and Fedora which are the two distributions that are actively using it.

A lot of what follows about games is a high level description of the workflow and doesn't really require changes in the format. PackageKit may be what you are looking for. Offline installation is supported via what it calls Service Packs and EULA is supported.

http://www.packagekit.org/pk-faq.html#service-pack
http://www.packagekit.org/gtk-doc/PkTask.html

Media handling is being enhanced as well.

A report from the RPM summit

Posted Oct 15, 2009 14:09 UTC (Thu) by nye (guest, #51576) [Link]

It sounds like what you want is an 'upgrade' package - an RPM that can be installed over an existing package to update it to the newer version. This is slightly different to the idea of delta RPMs IIUC, but might not be to hard for an interested party to implement given that base work (or might be terribly difficult for all I know, but I wouldn't expect so).

A bigger problem really is that most library authors have very little interest in maintaining binary compatibility, so anything which isn't going to be constantly rebuilt needs to be statically linked, with all the downsides that has.

As I understand it we're moving in the direction of automatic dependency versioning (in Debian at least, don't know about the RPM world), so at least that would mean less arbitrary dependency breakages between packages which really are binary compatible after all (your point 5).

A report from the RPM summit

Posted Oct 17, 2009 3:15 UTC (Sat) by rahulsundaram (subscriber, #21946) [Link]

RPM already does automatic version dependencies for libraries for a long time and more are being added incrementally. Recently merged for OCaml for example.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds