From: Cedric Veilleux (cedric_at_neopeak.com)
Date: Mon 14 Oct 2002 - 20:37:21 BST
> I was thinking you could use epm (the gentoo rpm equivalent - except it
> doesn't have --verify) - this way it would be the exact same options as
> for RedHat.
>
That's an excellent suggestion. I was not aware of this tool. I read some
documentation about it and it does not seem to produce the same output as the
real rpm does and it doesn't support everything..
One thing it can do though is list the configuration files seperately, which
is very important when unifying packages, we don't want to unify config
files. vunify runs
"rpm -ql --dump package-version"
On gentoo, this does not produce what we want. Although we can find the files
to unify by running:
# epm -ql vcron
/var/spool/cron/crontabs
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/man/man8/cron.8.gz
/usr/share/doc/vcron-3.0.1-r1/CHANGES.gz
/usr/share/doc/vcron-3.0.1-r1/FEATURES.gz
/usr/share/doc/vcron-3.0.1-r1/CONVERSION.gz
/usr/share/doc/vcron-3.0.1-r1/MAIL.gz
/usr/share/doc/vcron-3.0.1-r1/MANIFEST.gz
/usr/share/doc/vcron-3.0.1-r1/README.gz
/usr/share/doc/vcron-3.0.1-r1/THANKS.gz
/usr/share/doc/vcron-3.0.1-r1/crontab.gz
/usr/sbin/cron
/usr/bin/crontab
/etc/cron.d/.keep
/etc/init.d/vcron
/etc/crontab
and then substracting the files that appear in this list too:
# epm -qc vcron
/etc/cron.d/.keep
/etc/init.d/vcron
/etc/crontab
Only "epm" can list config files seperatly. Although as you can see, config
files on gentoo are simply all files in /etc (or other directories included
in CONFIG_PROTECT).
My work on porting to gentoo is progressing. The unify part is probably what I
will do last since my gentoo vservers are not that big anyways (300-400 MB).
I found a very elegant way of building gentoo vserver. I will create a stage1
tarball with a special "vserver" profile. As you may know, profiles under
gentoo are used to port to different architectures. The profile will have all
hardware/kernel related things stripped. Also baselayout will be replaced by
a new package, v_baselayout. This package will set the basic /etc/init.d/
scripts properly as well as /etc/fstab, /sbin/rc and various other things.
Creating a new vserver will be much like installing gentoo. Extract the
tarball in /vservers/blah, chroot in it, bootstrap and "emerge system".
Cedric