On Fri, Aug 8, 2025 at 4:18 AM Colin Percival <cperc...@freebsd.org> wrote:
>
> On 8/7/25 18:20, vermaden wrote:
> > OK, Colin Percival just announced 15.0-PRERELEASE - yet the PKGBASE concept 
> > - besides 'kinda working' - does not holds to the POLA principle at all - 
> > and if anyone will chose to use PKGBASE instead of 'classic' install the 
> > 'pkg delete -af' will not only delete all the third party packages but will 
> > also WIPE almost ENTIRE BASE SYSTEM of FreeBSD ... this is not unacceptable 
> > to say the least.
>
> POLA is inherently subjective; what astonishes one person might be exactly
> what another person expects.  In this particular case, while someone might
> indeed be astonished that "forcibly delete everything" deletes everything,
> someone else could well be astonished if "pkg delete -f clang" doesn't in
> fact delete clang.

Not really. So far "the FreeBSD standard" kept things "similar" for
over 30 years. If we traveled back/forward in time we would still use
the same approach to configure and run stuff. Maybe except pkg-add was
replaced with pkg, but still all locations are the same, configuration
files format, ports build, etc. "Base" is the cornerstone of FreeBSD
and its most widely known unique feature. It is like coming back to
familiar stable work place, where all things does not change on a
daily basis, or going to a different place and having the same
familiar setup with nothing missing. There was always clear separation
of "base system" and "userland". This meant all FreeBSD base release
X.Y would have exactly the same predictable behavior for everyone.

This is not "subjective", this is "coherence", this is
self-compatibility, 1+1=2.

If "if "pkg delete -f clang" doesn't in fact delete clang" then we go
full Microsoft :-(


> > My 'vote' here does not changed.
> >
> > Lets keep pkg(8) for third party packages with:
> > - /etc/pkg
> > - /usr/local/etc/pkg
> > - /var/db/pkg
> >
> > Lets have pkgbase(8) for FreeBSD Base System PKGBASE with:
> > - /etc/pkgbase
> > - /usr/local/etc/pkgbase
> > - /var/db/pkgbase
>
> I would like this idea, except for one wrinkle: I don't think it would work.
> In particular, packages installed from ports might depend on packages from
> the base system, so having a single tool which knows about both is necessary.

This statement is extremely dangerous. It touches clue of this
discussion. It seems to reveal planning to totally break current
FreeBSD design / architecture? So far "base" could work without
"userland", provided consistent, coherent, and predictable working
environment. Everyone had the same set of "base" tools where
"userland" could be built on top, so every system could be different
but had exactly the same base. I can see that "base" will not be
coherent for everyone anymore. If ports start depending on base
packages then circular dependencies will arise and this will be a
Linux-like-mess, because there could be different versions of base
packages for different port versions that will depend on different
versions of base packages. Then all will be just a package and there
will be no "coherent FreeBSD base" anymore right? Then 14-RELEASE will
hit end-of-lie and people will be _forced_ to switch to 15-RELEASE or
move away to different BSD. This sounds like FreeBSD is going full
Linux :-(

People already report their doubts and fears, backed by real world
evidence. Do we go hey Linux Y was released, so whole world will now
have to rebuild all their release packages because these were built
for Linux X, and then people need to just get that package T from repo
Z not from repo Q because this is not part of Y and it was there in X
but Q changed its API? I hope we don't go to that moving sands area. I
hope its more like hey you will finally be able to run next release on
that old router with 2MB of Flash and 8MB of RAM and it will work
better than Linux plus you will get all fresh packages and features
with security fixes. This is how we see "progress", by getting new
features in a simple familiar fashion, not by overcomplicating things
that makes them unusable.


I can understand that pkgbase can have its benefits, this is why it
was invented and being worked on, but its design should follow well
established FreeBSD standard that assures self-compatibility, so
people in 10 years will still have their own favorite familiar working
environment that comes from clear "base" and "userland" separation.
This is still possible right?

-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info

Reply via email to