Date: Thu, 30 Aug 2012 13:32:57 -0400 From: John Baldwin <jhb@freebsd.org> To: Chris Rees <utisoft@gmail.com> Cc: Tijl Coosemans <tijl@coosemans.org>, freebsd-current@freebsd.org, Doug Barton <dougb@freebsd.org> Subject: Re: pkgng suggestion: renaming /usr/sbin/pkg to /usr/sbin/pkg-bootstrap Message-ID: <201208301332.58112.jhb@freebsd.org> In-Reply-To: <CADLo83-X2NoNNDU-R_EmznBsR-vE4TW_rG9xXmkRWnCydN2kXg@mail.gmail.com> References: <97612B57-1255-4BB3-A6D3-FC74324C6D67@FreeBSD.org> <201208301255.42473.jhb@freebsd.org> <CADLo83-X2NoNNDU-R_EmznBsR-vE4TW_rG9xXmkRWnCydN2kXg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday, August 30, 2012 1:10:24 pm Chris Rees wrote: > On 30 Aug 2012 18:03, "John Baldwin" <jhb@freebsd.org> wrote: > > > > On Thursday, August 30, 2012 10:39:17 am Tijl Coosemans wrote: > > > On 27-08-2012 18:24, John Baldwin wrote: > > > > On Sunday, August 26, 2012 4:37:53 pm Doug Barton wrote: > > > >> The problem is that we don't really support the idea of things in the > > > >> base magically deleting themselves. > > > >> > > > >> As I have said in previous messages, the bootstrapping problem is being > > > >> overblown by several orders of magnitude. For newly installed systems > > > >> where pkg is the default, /usr/local/bin/pkg will be installed. So there > > > >> is no bootstrapping problem. > > > >> > > > >> For already-installed systems who wish to switch to pkg, they can > > > >> install from /usr/ports, or use the pkg bootstrap tool in the base. > > > >> Given that they will be intentionally making this change, and there will > > > >> be instructions written up on how to do this which include the > > > >> bootstrapping step, once again this is a non-issue. > > > >> > > > >> The whole idea of having every call to /usr/local/sbin/pkg pass through > > > >> /usr/sbin/pkg in order to help a tiny minority of users with a one-time > > > >> bootstrapping issue is just plain ludicrous. > > > > > > > > I agree. Even if we keep /usr/sbin/pkg, we will presumably want to remove > > > > it from the base in a year or so via 'make delete-old', etc. Given that, > > > > I'm not sure we need it there in the first place. > > > > > > What if you pkg_delete \* or rm -rf /usr/local? Do you have to "reboot" > > > pkg then? > > > > Yes, if we've decided it (pkgng) should not be part of the base. This > > doesn't strike me as that weird. It seems similar to how one has to > > bootstrap, say, MacPorts. > > Difference is, MacPorts isn't the official Mac distribution centre. > > Leaving out pkg-bootstrap (or whatever) is marginalising ports as a > non-integral part of the OS. *sigh* I sadly expected an emotional red herring reply such as this. This has nothing to do with "marginalising ports". Prior to this it has been a key argument and point that pkg* should _not_ be tied to the base system as that limits flexibility in the pkg tools. I completely agree with that argument and having /usr/sbin/pkg doesn't appear to be consistent with that. For example, we've already shipped a binary in 9.1 release that has a hardcoded URL of "http://pkgbeta.FreeBSD.org". So now you are stuck keeping that URL around for the next N years, albeit pointing to the production (not-beta) repository. You can't safely reuse pkgbeta.FreeBSD.org for anything until 9.1 is EOL'd. And you'd have to change that before 9.2 and 10.0 if you want to avoid being in the same boat for even longer. That is directly contrary to the goal of having pkg* not being tied to the base. A much more flexible and scalable approach would be for each pkg repository to include a binary/script whatever that you can make available at a URL (which is easily changeable in documentation on our website) that when you run self-extracts and bootstraps pkgng. (The pkg-static stuff is already basically this AFAICT.) If you wish to support existing users of, say, 8.2 or 8.3 release then you need something like this anyway. Also, as a downstream consumer who plans to use a custom pkgng repository on top of a modified FreeBSD distribution, this approach is less failure prone (i.e. if someone runs 'pkg' and it tries to download something from some hardcoded URL that's completely wrong). -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208301332.58112.jhb>