Solved Question about /etc/freebsd-update.conf file

Hi,
I noticed that /etc/freebsd-update.conf's content (specifically "Components" directive) is the same among my FreeBSD systems:

Code:
# Components of the base system which should be kept updated.
Components src world kernel

I would like to know if this list belongs to "Distribution Select" menu during FreeBSD installation.

For example, I just ran freebsd-update fetch and I got:

Code:
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 2 mirrors found.
...


Next, I ran

Code:
wget ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/11.2-RELEASE/src.txz
tar -C / -xzvf src.txz

and freebsd-update fetch showed no more "src component not installed".
How is it checked? At filesystem level?

To summarize: I don't know precisely how to "match":

1) Distribution Select during installation phase
2) Components listed in /etc/freebsd-update.conf
3) Components listed in ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/11.2-RELEASE/

Thank you!
 
Hi,
I noticed that /etc/freebsd-update.conf's content (specifically "Components" directive) is the same among my FreeBSD systems:

Code:
# Components of the base system which should be kept updated.
Components src world kernel

I would like to know if this list belongs to "Distribution Select" menu during FreeBSD installation.

No, I do not see anything related to the freebsd-update configuration file in bsdinstall(8).
This file came with base.txz, and should be the same for each install.

To avoid the warning you may only have to remove the src components. If not, freebsd-update will check for the availability of /usr/src/COPYRIGHT.

freebsd-update is a single shell script.
 
Code:
# Components of the base system which should be kept updated.
Components src world kernel

I would like to know if this list belongs to "Distribution Select" menu during FreeBSD installation.
I'm not sure what you mean by that but these components do correspond with what you can select during installation. However, that's also where things end. freebsd-update checks your system every time you perform an update / upgrade and it'll check what components are available each and every time.

But that's also where the association ends. It's not connected. So: if you select the source code to be installed using the installer, then remove said source code again you'll end up with freebsd-update once again complaining that it cannot find the sourcecode.

This is indeed checked on filesystem level.

Did you know that freebsd-update is basically nothing more but a shell script? So if you want to know how it works just run less /usr/sbin/freebsd-update and you'll see ;)

To summarize: I don't know precisely how to "match":

1) Distribution Select during installation phase
2) Components listed in /etc/freebsd-update.conf
3) Components listed in ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/11.2-RELEASE/
  1. Selecting components during the installation only determines which archives get extracted from /usr/freebsd-dist, no more and no less.
  2. These simply determine which components should be included with the update (or upgrade). Also somewhat related to #1: it determines which archives are to be extracted.
  3. Those are the actual archives which contain your base system.
 
Hi, sorry for my delay.
So, during installation ( bsdinstall), "distributions" are:

base.txz: Base system
kernel.txz: Output of make install kernel.
games.txz: Fortune, etc.
doc.txz: Documentation (including handbook)
ports.txz: Ports tree (optional)
src.txz: System source code

(I am quoting https://wiki.freebsd.org/BSDInstall website).

According to freebsd-update.conf's manpage, main components are:

"src" (source code)
"world" (non-kernel binaries)
"kernel"

so, I guess src and kernel components are the same of kernel.txz and src.txz distributions. Am I wrong?

What is the difference between "base" distribution and "world" component?
And... what is the difference between "base" distribution and "world/base" subcomponent?

Thank you again!
 
Here's one to further confuse you.
What is the difference between world and universe.
It's all worth learning and has meaning.
 
Yah, that info is outdated. These days games.txz no long exists but instead we got tests.txz.

so, I guess src and kernel components are the same of kernel.txz and src.txz distributions. Am I wrong?
I can't say for sure, but that is also the theory I always follow.

What is the difference between "base" distribution and "world" component? And... what is the difference between "base" distribution and "world/base" subcomponent?
As far as I can tell there is little to no difference. To be honest I think that the whole division into different Components hasn't been that official. I mean, it's rather poorly documented.

But if world means everything but the kernel, then that could be correlated with base.txz and kernel.txz. However... then we suddenly have tests.txz which could be part of the base system (world/base) or maybe not (world/tests).

I think it might help if you'd also look into those archives yourselves, that might give you a good impression. Even so... I usually follow a simple rule: these options are somewhat useful to customize your base system a little bit, if you need this amount of control over it then you could also consider building using the source and customize the setup through /etc/src.conf.
 
Back
Top