[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNU Package Management System
From: |
Alfred M\. Szmidt |
Subject: |
Re: GNU Package Management System |
Date: |
Sat, 10 Sep 2005 09:39:35 +0200 |
The most important thing on GPMS is how packages will be
managed. IMHO, to manage packages we need 2 directories. The first
will be /packages or /stow, that will be where packages will put
their binaries. The second will be /var/'GPMS', where every package
will have a small file with some data about it, some information
like 'full name', 'description', 'version', 'library dependencies'
and 'binary dependencies'... Something simple to people be able to
create one using they favorite editor.
/var/'GPMS' as you call it, is not needed. This data is stored with
the actual binary package in a sub-directory called SUMMARY.
When a package is removed, GPMS will check if the library
dependencies are used by other packages, if they aren't, they are
removed. If you try to remove a package or library that are a
dependency of other, the 'GPMS' will return an error.
This isn't handled by GPMS, this is handled by a translator that is
used by stowfs. Nor will a package be removed if dependencies aren't
fullfiled, it will just be noted in some manner that the package has
unfullfiled dependencies, say in a file called /stowfs/DEPENDENCIES.
Note that what you call GPMS, is in reality a file-system, that
consists of stowfs, kitten, something to calculate dependencies and
other tools.
To install packages we have many options. The one is use the
advantages of GNU Source Installer to create packages from source
that users auto-tools in a proper way.
Installation is really only done in one way, making a symlink to
/stowfs, what the symlink points to is what you'd get from `make
install DESTDIR=/some/place'. Then it is up to a front-end to check
the dependencies of a package with the help of /stowfs/DEPENDENCIES,
and ask the user to act accordingly.
Cheers.