Drake Wyrm <[EMAIL PROTECTED]> writes:

> On Mon, Jan 19, 2004 at 10:26:40AM -0500, in <[EMAIL PROTECTED]>,
> Jeremy Maitin-Shepard <[EMAIL PROTECTED]> wrote:
>> "Paul de Vrieze" <[EMAIL PROTECTED]> writes:
>> > Further in the /var/cache/edb dir there are files that are not caches
>> > in that sense of the word. They are also not replaceable. So I think
>> > if we want to have this discussion we need to look at all files that
>> > are involved in portage.
>> 
>> Yes, the state data in /var/cache/edb should be in /var/lib, and the
>> world file should be in /etc (or /var/lib).
> I would have to argue against putting the world file in /etc. Portage
> updates it according to what has been installed; it is not a static
> configuration file. Try adding a package to your world file and running
> 'emerge --world'.

It is a user-configurable list of packages to update when one types
"emerge world."  In portage-ng, presumably multiple user-defined package
classes will be supported, as well additional options to specify whether
to prune entries from such files which would result in currently
uninstalled packages being installed, whether to add newly installed
packages to such files, and whether to install packages listed in such
files which are not currently installed.  With these features, such
files would become more like configuration files.

(IMHO, these package class files should not be treated particularly
different from specifying $(cat package-class-file) on the command-line.
Perhaps portage-ng will also support specifying an arbitrary file to use
as a package class, i.e. --file-list /path/to/list/of/packages.)

As far as the world file being modified by portage, there are programs
(mostly GUI) which modify their own configuration files.  Note that it
is user-configurable whether the world file is modified by portage.

> Anybody recall why the Portage state data was split between /var/db/pkg
> and /var/cache/edb (since Paul mentioned looking at all the files
> involved)? I would like to understand the reasons behind the original
> decisions before I develop any strong opinions.

Most of the data in /var/cache/edb is not state data -- it is mostly
cache data (all of the contents of the dep directory, and the virtuals
file).  Only the contents of config, counter, eclass.pickle, mtimedb,
repo.fails, repo.stats are state data.  The world file may have been
thought of as a kind of cache data (and it seems it still is, given
tools like regenworld), even though it is not.

-- 
Jeremy Maitin-Shepard

--
[EMAIL PROTECTED] mailing list

Reply via email to