Subject: Re: is there still need for devel/bmake and devel/mk-files?
To: Julio Merino <jmmv@menta.net>
From: Julien T. Letessier <mezis@free.fr>
List: tech-pkg
Date: 06/08/2003 00:37:00
On Jun 6, 2003, at 21:33, Julio Merino was heard saying:
> I think we could do like what debian does with its base system. That is,
> the bootstrap-pkgsrc .tgz could contain a package database registering the
> packages in it (like bmake, pax, etc). This way, after you have unpacked
> it, if you run pkg_list you could see what's already installed (bootstrap
> packages) and update them when needed. The only problem with this is that
> the package database should be placed inside the tgz (i.e., inside PREFIX
> and not /var)...
In fact, the eventual bootstrap-pkgsrc .tgz would already contain a package
database. The current process registers the 'digest' package -- so my
bootstrap tarballs come with this one package already registered.
This brings up an issue: on non-NetBSD systems, having the boostrap tools
registered as packages possibly causes the system to shoot itself in the foot:
what about 'pkg_delete pax' on a machine that doesn't have eitheir 'tar' or
'pax'?
This is probably the reason why 'pkg_install' doesn't register a package --
because it's essential to the package manager. Not registering the bootstrap
tools allows to elegantly solve the issue: this way we don't have to add
complicated rules to decide which packages always need to be present (like
Debian has to ensure you're not going to remove the kernel package).
Now, another problem is, if you install devel/bmake, or archivers/pax, or
net/lukemftp (etc.), the bootstrap's tools will be overwritten. And when you
remove those packages, the packaging system might become unusable. (this is
one of the reasons bulk builds don't work on non-NetBSD boxes -- they commit
suicide by removing 'bmake')
IMO, the simplest way to solve the problem is to *not* have redundancy between
pkgsrc packages and the bootstrap tools. This means removing them from the
tree, or marking them ONLY_FOR_PLATFORM= NetBSD-*
It's probably not the most elegant, solution, though.
Comments?
--
Julien T. Letessier aim:jletessier
Graduate ENSIMAG Student http://www.mezis.net
CLIPS-IMAG DEA Intern mailto:contact(at)mezis.net
() ascii ribbon campaign - against html mail & vCards
/\ - against microsoft attachments