Trying to understand base system packages

0 views
Skip to first unread message

Sad Clouds

unread,
7:29 AM (11 hours ago) 7:29 AM
to freebsd-...@freebsd.org
Hi I'm trying to understand the new workflows associated with base
packages on FreeBSD-15. I'd like to ask some questions:

1. Does "pkg upgrade" now upgrade both base and ports packages? If yes
then what is the best way to override it and specify explicitly either
base or ports? Is this the correct approach:
# pkg upgrade -r FreeBSD-ports

2. Does "pkg upgrade" for base packages also merge etc files, or do I
need to manually execute etcupdate? Looks like various etc files are
split across different base packages. Is etcupdate even relevant
anymore for upgrades? How does pkg handle merges for locally modified
etc files?

3. In /etc/pkg/FreeBSD.conf FreeBSD-base is disabled by default. What
is the reason for that? Do I need to manually enable it if I want
"pkg upgrade" to upgrade base packages in the future?

4. Why am I not able to delete individual base packages:
# pkg info | grep sendmail
FreeBSD-libmilter-15.0 sendmail Mail Filter API library
FreeBSD-libmilter-dev-15.0 sendmail Mail Filter API library (development files)
FreeBSD-sendmail-15.0 sendmail mail transport agent

# pkg delete FreeBSD-sendmail
Cannot solve problem using SAT solver, trying another plan
Cannot solve problem using SAT solver, trying another plan
Cannot solve problem using SAT solver, trying another plan
Checking integrity... done (0 conflicting)
1 packages requested for removal: 0 locked, 1 missing

5. When building from source and executing "make release" this creates
the traditional *.txz files. In addition to these, how do I also
generate all of the base packages as part of the release? There is
release/pkgbase-repo directory that gets created but it is left empty.
Is running "make packages" a prerequisite before "make release" for
this to happen, or is there a different release target for base
packages?

6. If I need to modify src.conf and build my own set of base packages,
what is the recommended way to install/upgrade with these packages?
Can I tell pkg to fetch the packages from a local directory? The
pkg(8) command supports options like -c (chroot dir), -r (root dir),
etc, but I'm confused on how it should be used. For example:

I build a release for arm64/aarch64 on amd64, create a partition on
microSD card and mount it under /mnt. I then execute
"tar -C /mnt -xpUf base.txz" to install the base system.

How do I replicate the above with pkg? Can anyone provide a quick
example?

Thanks.

Marco Moock

unread,
7:47 AM (11 hours ago) 7:47 AM
to ques...@freebsd.org
On 05.12.2025 12:28 Sad Clouds <cryintot...@gmail.com> wrote:

> 3. In /etc/pkg/FreeBSD.conf FreeBSD-base is disabled by default. What
> is the reason for that? Do I need to manually enable it if I want
> "pkg upgrade" to upgrade base packages in the future?

Is your system already pkg-basified?
What about configuration files in /usr/local/pkg

> 4. Why am I not able to delete individual base packages:
> # pkg info | grep sendmail
> FreeBSD-libmilter-15.0 sendmail Mail Filter API library
> FreeBSD-libmilter-dev-15.0 sendmail Mail Filter API library
> (development files) FreeBSD-sendmail-15.0 sendmail mail
> transport agent
>
> # pkg delete FreeBSD-sendmail
> Cannot solve problem using SAT solver, trying another plan
> Cannot solve problem using SAT solver, trying another plan
> Cannot solve problem using SAT solver, trying another plan
> Checking integrity... done (0 conflicting)
> 1 packages requested for removal: 0 locked, 1 missing

The MTA selection is being done with /etc/mail/mailer.conf
I assume it is not intended to delete the actual software, as it is
part of the base system.


--
kind regards
Marco

Send spam to abfall17...@stinkedores.dorfdsl.de

Sad Clouds

unread,
7:59 AM (11 hours ago) 7:59 AM
to Marco Moock, ques...@freebsd.org
On Fri, 5 Dec 2025 13:45:10 +0100
Marco Moock <m...@dorfdsl.de> wrote:

> On 05.12.2025 12:28 Sad Clouds <cryintot...@gmail.com> wrote:
>
> > 3. In /etc/pkg/FreeBSD.conf FreeBSD-base is disabled by default. What
> > is the reason for that? Do I need to manually enable it if I want
> > "pkg upgrade" to upgrade base packages in the future?
>
> Is your system already pkg-basified?
> What about configuration files in /usr/local/pkg
>

In this case, it's new install of FreeBSD-15.0 with base packages.
It's a test VM as I'm just trying to experiment with pkg and understand
the reasons for various settings.

Sad Clouds

unread,
9:31 AM (9 hours ago) 9:31 AM
to Marco Moock, ques...@freebsd.org
On Fri, 5 Dec 2025 13:45:10 +0100
Marco Moock <m...@dorfdsl.de> wrote:

> > # pkg delete FreeBSD-sendmail
> > Cannot solve problem using SAT solver, trying another plan
> > Cannot solve problem using SAT solver, trying another plan
> > Cannot solve problem using SAT solver, trying another plan
> > Checking integrity... done (0 conflicting)
> > 1 packages requested for removal: 0 locked, 1 missing
>
> The MTA selection is being done with /etc/mail/mailer.conf
> I assume it is not intended to delete the actual software, as it is
> part of the base system.
>

This happens for every other base package:

# pkg delete FreeBSD-games

infoomatic

unread,
10:28 AM (8 hours ago) 10:28 AM
to ques...@freebsd.org
This is because you have installed certain FreeBSD sets, which are meta
packages. I do admit that the messages from pkg should be improved.

If you want to know what FreeBSD-set-* pulls in FreeBSD-sendmail as a
dependency, use "pkg info -r FreeBSD-sendmail", and then uninstall the
set. You can then uninstall FreeBSD-sendmail.

On my VM which I dedicated to understanding pkgbase, I only have
FreeBSD-set-minimal-jail and FreeBSD-set-kernels installed.

"man freebsd-base" also helps.

hth,

Robert
Reply all
Reply to author
Forward
0 new messages