apt-class WAS: fai next level
Thomas Lange
lange at informatik.Uni-Koeln.DE
Wed Nov 14 13:00:20 CET 2001
>>>>> On 14 Nov 2001 02:44:30 -0800, Diane Trout <diane at caltech.edu> said:
> In my mind the program is designed to be run on client machines,
> it receives a class list from some external source (in my case
> from cfengine). From that list it determines what packages
> should be installed, removed, and perhaps held.
Why using classes from cfengine ? If a machine was installed using
FAI, it already belongs to FAI classes which are saved in
/var/log/fai/localhost/install/FAI_CLASSES. OK, cfengine can add more
classes, but are they really needed ? Has the list of classes to be
fixed after the first installation or is it a good idea to add/change
classes for a running system? Think about theses questions.
> Looking into the problem slightly further, it looks like the
> easiest solution is to write out a selections file that could be
> installed via dpkg --set-selections and then use a apt-get
> dselect-upgrade to actually initiate the upgrade.
You can use apt-get --simulate to get all dependencies and convert
this output to the set-selections format if really needed. Sounds like
easy work for Perl.
> It should be pretty easy to parse the current FAI package_config
> file format.
Using Perl, you will only nedd a few lines.
> file format. Though I'm not really sure what the difference
> between a "PACKAGE taskinst" and just specifying task-* as a
> package is.
task-* packages are removed in woody. Therefore we have to use tasksel
and "PACKAGE taskinst" for installing new task packages.
> To take advantage of the hold state, I'd need to add a "PACKAGE
> hold" to the current package_config file format. A held package
Do you know, how to set a package on hold ? Tell me, and I will
implement it into install_packages.
> * there really isn't any error handling of packages not being in the
> archive.
Send a bug report to the apt team.
> I was thinking of writing it in either C++ or Python, any
> preferences?
Why not a shell or Perl script ? AFAIK, Phython is not in the base of
Debian. A C++ program will not be architecture independent. I would
prefer Perl, since I can debug it and I can help you improving this
script ;-) And speed isn't the problem during installation.
> Also what can be done about packages that are reading/writing to
> the console?
This is a bug of these packages. All packages should use debconf and
then we can say "DEBIAN_FRONTEND=Noninteractive". That's all.
--
Thomas
More information about the linux-fai
mailing list