[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: post-release package update policy



> I'm not sure what's wrong with having an evolving system called Debian.

The problem is not installing, but downloading updates. It is hard to
keep track of which packages have changed, unless we use mirror (or, I
guess, dftp).

> Brian White, author of dftp, has mentioned to me that it there is no easy way
> to deduce exactly what version of a certain Debian package P has
> actually been installed when dselect/dpkg logs indicate that P is
> installed.

How about `dpkg --list|awk '{print $2":"$3}'`

to generate a colon-separated list of packages and version numbers?
Or, if a perl array is needed (error checking not added (-: ):

-------------------------------------------------------------------------------
#!/usr/bin/perl

$linecount = 0;                 # keep track lines so we can get rid of
                                # the head w/o expensive regexp matchs.

open(VERSIONLIST, "dpkg --list|");
while (<VERSIONLIST>)
{
    $linecount++;
    next if ($linecount <  6);  # ignore header lines.
    chomp();

    ($status, $name, $version, $revision) = split;

    $package{$name} = "$version-$revision";
}
close(VERSIONLIST);

#
# Now you can access the file and revision via $package{$filename}
#
foreach $file (sort(keys(%package)))
{
    print "$file is at Debian Version $package{$file}\n";
}


Reply to: