[Bug 282324] pkgbase: Utilities used by FreeBSD-rc-14.1 RC Scripts require dragging in bloated utilities

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 04 Nov 2024 18:33:30 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282324

--- Comment #3 from Jeff Kletsky <jeff+freebsd@wagsky.com> ---
I agree that most of the service-specific rc files would make more sense to
install/update/remove along with the service they manage.

I'm not sure where to draw the line but as a user, I would expect things like
mounting file systems, changing run levels, and running the rc scripts for
runtime services to be from the FreeBSD-base system or the FreeBSD-runtime
package.

I acknowledge that the range of utilities used by third-party rc scripts is
virtually unlimited. If "all" were to be included it would be worse than
bringing in the whole of FreeBSD-utilities along with the likes of TCL, Perl,
and Python 2.

A reasonable compromise for me would be to have the "most common" and highly
useful utilities available in FreeBSD-runtime. FreeBSD-rescue is an option for
some, but requires a change of PATH for the rc execution on reduced-footprint
systems. Conceivably this could be done automatically, but I haven't thought
that far ahead.

As a starting point for those "most common" utilities that seem to not to be
present in FreeBSD-runtime, I came up with the list below from my limited
experience.

`awk` isn't something that I use myself, but I have seen used.

`false` is arguable though I'd expect it there if the `|| true` construct is
available.

`od` and `hexdump` have shown up for loading firmware or setting registers for
network devices, at least in other OSes I've worked with.

`su` is sometimes needed to assume a service's user

`nologin` is present in the distributed user data

I'm personally OK with needing to install the compression/decompression
utilities with FreeBSD-rescue, though would prefer if they were available as
-utilities-compression or something like that or by-algorithm packages.


/usr/bin
        awk
        basename
        cut
        dirname
        false
        hexdump
        od
        su
        touch
        tr
        true
        uniq
        wc
        yes
/usr/sbin
        chgrp   -- rescue
        chown   -- rescue
        chroot  -- rescue
        daemon
        nologin (and its symlink as /sbin/nologin)


bz, gz, xz, zstd compression and decompression -- rescue

realpath -- runtime
sort -- runtime
find -- runtime
tar -- runtime

-- 
You are receiving this mail because:
You are the assignee for the bug.