New FreeBSD package system (a.k.a. Daemon Package System (dps))

Freddie Cash fcash at ocis.net
Fri May 11 19:22:10 UTC 2007


On Friday 11 May 2007 11:34 am, Mike Meyer wrote:
> In <200705111011.52212.fcash at ocis.net>, Freddie Cash <fcash at ocis.net> 
typed:
> > On Friday 11 May 2007 07:35 am, Mike Meyer wrote:
> > > I still think we ought to quit pretending that ports/packages
> > > aren't part of BSD, and default LOCALBASE to /usr. But if changing
> > > it is being tested, that's a big help.
> >
> > Personally, this is the one thing I like *most* about BSD.  There is
> > a clear separation between what ships as part of the OS, and what
> > apps I install on it later.  There's a consistency to things, that
> > you just can't find anywhere else.
> >
> > / and /usr are the OS.
> >
> > /usr/local is what the ports tree installs.
>
> Moving the OS into the package system has been on the "todo" list for
> a long time (assuming it's still there - there are people opposed to
> that). What happens to your distinction in that case? This is why I
> think the distinction is an illusion.

Hmmm, I might be misremembering things, but I always thought the plan was 
to break out some bits of the base OS into ports/packages (like 
sendmail/bind/etc) but have them installed-by-default.  Either way, you 
are correct that the distinction between "base OS" and "installed apps" 
would blur or even disappear.

> > One could make the case for /usr to be the OS, /usr/pkg (or whatever)
> > for port installs, and /usr/local for local source installs.  So long
> > as the OS is separate from the apps.
>
> I think that would be an improvement. There's a real distinction
> between "things installed from ports/packages" and "things I built and
> installed myself". The former I expect to reinstall from FreeBSD
> media; the latter I can't. Since most packages in the latter install
> in /usr/local, using that for the former makes life a bit more painful
> if you want to keep them separate. The downside is that making the
> default something else makes things a bit harder for people doing
> ports, which we promptly throw away by providing a settable LOCALBASE.
>
> > With the OS and apps separate, you can upgrade them asynchronously.
> > There's a nice feeling to running the latest version of appX on
> > FreeBSD 5.3.  Or an older version of appY on FreeBSD 6-STABLE.
>
> How would setting LOCALBASE=/usr break this? Of course, equally valid
> is the question "what will break if I set LOCALBASE=/usr"? Hmm. I
> think I may found out....

I was thinking more along the lines of how Linux distros operate, where 
all apps are installed under /usr, and where the only way to get the 
latest version of an app was to upgrade the entire OS and switch package 
repositories to the ones for that new version of the OS.  Something that 
irks me to no end when using Linux systems.  Not quite the same as what 
you were getting at, I see, so we can just ignore this entire little bit 
of the thread.  :)

> Personally, what I like about FreeBSD is that it provides flexibility
> for things like this. If I'd rather have ports out of /usr/local, it's
> not really hard to do. Not as easy as doing things the default way,
> but not any worse than anyone else who wants to build from
> source. Other systems seem intent on making me do things their way, no
> matter what I may think of it, and trying to change something like
> this is a major change.

Yes, flexibility and customisability is very nice, and definitely one of 
FreeBSD's strength.
-- 
Freddie Cash
fcash at ocis.net


More information about the freebsd-hackers mailing list