[Beowulf] managing debian packages

Yaroslav Halchenko list-beowulf at onerussian.com
Wed Feb 23 13:11:58 PST 2005

On Wed, Feb 23, 2005 at 08:56:53PM +0000, Guy Coates wrote:
> For the installs, take a look at FAI; it is the automated debian
> installer. It is extremely flexible, so you can hack it about to do pretty
> much anything you want.
yeap - that is what I used to install all the nodes... And actually FAI
has somewhat neat idea on classes of machines and installed packages
depending on the class. So it reminds cfengine approach, that is why I
actually tried first to use FAI config file as the source of packages to
be installed and then wrote a cf.fai config which was installing
packages using FAI's functionality.

The problems with that were: I needed manually type-in the packages I want
on per class basis, and there were issues with dpkg installation process
not closing all FIDs probably so remote shell never returned which
annoyed... I've mentioned a simple trick to get around that on
cfengine's Wiki but I haven't touched this way to install packages for a
long time....

> Once the machines are up, dsh is a fine way of keeping things up to date
> or installing new stuff.  If you don't want to be pestered by
> configuration questions during package installs, you can change that
> behaviour in /etc/debconf.conf to make everything non-interactive.
That is exactly what I'm doing pretty much

> There is also a rather nifty debian package called jablicator. You run it
> on a master system and it creates an empty deb file which depends on every
> deb installed.
Cool - didn't know about this one... I see limited applicability though,
it is pretty much the same as
dpkg --get-selections | rsh remote host dpkg --set-selections
and probably it doesn't give conflicts, ie which packages to remove if
they are not installed on the system where you run jablicator

My problem is that I'm not sure really on what I'm looking for...
FAI way to configure installed packages is very appealing to me but its
implementation is what keeps me away.

Let me characterize: 
I want to have some classes as cfengine does and depending on to which
class the machine belongs, it gets necessary packages installed in
non-interactive fasion, using debconf values from the machine on which
it was installed in non-interactive fasion.

for instance probably similar command should look like

apt-getclass lam-nodes install libblablah-dev

then it runs interactive installation on a first  machine from lam-nodes
netgroup for instance, clones debconf to related machines, runs
noninteractive install there

Running simply 
dsh -g @lam-nodes apt-get install libblablah-dev

will not suffice because of possible necessity to configure

Hm... probably I just to write a tiny wrapper around apt-get and cfrun

=------------------------------   /v\  ----------------------------=
Keep in touch                    // \\     (yoh@|www.)onerussian.com
Yaroslav Halchenko              /(   )\               ICQ#: 60653192
                   Linux User    ^^-^^    [175555]

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://www.beowulf.org/pipermail/beowulf/attachments/20050223/acf6db44/attachment.sig>

More information about the Beowulf mailing list