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

Re: PROPOSAL: command line for LSB package program



On Thu, Jun 15, 2000 at 02:37:58PM -0700, Daniel Quinlan wrote:
> Commands:
>   install - install new packages, arguments are package files
>   remove  - remove installed packages, arguments are package names
>   extract - extract contents into current dir if no arguments, argument
>             is extraction directory

I'm not sure these actually need to be standardised. If Debianers or
Slackware people have to run some complicated chain of commands to
install LSB packages, does it really matter, so long as they work? Is
it worth declaring a system non-LSB-compliant just because of this? Not
that it's necessarily a bad thing to standardise them anyway, even if
only as an infomative standard. (Similarly with /mnt, IMO. In particular
Debian and Red Hat are unlikely to change their existing practices to
match any new standard)

>   check   - check packages (md5 checksums, etc.)

(This can be done with `rpm --verify' (or whatever) before calling alien,
even though dpkg doesn't support it)

>   list    - list all installed packages if no arguments, arguments are
>             package names
>   info    - return package info

All installed packages, or all installed LSB packages? The latter seems
less likely to cause accidental distribution dependencies. It shouldn't
be particularly hard to implement either. One way of doing it, on a Debian
system, might be:

	grep-dctrl -s 'Package' -F 'Depends' 'lsb-base' /var/lib/dpkg/status

which will list all the installed packages that depend on lsb-base,
ie, all the LSB installed packages. Alternatively lsb-package (or
whichever distribution-specific tools you use to install LSB packages)
could maintain a separate database of LSB packages and use it rather
than the dpkg or rpm databases. This will presumably be necessary for
Slackware, eg.

What sort of information, and in what format will list/info provide?

In email discussion with Chris Yeoh (cyeoh@linuxcare.com.au) about the
lsb_version binary, I think we agreed that using lsb-package for this
purpose might be tidier (well, at least I agreed that it was, I'm not
sure Chris thought the same). So instead of saying:

	$ lsb_version --lsb
	1.0

you'd say:

	$ lsb-package --info lsb-base | grep ^Version:
	Version: 1.0

or similar.

Note that lsb-package will need to be in /usr/bin for Debian systems
(since that's where dpkg is), so it'll probably need to be there for all
systems, and in particular it won't be available before /usr is mounted
for LSB compliant packages.

Cheers,
aj

-- 
Anthony Towns <aj@humbug.org.au> <http://azure.humbug.org.au/~aj/>
I don't speak for anyone save myself. GPG signed mail preferred.

  ``We reject: kings, presidents, and voting.
                 We believe in: rough consensus and working code.''
                                      -- Dave Clark

Attachment: pgp2urJRVHMr7.pgp
Description: PGP signature


Reply to: