Apt for RPM

What is apt?

Robert Bos

Apt is a package installer, to install rpm packages [1]. Apt does not replace rpm, the contrary it enhances rpm by providing very good dependency checking. Apt works according the client/server model, were the server provides an apt repository containing the standard rpm packages. Besides the rpm packages the repository provides meta information about the rpm packages. The client uses this information to determine if new packages have arrived and which other dependend packages are needed.

A nice example to show the above is the installation of kdevelop:

dar:~ # apt-get -S install kdevelop3
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  arts-devel doxygen flex freetype2-devel html-dtd kdebase3-devel
  kdelibs3-devel kdelibs3-devel-doc kdesdk3 kdoc libmng-devel
  libogg-devel libvorbis-devel mesaglut-devel qt3-devel
  qt3-devel-doc qt3-devel-tools xdevel
The following NEW packages will be installed:
  arts-devel doxygen flex freetype2-devel html-dtd kdebase3-devel
  kdelibs3-devel kdelibs3-devel-doc kdesdk3 kdevelop3 kdoc
  libmng-devel libogg-devel libvorbis-devel mesaglut-devel qt3-devel
  qt3-devel-doc qt3-devel-tools xdevel
0 packages upgraded, 19 newly installed, 0 to remove(replace) and 10 not 
upgraded.
    

As shown apt sorts out all dependend packages and will download and install these. The package version does not need to be provided, which is very convenient, too!

The apt client administrates in the file called sources.list the different apt repositories that the client can connect. With the information from all those apt repositories apt determines, were the most recent version rpm package is located of the rpm package to be installed. If dependend rpms need to be installed all apt repositories will be checked to look for the correct version. The the latter is not important the most recent version will be downloaded and installed. By the way, the apt repository can be located on the user's own harddisk too of course.

Apt can be told to hold an rpm package in case the user does not want a package to be automatically upgraded. The kernel package k_dflt is a good example of a package that should not be automatically downloaded.

Hopefully you can conclude that the apt is really an Advanced Package Tool, as that is what APT stands for.

For SuSE there is 1 repository available, the repository is located at ftp://ftp.gwdg.de. More information about the apt repository and apt can be found at http://apt4rpm.sourceforge.net. For information about the SuSE apt repository follow the link called apt-rpm reps.

Warning

if you try it, there is a great chance that you don't want to use anything else anymore!


[1] APT installs debian deb package too of course, as apt was originally developed for Debian's deb packages.