Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Feb 2026 13:59:06 -0700
From:      "Edward Sanford Sutton, III" <mirror176@hotmail.com>
To:        questions@freebsd.org
Subject:   Re: Trying to understand base system packages
Message-ID:  <SA1PR11MB881192272C385038303256A1E663A@SA1PR11MB8811.namprd11.prod.outlook.com>
In-Reply-To: <aYxOfweurBxTGqsX@apollonios>
References:  <20251205122830.cb88058f193987b47a95a77c@gmail.com> <20251205134510.6fae5caf@dorfdsl.de> <20251205143119.441cc1bd8722345d074a4480@gmail.com> <16e766b9-f442-4cef-a991-c940f6b8182a@gmail.com> <20251207081139.7e2f65b97b4c089ac0add431@gmail.com> <aTkvIvFJHLf4WxUa@amaryllis.le-fay.org> <aTm6mdWQ_nyv21El@rain.cave> <20251210203319.c248921c4e6aca9ba07458ae@gmail.com> <aToOxuaXNTa5LOOP@amaryllis.le-fay.org> <aYxOfweurBxTGqsX@apollonios>

index | next in thread | previous in thread | raw e-mail

On 2/11/26 02:40, Mathias M. wrote:
> On Thu, Dec 11, 2025 at 12:22:30AM +0000, Lexi Winter wrote:
>>
>> - it offers clear advantages for many users, despite having some rough
>>    edges, so there is a user benefit to providing it for people who want
>>    to use it;
>>
> 
> As a random, long time FreeBSD user:
> Those 'advantages' elude me and are anything but clear.

   A package manager keeps track of what to install and later to 
uninstall. Before that, freebsd-update and (my main 
experience/knowledge) source updates use a set of handcrafted tools to 
try to manually remove content that no longer exists because it has been 
removed or comes from an option that was disabled for the current build. 
Some of those steps have a catch in that if you go too long since its 
last cleanup then what it should clean out has been removed from the 
list so will be leftover debris which may or may not impact how the 
system currently runs. Without a source install, its just a tarball used 
to install it but no records are kept for future reference of what was 
put in by that extraction or any other steps.
   In my opinion the build system's `make delete-old` and similar in my 
opinion should have a complete list that is not pruned available even if 
it is slower to run. It could be written to be a sequential list that 
optionally, but by default, aborts further cleanup steps once something 
is no longer present when trying to clean it or it could use 1+ files to 
keep track of previously completed cleanup steps to skip ones that are 
completed though I'd see the 1+ extra files as likely unneeded bloat by 
comparison but it allows for a more reliable cleanup stage without 
having to fall back to a full cleanup.
   The package manager controlling it means its tracked by a system 
designed to track it so uninstall is an actual operation with a better 
controlled and tracked outcome. It also opens the door for optional 
things to be easily excluded/removed without requiring a rebuild.
   One thing I consider a disadvantage if I understand it correctly is 
pkg upgrades by doing a full removal + reinstall so anytime a small 
change happens for what is covered by a package then it is a larger 
operation than should be necessary to download and replace what actually 
changed. I'm not sure how much that happens with freebsd-update but 
source installs seem to be a full rewrite unless you run it in pieces 
and not `make -C /usr/src installworld` or its installkernel operation. 
I consider that a limitation of pkg itself and hope that too can change 
in the future which will accelerate almost all upgrades and minimize 
disk wear for better life on low quality storage devices without 
requiring a workaround like ZFS's dedup.
   I'm not sure how the other options compare regarding handling dealing 
with interrupted/failed updates but from source you can always start 
over the install to get back to an expected state as long as you can 
boot the system (even from separate media) and can access the build 
environment + install destination.

> But maybe that's just me, so y'all keep working on it and eventually
> I'll get it, when things take shape later down the road.
> 
> Regards,
> Mathias



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?SA1PR11MB881192272C385038303256A1E663A>