ports/pkg/OS integration 2.0 (was: Re: Removing documentation)
Jim Ohlstein
jim at ohlste.in
Fri Feb 12 16:54:57 UTC 2016
Hello,
On 2/12/16 11:25 AM, Royce Williams wrote:
> On Fri, Feb 12, 2016 at 6:38 AM, Royce Williams <royce at tycho.org> wrote:
>> This is, indeed, a gap in the Debian world. It's one that the ports
>> system is a great start towards resolving. That's why I think that
>> ports + pkg could be a superior offering that people would flock to,
>> and which deserves more focus.
>
> To be fair, this is also why my comparison FreeBSD's ports system to
> some other OSes binary package system is an unfair comparison. :)
> The complexity of letting people pick their own compilation options is
> significant, and one that the Linux/Debian/dpkg world largely
> sidesteps.
>
> But it's exactly where I think that FreeBSD could really shine.
> FreeBSD's ports system is the best system I've seen for managing
> custom compilation. If the OS, binary packages, and ports were more
> tightly integrated, it would be magic.
>
> Some goals:
>
> * The OS needs a structured way to know that a different package has
> changed its default behavior in some way. (The Ubuntu
> /etc/alternatives symlink system and other mechanisms solve this
> well). In other words, a common framework that could accommodate
> things like deciding to use a port or package instead of the facility
> provided by the OS.
This is true. That probably would not be impossible to implement. It
would be nice to be able to have two or more versions of a tool
installed and relatively seamlessly switchable, at least for testing.
I'm thinking PHP, Apache, nginx, etc.
/usr/local/bin/php5 and /usrlocal/bin/php7 with one at any time
symlinked to /usr/local/bin/php or /usr/local/alternatives/php or whatever.
>
> * Port maintainers should be able to express how one-offs and
> conflicts should be resolved in a machine-readable way. (In other
> words, as a test of fitness to purpose, most historic entries in
> /usr/ports/UPDATING should be programmatically expressible in the
> system).
Yes!
>
> * The ports system needs to know which compilation options were used
> by packages in the pkg system, so that if a conflict arises, it can be
> intelligently expressed by the maintainers (or the user can be told
> that they are mutually exclusive).
I believe at this time all official packages are compiled with the
particular port's default options. That is until "flavors" are
implemented at some point in the future.
>
> * if the user's port configuration options aren't different from the
> package defaults, ask the user if they want to use the package instead
> (with global and per-port knobs to stop asking if the user desires).
Another big YES!
>
> In other words, the end goal should be that the OS, ports, and
> packages can coexist for common use cases.
>
--
Jim Ohlstein
"Never argue with a fool, onlookers may not be able to tell the
difference." - Mark Twain
More information about the freebsd-ports
mailing list