On Sat, 23 Aug 2025 11:40:27 +0100
Graham Perrin <grahamper...@gmail.com> wrote:

> On 23/08/2025 10:28, Tomoaki AOKI wrote:
> > … /etc/pkg is described as "default configuration for the package
> > manager, pkg(8)".
> 
> 
> Indeed, and pkg(8) is _not_ base, so what's described is not consistent 
> with /etc/ for base system software configuration files.
> 
> <https://man.freebsd.org/cgi/man.cgi?query=intro&sektion=5&manpath=freebsd-current#FILES>
> 
> A single repo e.g. FreeBSD-ports in /etc/pkg/FreeBSD.conf is used by pkg 
> (7, not 8) for bootstrap.
> 
> Then:
> 
> - /etc/pkg.conf does not exist
> 
> - /usr/local/etc/pkg.conf is explicitly the system-wide configuration 
> file for pkg(8).
> 
> So, I might expect /usr/local/etc/pkg/repos/FreeBSD.conf to be the 
> system-wide〓FreeBSD repository configuration file for pkg(8).
> 
> <https://man.freebsd.org/cgi/man.cgi?query=pkg.conf&sektion=5&manpath=freebsd-ports#OPTIONS>
>  
> REPOS_DIR does have the default list of two directories to search.
> 
> When I first saw pkgbasify write a FreeBSD-base configuration to 
> /usr/local/etc/pkg/repos/ I thought that the path was, somehow, unexpected.

I think it should be a fatal mistake and should be in under /etc,
not under /usr/local/etc. If it is still as such, it should be fixed
before any release primarily use PkgBase for installs/updates.
Maybe at 15.0?


> After looking at intro(5) and hier(7), /usr/local/etc/pkg/repos/ seems 
> proper (a change of mind).

Again, I think /usr/local/etc/pkg should be the place for
local ones, anything not updated on PkgBase, bsdinstall nor
freebsd-update. Anything possibly updated by them should be in
under /etc.

What allowed to be created and/or edited by admins in /etc
should better limited to anything essential for boot.
fstab, rc.conf, firewall configs and so on that any of boot process
(including rc scripts in /etc/rc.conf.d) requires.


> <https://reviews.freebsd.org/D51594> for pkgbasify in base 〓 without 
> pkg(8) in base 〓 will probably change my mind, again.

I think pkg is quite irregular corner case.
Indeed, it SHALL be the part of base, but as it is still under active
developement, need to be in ports "until the spec prolerly fixed up".
So exists /usr/sbin/pkg for bootstrapping.

If pkg is NOT an irregular corner case, why ALL ports are NOT forced
to have corresponding bootstraps in base?

And IMHO, PkgBase SHALL NOT BE ALLOWED unless pkg is considered
as the part of base, even though actual part is "currently" placed
in ports tree.

"PkgBase is coming to true.", I believe this is why configs for pkg
is placed under /etc, not /usr/local/etc.

-- 
Tomoaki AOKI    <junch...@dec.sakura.ne.jp>

Reply via email to