tech-pkg archive

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

Re: pkg_install in base system again



On 11/6/11 7:35 AM, Aleksey Cheusov wrote:
Some time ago Joerg proposed to remove pkg_install from base system and
switch to using pkg_install from pkgsrc just like all other systems do.
I agree with him and don't want to reproduce his arguments but I would
like to raise this question once again.

AFAIR the only argument against removal was that NetBSD is a number one
system for pkgsrc and it is impractical to bootstrap pkgsrc for end
users.  I've just imported othersrc/usr/sbin/pkg_setup script that I
think solves this problem. The script downloads pkg_install package from
the NetBSD binary repository, installs it and initializes pkgdb.
Without arguments pkg_setup downloads the package from
ftp://ftp.NetBSD.org/pub/pkgsrc/packages/$OPSYS/$ARCH/$OSVER.

If pkg_setup were a part of the base system instead of pkg_install, the
users would be able to initialize pkgsrc easily by simply running
'pkg_setup'.  As easy as that. Then bmake, bootstrap-mk-files and
everything else can be installed with a help of pkg_add as usual. We can
also provide a meta package that includes everything required for
source-based updates and installation.

Why "pkg_setup"? Wouldn't you be able to add wrappers for pkg_add, etc. that do the right thing on their own, transparently? I.e. check if pkg_install is installed first and, if not, install it. Then delegate the original pkg_add call.

Also, what happens when I check out pkgsrc and I don't have pkg_install yet? Do I have to manually run bootstrap (which is a different code path to pkg_setup), or would this pkg_setup know to use the pkgsrc sources if they exist? Can the mk files in pkgsrc be made to do the bootstrapping transparently when needed?

Home | Main Index | Thread Index | Old Index