Monday, March 02, 2009

Mandriva RPM Meta-Packages

Mageia now provides a few meta-packages, which are small RPM files that contain only the dependencies needed for the application(s) they address. Essentially, a package of package names to be installed. The meta-packages all begin with the name task- and are found in the repositories.

For example, using urpmi to install task-kde4 will install all the files needed for a full KDE desktop; task-kde4-minimal installs a minimal desktop; task-gnome installs the full GNOME desktop; likewise task-e17, task-xfce and task-lxqt easily install those desktops.

There are task- packages for Blackberry and Nokia syncing, and task-lamp installs a full Linux-Apache-MySQL-PHP server plus ProFTP.

You can use urpmq -d task-package to see what dependencies will be installed.

All the task- packages have a .src.rpm and that can be installed, modified and compiled to change things. I have experimented with the LAMP module to NOT install Apache so I can try the nginX web server.

One possible use of meta-packages would be to reduce the effort to install a "special" group of packages that you regularly install on multiple machines, or include a custom RPM file with a non-Mandriva binary or containing your custom configuration files.

The meta-package concept should work across all RPM-based distros like Red Hat, SUSE, PCLinuxOS, ArchLinux and others. And there should be comparable functionality in DEB packages as well.

No comments: