[Slapt-get-user] Install package from file name?
Jason Woodward
woodwardj at jaos.org
Sun Oct 9 20:29:36 EDT 2005
Hi Taj,
> I'm a developer with the Autopackage project
> <http://www.autopackage.org>, and am working integrating the Slackware
> Package Management system with Autopackage. In other words, I'm
> working on making software installed by Autopackage register with
> slapt-get. I'm also trying to get dependency resolution with native
> Slackware packages to work. This means that dependencies of
> Autopackaged software will first try to be retreived with slapt-get,
> then falling back to Autopackaged software if a Slackware package
> doesn't exist.
slapt-get is a layer upon the native "pkgtools" that Slackware provides. So you probably want
to target pkgtools, ie look at the (install|remove|upgrade)pkg source.
> I have a few quesitons which somebody might be able to answer:
> 1. Is is possible to retreive a package with slapt-get if you only
> know a file that's in it. (E.g., I want to retreive a package that
> contains /usr/lib/libdes425.so.3).
The MANIFEST file (http://www.slackware.at/data/slackware-10.2/slackware/MANIFEST.bz2) is
available or /var/log/packages for those packages that are installed.
slapt-get does not attempt to merge the data from this file in with the existing data it uses
in the PACKAGES.TXT and CHECKSUMS.md5 files.
> 2. Is is possible to have removepkg run a command after removing
> files? (Sort of like doinst.sh, except it runs when the package is
> removed).
Thats an often requested feature that you could send to Pat. The more that ask the better.
> 3. How does slapt-get know a package is installed? Does it look at the
> package name, (e.g., mplayer) and see if that package is installed, or
> does it look for /usr/bin/mplayer to see if mplayer is installed.
It looks in the packages it discovered based on the contents of /var/log/packages
> 4. Is there a faster way to query /var/log/packages to see what
> package owns a file than
> grep `echo "$1" | sed 's|^/||g'`$" /var/log/packages/*| awk -F: ' {
> print $1 }'|sed 's|/var/log/packages/||g'
thats about it.
> I'm sure I'll think of more, but that should get me started...
>
> Thanks!
No problem, hope I was of some help.
take care,
jason
--
Jason Woodward
woodwardj at jaos.org
More information about the Slapt-get-user
mailing list