Hi, I've been discussing with Henning^2 on what is needed to port fai to rpm-based distributions (my personal target is RHEL). It looks like the main distribution specific tasks to solve are to prepare the base chroot and the use of the depsolver. I have already played with fcopy in kickstart's %post scripts, and was very pleased to see my Red Hat going classes :)
Preparing the base chroot is probably the easier part. I'm a bit worried about the depsolver. Currently fai uses apt, which does perform OK and is Debian's depsolver tool of choice. I've been an apt-rpm fan for quite some years now, but I see the project aging and not being maintainable anymore (at least the apt-rpm port). Other than a couple of apt bugs that can be worked around there is the problem of apt not handling multilib systems properly (this is package system independent). This means that apt cannot cope with multiple instance of the same package (name) but with different architectures. E.g. apt will not accept a glibc package for i386 and x86_64 on the same box. This has rather killed apt as the preferred depsolver in distributions shipping mixed 32/64 bit systems like Red Hat/Fedora for instance. Now, this is not a suggestion to start a multiple backend architecture for fai to support apt-dpkg, apt-rpm, yum, up2date and whatever. Instead I thing the solution is already there in the form of the smart package manager (already in Sarge): http://smartpm.org/ It works with deb, rpm (and even slackware packages) and can plug to all major repo formats, from Debian's apt-deb , over rpm's apt-rpm, metadata, urpmi etc. It does abstrahize all package format details from the user. It can also be used to initiate and populate chroots, which would be quite helpful for creating the different base.tgzs. The drawback is that replacing apt with smart in fai could be a non-trivial task. Although smart has kept the typical parts of apt's cli, fai uses apt's perl bindings, something which does not exist for smart (smart is writen in python BTW). Nevertheless, I wanted to drop this idea in this forum and make some propaganda about smart. smart could be a good idea for fai/debian even w/o thinking about portability, but it would be a vital step to unleash fai onto the rpm world, too.</propaganda> smart is currently in Debian Sarge, but if you want to give it a test, please use the version in Edge, as the one in Sarge is already quite outdated. Not relevant for fai's purposes, but smart even comes with a synaptic-like GUI. -- Axel.Thimm at ATrpms.net
pgpKui0ysHQ7L.pgp
Description: PGP signature