aboutsummaryrefslogtreecommitdiff
path: root/documentation
diff options
context:
space:
mode:
Diffstat (limited to 'documentation')
-rw-r--r--documentation/content/en/articles/committers-guide/_index.adoc1
-rw-r--r--documentation/content/en/articles/pgpkeys/_index.adoc3
-rw-r--r--documentation/content/en/books/handbook/dtrace/_index.adoc38
-rw-r--r--documentation/content/en/books/handbook/glossary.adoc18
-rw-r--r--documentation/content/en/books/handbook/virtualization/_index.adoc6
-rw-r--r--documentation/content/en/books/handbook/x11/_index.adoc655
-rw-r--r--documentation/content/en/books/porters-handbook/versions/_index.adoc5
-rw-r--r--documentation/content/nl/articles/_index.po4
-rw-r--r--documentation/content/nl/books/handbook/_index.adoc29
-rw-r--r--documentation/content/nl/books/handbook/_index.po38
-rw-r--r--documentation/content/nl/books/handbook/book.adoc38
-rw-r--r--documentation/content/nl/books/handbook/book.po38
-rw-r--r--documentation/content/nl/books/handbook/colophon.adoc48
-rw-r--r--documentation/content/nl/books/handbook/colophon.po40
-rw-r--r--documentation/content/nl/books/handbook/partiv.adoc26
-rw-r--r--documentation/content/nl/books/handbook/partiv.po80
-rw-r--r--documentation/content/nl/books/handbook/partv.adoc12
-rw-r--r--documentation/content/nl/books/handbook/partv.po30
-rw-r--r--documentation/static/pgpkeys/imp.key470
-rw-r--r--documentation/static/pgpkeys/obiwac.key55
20 files changed, 1094 insertions, 540 deletions
diff --git a/documentation/content/en/articles/committers-guide/_index.adoc b/documentation/content/en/articles/committers-guide/_index.adoc
index d52aab2ee5..1adfc46e2b 100644
--- a/documentation/content/en/articles/committers-guide/_index.adoc
+++ b/documentation/content/en/articles/committers-guide/_index.adoc
@@ -199,7 +199,6 @@ The Kerberos password also serves as the LDAP web password, since LDAP is proxyi
Some of the services which require this include:
* https://bugs.freebsd.org/bugzilla[Bugzilla]
-* https://ci.freebsd.org[Jenkins]
To create a new Kerberos account in the FreeBSD cluster, or to reset a Kerberos password for an existing account using a random password generator:
diff --git a/documentation/content/en/articles/pgpkeys/_index.adoc b/documentation/content/en/articles/pgpkeys/_index.adoc
index ba59411090..4ce40fbc15 100644
--- a/documentation/content/en/articles/pgpkeys/_index.adoc
+++ b/documentation/content/en/articles/pgpkeys/_index.adoc
@@ -1431,6 +1431,9 @@ include::{include-path}peter.key[]
=== `{nwhitehorn}`
include::{include-path}nwhitehorn.key[]
+=== `{obiwac}`
+include::{include-path}obiwac.key[]
+
=== `{miwi}`
include::{include-path}miwi.key[]
diff --git a/documentation/content/en/books/handbook/dtrace/_index.adoc b/documentation/content/en/books/handbook/dtrace/_index.adoc
index 71e9d2a348..755a21404e 100644
--- a/documentation/content/en/books/handbook/dtrace/_index.adoc
+++ b/documentation/content/en/books/handbook/dtrace/_index.adoc
@@ -63,7 +63,7 @@ The FreeBSD implementation provides full support for kernel DTrace and experimen
Userland DTrace allows users to perform function boundary tracing for userland programs using the `pid` provider, and to insert static probes into userland programs for later tracing.
Some ports, such as package:databases/postgresql12-server[] and package:lang/php74[] have a DTrace option to enable static probes.
-The official guide to DTrace is maintained by the Illumos project at https://illumos.org/books/dtrace/bookinfo.html[DTrace Guide].
+The official guide to DTrace is maintained by the illumos project at https://illumos.org/books/dtrace/bookinfo.html[illumos Dynamic Tracing Guide].
After reading this chapter, you will know:
@@ -88,18 +88,18 @@ To load all of the necessary modules:
# kldload dtraceall
....
-Beginning with FreeBSD 10.0-RELEASE, the modules are automatically loaded when `dtrace` is run.
+Beginning with FreeBSD 10.0-RELEASE, the modules are automatically loaded when man:dtrace[1] is run.
-FreeBSD uses the `DDB_CTF` kernel option to enable support for loading `CTF` data from kernel modules and the kernel itself.
-`CTF` is the Solaris(TM) Compact C Type Format which encapsulates a reduced form of debugging information similar to `DWARF` and the venerable stabs.
-`CTF` data is added to binaries by the `ctfconvert` and `ctfmerge` build tools.
-The `ctfconvert` utility parses `DWARF``ELF` debug sections created by the compiler and `ctfmerge` merges `CTF``ELF` sections from objects into either executables or shared libraries.
+FreeBSD uses the `DDB_CTF` kernel option to enable support for loading man:ctf[5] data from kernel modules and the kernel itself.
+`CTF` is the Solaris(TM) Compact C Type Format which encapsulates a reduced form of debugging information similar to `DWARF` and the venerable stabs.
+`CTF` data is added to binaries by the man:ctfconvert[1] and man:ctfmerge[1] build tools.
+The `ctfconvert` utility parses `DWARF` `ELF` debug sections created by the compiler and `ctfmerge` merges `CTF` `ELF` sections from objects into either executables or shared libraries.
Some different providers exist for FreeBSD than for Solaris(TM).
-Most notable is the `dtmalloc` provider, which allows tracing `malloc()` by type in the FreeBSD kernel.
-Some of the providers found in Solaris(TM), such as `cpc` and `mib`, are not present in FreeBSD.
+Most notable is the `dtmalloc` provider, which allows tracing man:malloc[9] by type in the FreeBSD kernel.
+Some of the providers found in Solaris(TM), such as `cpc`, are not present in FreeBSD.
These may appear in future versions of FreeBSD.
-Moreover, some of the providers available in both operating systems are not compatible, in the sense that their probes have different argument types.
+Moreover, some of the providers available in both operating systems are not compatible, in the sense that their probes have different argument types.
Thus, `D` scripts written on Solaris(TM) may or may not work unmodified on FreeBSD, and vice versa.
Due to security differences, only `root` may use DTrace on FreeBSD.
@@ -131,17 +131,12 @@ Users of the AMD64 architecture should also add this line:
options KDTRACE_FRAME
....
-This option provides support for `FBT`.
+This option provides support for man:dtrace_fbt[4].
While DTrace will work without this option, there will be limited support for function boundary tracing.
-Once the FreeBSD system has rebooted into the new kernel, or the DTrace kernel modules have been loaded using `kldload dtraceall`, the system will need support for the Korn shell as the DTrace Toolkit has several utilities written in `ksh`.
-Make sure that the package:shells/ksh93[] package or port is installed.
-It is also possible to run these tools under package:shells/pdksh[] or package:shells/mksh[].
-
-Finally, install the current DTrace Toolkit, a collection of ready-made scripts for collecting system information.
-There are scripts to check open files, memory, `CPU` usage, and a lot more.
-FreeBSD 10 installs a few of these scripts into [.filename]#/usr/share/dtrace#.
-On other FreeBSD versions, or to install the full DTrace Toolkit, use the package:sysutils/dtrace-toolkit[] package or port.
+Once the FreeBSD system has rebooted into the new kernel, or the DTrace kernel modules have been loaded using `kldload dtraceall`, install the current DTrace Toolkit (package:sysutils/dtrace-toolkit[]), a collection of ready-made scripts for collecting system information.
+There are scripts to check open files, memory, CPU usage, and a lot more.
+FreeBSD includes some scripts in the base system as well; see [.filename]#/usr/share/dtrace#.
[NOTE]
====
@@ -152,7 +147,8 @@ Not all of the scripts found in the DTrace Toolkit will work as-is on FreeBSD an
The DTrace Toolkit includes many scripts in the special language of DTrace.
This language is called the D language and it is very similar to C++.
An in depth discussion of the language is beyond the scope of this document.
-It is covered extensively in the http://www.dtrace.org/guide[Illumos Dynamic Tracing Guide].
+Refer to the FreeBSD man:d[7] manual page for an overview of the D language on FreeBSD.
+The D language is also covered extensively in the https://www.illumos.org/books/dtrace/bookinfo.html[illumos Dynamic Tracing Guide].
[[dtrace-out-of-kernel]]
== Enabling DTrace in Out-of-Kernel Modules
@@ -183,7 +179,7 @@ To view all probes, the administrator can execute the following command:
# dtrace -l | more
....
-Each probe has an `ID`, a `PROVIDER` (dtrace or fbt), a `MODULE`, and a `FUNCTION NAME`.
+Each probe has an `ID`, a `PROVIDER` (e.g., `dtrace` or `fbt`), a `MODULE`, and a `FUNCTION NAME`.
Refer to man:dtrace[1] for more information about this command.
The examples in this section provide an overview of how to use two of the fully supported scripts from the DTrace Toolkit: the [.filename]#hotkernel# and [.filename]#procsystime# scripts.
@@ -288,4 +284,4 @@ Elapsed Times for processes csh,
read 3988049784
....
-As shown, the `read()` system call used the most time in nanoseconds while the `getpid()` system call used the least amount of time.
+As shown, the man:read[2] system call used the most time in nanoseconds while the man:getpid[2] system call used the least amount of time.
diff --git a/documentation/content/en/books/handbook/glossary.adoc b/documentation/content/en/books/handbook/glossary.adoc
index de369e8d2f..005a10e66f 100644
--- a/documentation/content/en/books/handbook/glossary.adoc
+++ b/documentation/content/en/books/handbook/glossary.adoc
@@ -240,6 +240,9 @@ See crossref:glossary[dhcp-glossary,Dynamic Host Configuration Protocol].
DNS::
See crossref:glossary[dns-glossary,Domain Name System].
+DRM::
+See crossref:glossary[drm-glossary,Direct Rendering Manager].
+
DSDT::
See crossref:glossary[dsdt-glossary,Differentiated System Description Table].
@@ -286,6 +289,10 @@ Distance-Vector Multicast Routing Protocol::
Domain Name System::
The system that converts humanly readable hostnames (i.e., mail.example.net) to Internet addresses and vice versa.
+[[drm-glossary]]
+Direct Rendering Manager::
+The man:drm[7] kernel module allows client applications direct access to the graphical hardware via the Direct Rendering Infrastructure.
+
[[dhcp-glossary]]
Dynamic Host Configuration Protocol::
A protocol that dynamically assigns IP addresses to a computer (host) when it requests one from the server.
@@ -467,6 +474,9 @@ See crossref:glossary[kdc-glossary,Key Distribution Center].
KLD::
See crossref:glossary[kld-glossary,Kernel ld(1)].
+KMS::
+See crossref:glossary[kms-glossary,Kernel Mode Setting].
+
KSE::
See crossref:glossary[kse-glossary,Kernel Scheduler Entities].
@@ -476,6 +486,9 @@ See crossref:glossary[kva-glossary,Kernel Virtual Address].
Kbps::
See crossref:glossary[kbps-glossary,Kilo Bits Per Second].
+[[kms-glossary]]
+Setting the display mode in kernel space.
+
[[kld-glossary]]
Kernel man:ld[1]::
A method of dynamically loading functionality into a FreeBSD kernel without rebooting the system.
@@ -791,6 +804,11 @@ As FreeBSD evolves, changes visible to the user should be kept as unsurprising a
For example, arbitrarily rearranging system startup variables in [.filename]#/etc/defaults/rc.conf# violates POLA.
Developers consider POLA when contemplating user-visible system changes.
+[[prime-glossary]]
+PRIME::
+A method of multiple physical graphics coprocessors coexisting by
+sharing their direct memory access buffers.
+
[[pr-glossary]]
Problem Report::
A description of some kind of problem that has been found in either the FreeBSD source or documentation.
diff --git a/documentation/content/en/books/handbook/virtualization/_index.adoc b/documentation/content/en/books/handbook/virtualization/_index.adoc
index 70737882ac..785aaf4ce6 100644
--- a/documentation/content/en/books/handbook/virtualization/_index.adoc
+++ b/documentation/content/en/books/handbook/virtualization/_index.adoc
@@ -1939,7 +1939,7 @@ bhyve {
host.hostname = "your-hostname-here";
vnet;
- vnet.interface = "em${if}";
+ vnet.interface = "jail${if}";
path = "/jails/${name}";
persist;
securelevel = 3;
@@ -1976,7 +1976,7 @@ bhyve {
host.hostname = "your-hostname-here";
vnet;
- vnet.interface = "em${if}";
+ vnet.interface = "jail${if}";
path = "/jails/${name}";
persist;
securelevel = 3;
@@ -2063,7 +2063,7 @@ Using `vmrun.sh` on a ZFS filesystems:
....
# jexec bhyve
# sh /usr/share/examples/bhyve/vmrun.sh -c 1 -m 1024M \
- -t tap100 -d /dev/zvols/zroot/vms/bhyvevm0 -i -I /vms/FreeBSD-14.0-RELEASE-amd64-bootonly.iso bhyvevm0
+ -t tap100 -d /dev/zvol/zroot/vms/bhyvevm0 -i -I /vms/FreeBSD-14.0-RELEASE-amd64-bootonly.iso bhyvevm0
....
====
diff --git a/documentation/content/en/books/handbook/x11/_index.adoc b/documentation/content/en/books/handbook/x11/_index.adoc
index ea2b2954ea..ed08ab6298 100644
--- a/documentation/content/en/books/handbook/x11/_index.adoc
+++ b/documentation/content/en/books/handbook/x11/_index.adoc
@@ -3,8 +3,8 @@ title: Chapter 5. The X Window System
part: Part I. Getting Started
prev: books/handbook/ports
next: books/handbook/wayland
-description: This chapter describes how to install and configure Xorg on FreeBSD, which provides the open source X Window System used to provide a graphical environment
-tags: ["X11", "Xorg", "TrueType", "Intel", "AMD", "NVIDIA", "Anti-Aliased", "VESA", "SCFB"]
+description: This chapter describes how to install and configure the X Window System providing a graphical environment
+tags: ["AMD", "DRM", "Fonts", "Graphics", "Input", "Intel", "Monitor", "NVIDIA", "PRIME", "SCFB", "TrueType", "VESA", "Video", "X11", "Xf86", "Xorg"]
showBookMenu: true
weight: 7
params:
@@ -15,7 +15,7 @@ params:
= The X Window System
:doctype: book
:toc: macro
-:toclevels: 1
+:toclevels: 2
:icons: font
:sectnums:
:sectnumlevels: 6
@@ -52,125 +52,127 @@ endif::[]
[[x11-synopsis]]
== Synopsis
-An installation of FreeBSD using bsdinstall does not automatically install a graphical user interface.
-This chapter describes how to install and configure Xorg, which provides the open source X Window System used to provide a graphical environment.
-It then describes how to find and install a desktop environment or window manager.
+An crossref:bsdinstall[bsdinstall-synopsis,installation]
+of FreeBSD using man:bsdinstall[8]
+does not automatically install a graphical user interface.
+This chapter describes how to install and configure
+the man:Xorg[1] server, which provides the open source X Window System
+(colloquially X11) used to provide a graphical environment.
Before reading this chapter, you should:
-* Know how to install additional third-party software as described in crossref:ports[ports,Installing Applications: Packages and Ports].
+* Know how to install additional third-party software as described
+in crossref:ports[ports,Installing Applications: Packages and Ports].
After reading this chapter, you will know:
-* The various components of the X Window System, and how they interoperate.
-* How to install and configure Xorg.
-* How to use TrueType(R) fonts in Xorg.
-* How to set up your system for graphical logins (XDM).
+* How to select and install drivers for your graphics processor (GPU).
+* The various components of the X Window System,
+and how they interoperate.
+* How to install and configure the X.org server.
+* How to install fonts for the X Window System.
-[[x-install]]
-== Installing Xorg
-
-On FreeBSD, Xorg can be installed as a package or port.
-
-The binary meta package can be installed quickly but with fewer options for customization:
-
-[source,shell]
-....
-# pkg install xorg
-....
-
-Either of these installations results in the complete Xorg system being installed.
-
-The current user must be a member of the `video` group.
-To add a user to `video` group, execute the following command:
-
-[source,shell]
-....
-# pw groupmod video -m username
-....
+[[x-graphic-card-drivers]]
+== Graphics Drivers
-[TIP]
-====
-A smaller version of the X system suitable for experienced users is available in package:x11/xorg-minimal[].
-Most of the documents, libraries, and applications will not be installed.
-Some applications require these additional components to function.
-====
+_**abstract**: Identify your GPU, the port providing a driver for it,
+install it, then enable it to run at subsequent boot with man:sysrc[8]._
-[TIP]
-====
-Video cards, monitors, and input devices are automatically detected and do not require any manual configuration.
-Do not create `xorg.conf` or run a `-configure` step unless automatic configuration fails.
-====
+Before FreeBSD can render a graphical environment,
+it needs a kernel module to drive the graphics processor.
+Graphics drivers are a fast-moving, cross-platform target,
+which is why this is developed and distributed
+separately from the FreeBSD base system.
-[[x-graphic-card-drivers]]
-== Graphic card drivers
+The following table shows the different graphics processors
+supported by FreeBSD, their corresponding module,
+and which port provides it:
-The following table shows the different graphics cards supported by FreeBSD, which package should be installed and its corresponding module.
-
-.Graphic card packages
+.Supported Graphics Devices
[options="header", cols="1,1,1,1"]
|===
-| Brand | Type | Package | Module
+| Type | License | Module | Port
| Intel(R)
| Open Source
-| drm-kmod
| `i915kms`
+| package:graphics/drm-kmod[]
| AMD(R)
| Open Source
-| drm-kmod
-| `amdgpu` and `radeonkms`
+| `amdgpu` or `radeonkms`
+| package:graphics/drm-kmod[]
| NVIDIA(R)
| Proprietary
-| nvidia-driver
-| `nvidia` or `nvidia-modeset`
+| `nvidia-drm`, `nvidia-modeset`, or `nvidia`
+| package:graphics/nvidia-drm-kmod[] or +
+package:x11/nvidia-driver[]
-| VESA
+| System Console Framebuffer
| Open Source
-| xf86-video-vesa
-| vesa
+| `scfb`
+| package:x11-drivers/xf86-video-scfb[]
-| SCFB
+| VESA BIOS Extension
| Open Source
-| xf86-video-scfb
-| scfb
+| `vesa`
+| package:x11-drivers/xf86-video-vesa[]
| VirtualBox(R)
| Open Source
-| virtualbox-ose-additions
-| VirtualBox(R) OSE additions include the `vboxvideo` driver.
+| `vboxvideo`
+| package:emulators/virtualbox-ose-additions[]
| VMware(R)
| Open Source
-| xf86-video-vmware
-| vmwgfx
-
+| `vmwgfx`
+| package:x11-drivers/xf86-video-vmware[]
|===
-The following command can be used to identify which graphics card is installed in the system:
+There are several generations of driver technologies supported.
+
+* Direct Rendering drivers allowing PRIME offloading.
+PRIME allows for multiple providers of graphics processing to coexist.
+PRIME is described further in <<x-config-gpu>>.
+
+* Kernel Modesetting (crossref:glossary[kms-glossary,KMS])
+This allows the driver to directly specify the display mode.
+This is required to support suspend and resume when using the man:vt[4]
+console driver.
+
+* User Modesetting
+The oldest class of drivers is still supported, however they
+may only be used with man:sc[4] console and older versions of the
+man:Xorg[1] graphical environment.
+
+The following command can be used to identify
+which graphics processor is installed in the system:
[source,shell]
....
-% pciconf -lv|grep -B4 VGA
+% pciconf -lv | grep -B3 display
....
The output should be similar to the following:
[.programlisting]
....
-vgapci0@pci0:0:2:0: class=0x030000 rev=0x07 hdr=0x00 vendor=0x8086 device=0x2a42 subvendor=0x17aa subdevice=0x20e4
+vgapci1@pci0:0:2:0: class=0x030000 rev=0x0c hdr=0x00 vendor=0x8086 device=0x46a6 subvendor=0x1028 subdevice=0x0b29
vendor = 'Intel Corporation'
- device = 'Mobile 4 Series Chipset Integrated Graphics Controller'
+ device = 'Alder Lake-P GT2 [Iris Xe Graphics]'
class = display
- subclass = VGA
....
+Detailed instructions on installing and enabling these drivers
+are in the subsequent subsections.
+
[WARNING]
====
-If the graphics card is not supported by Intel(R), AMD(R) or NVIDIA(R) drivers, then VESA or SCFB modules should be used.
-VESA module must be used when booting in BIOS mode and SCFB module must be used when booting in UEFI mode.
+If the graphics processor is not supported by Intel(R), AMD(R),
+or NVIDIA(R) drivers, then SCFB or VESA modules should be used.
+SCFB module must be used when booting in UEFI mode.
+VESA module must be used when booting in BIOS mode.
This command can be used to check the booting mode:
@@ -183,25 +185,28 @@ The output should be similar to the following:
[.programlisting]
....
-machdep.bootmethod: BIOS
+machdep.bootmethod: UEFI
....
====
[[x-configuration-intel]]
-=== Intel(R)
+=== Intel(R) Graphics
-Intel(R) Graphics refers to the class of graphics chips that are integrated on the same die as an Intel(R) CPU.
-Wikipedia offers link:https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units[a good overview of the variations and names used for generations of Intel HD Graphics].
+The package:graphics/drm-kmod[] package indirectly provides
+a range of kernel modules for use with Intel(R) Graphics.
+Recent versions of these modules can be used in conjunction
+with other graphics processors in PRIME with no special configuration.
-The package:graphics/drm-kmod[] package indirectly provides a range of kernel modules for use with Intel(R) Graphics cards.
-The Intel(R) driver can be installed by executing the following command:
+The Intel(R) Graphics driver can be installed
+by executing the following command:
[source,shell]
....
# pkg install drm-kmod
....
-Then add the module to `/etc/rc.conf` file, executing the following command:
+Then add the module to [.filename]#/etc/rc.conf# file,
+by executing the following command:
[source,shell]
....
@@ -209,27 +214,34 @@ Then add the module to `/etc/rc.conf` file, executing the following command:
....
[[x-configuration-amd]]
-=== AMD(R)
+=== AMD(R) Graphics
-The package:graphics/drm-kmod[] package indirectly provides a range of kernel modules for use with AMD(R) Graphics cards.
-The modules `amdgpu` and `radeonkms` can be used depending the generation of the hardware.
-The FreeBSD project maintains an link:https://wiki.freebsd.org/Graphics/AMD-GPU-Matrix[AMD graphics support matrix to determine which driver must be used].
+The package:graphics/drm-kmod[] package indirectly provides
+kernel modules for a range of AMD(R) Graphics processors.
+The modules `amdgpu` or `radeonkms` can be used
+depending the generation of the hardware.
+The FreeBSD project maintains a link:https://wiki.freebsd.org/Graphics/AMD-GPU-Matrix[AMD graphics support matrix]
+showing support levels and to determine which driver must be used.
-AMD(R) driver can be installed by executing the following command:
+The AMD(R) Graphics drivers can be installed
+by executing the following command:
[source,shell]
....
# pkg install drm-kmod
....
-For post-HD7000 or Tahiti graphic cards add the module to `/etc/rc.conf` file, executing the following command:
+Enable the current module by adding it to the [.filename]#/etc/rc.conf#
+file, executing the following command:
[source,shell]
....
# sysrc kld_list+=amdgpu
....
-For older graphic cards (pre-HD7000 or pre-Tahiti) add the module to `/etc/rc.conf` file, executing the following command:
+For older graphics (pre-HD7000/Tahiti),
+instead enable the legacy module by adding it to the
+[.filename]#/etc/rc.conf# file, executing the following command:
[source,shell]
....
@@ -237,101 +249,213 @@ For older graphic cards (pre-HD7000 or pre-Tahiti) add the module to `/etc/rc.co
....
[[x-configuration-nvidia]]
-=== NVIDIA(R)
+=== NVIDIA(R) Graphics
-FreeBSD supports different versions of the proprietary NVIDIA(R) driver.
-Users of newer graphics cards should install the package:x11/nvidia-driver[] package.
-Those with older cards will have to check below which version supports them.
+NVIDIA(R) produces standalone or discrete graphics processors,
+and provides a proprietary driver for FreeBSD.
+The FreeBSD Ports Collection provides over a decade of drivers
+for supporting generations of NVIDIA graphics.
-.Supported versions of NVIDIA(R) drivers
-[options="header", cols="1,1"]
-|===
-| Package | Supported hardware
+Administrators should install the latest driver
+supported by their hardware.
-| package:x11/nvidia-driver-304[]
-| link:https://www.nvidia.com/Download/driverResults.aspx/123712/en-us/[supported hardware]
+The following table shows the port containing the driver,
+the kernel module recommended for loading,
+and a link to the list of hardware supported by that driver:
-| package:x11/nvidia-driver-340[]
-| link:https://www.nvidia.com/Download/driverResults.aspx/156167/en-us/[supported hardware]
+.Supported versions of NVIDIA(R) Graphics drivers
+[options="header", cols="1,1,1"]
+|===
+| Port | Module | Supported hardware
-| package:x11/nvidia-driver-390[]
-| link:https://www.nvidia.com/Download/driverResults.aspx/191122/en-us/[supported hardware]
+| package:graphics/nvidia-drm-kmod[]
+| `nvidia-drm` or +
+`nvidia-modeset`
+| link:https://www.nvidia.com/Download/driverResults.aspx/210651/en-us/[supported hardware]
| package:x11/nvidia-driver-470[]
+| `nvidia-modeset`
| link:https://www.nvidia.com/Download/driverResults.aspx/194639/en-us/[supported hardware]
-| package:x11/nvidia-driver[]
-| link:https://www.nvidia.com/Download/driverResults.aspx/210651/en-us/[supported hardware]
+| package:x11/nvidia-driver-390[] or +
+package:x11/nvidia-secondary-driver-390[]
+| `nvidia-modeset`
+| link:https://www.nvidia.com/Download/driverResults.aspx/191122/en-us/[supported hardware]
+
+| package:x11/nvidia-driver-340[]
+| `nvidia`
+| link:https://www.nvidia.com/Download/driverResults.aspx/156167/en-us/[supported hardware]
+
+| package:x11/nvidia-driver-304[]
+| `nvidia`
+| link:https://www.nvidia.com/Download/driverResults.aspx/123712/en-us/[supported hardware]
|===
-[WARNING]
-====
-Version 304 of the NVIDIA(R) graphics driver (package:x11/nvidia-driver-304[]) does not support xorg-server 1.20 or later.
-====
+The latest NVIDIA(R) Graphics driver can be installed
+by running the following command:
+
+[source,shell]
+....
+# pkg install nvidia-drm-kmod
+....
+
+To enable the driver, add the module to
+[.filename]#/etc/rc.conf# file, by executing the following command:
+
+[source,shell]
+....
+# sysrc kld_list+=nvidia-drm
+....
-The latest NVIDIA(R) driver can be installed by running the following command:
+This is the direct rendering crossref:glossary[glossary-kms,KMS] driver.
+
+Kernel modesetting is the option to set the graphics mode in the kernel.
+Enable it for subsequent boots with the following man:loader.conf[5]
+tunable:
[source,shell]
....
-# pkg install nvidia-driver
+hw.nvidiadrm.modeset="1'
....
-Then add the module to `/etc/rc.conf` file, executing the following command:
+Both PRIME and crossref:wayland[wayland-synopsis,Wayland]
+require kernel modesetting.
+Prior versions of the driver do not support Direct Rendering.
+Instead use the modesetting module,
+by executing the following command:
[source,shell]
....
# sysrc kld_list+=nvidia-modeset
....
-[WARNING]
-====
-The `nvidia` driver must be used if the packages package:x11/nvidia-driver-304[] or package:x11/nvidia-driver-340[] have been installed.
+If requiring Nvidia drivers prior to 390,
+note that they do not support kernel modesetting,
+and thus they must be used with the legacy man:sc[4] console driver,
+and a package:x11/xorg-server[] version prior to 1.20.
+
+Enable them in [.filename]#/etc/rc.conf# with the following command:
[source,shell]
....
# sysrc kld_list+=nvidia
....
-====
-[[x-config]]
-== Xorg Configuration
+[[x-overview]]
+== X Window System Overview
-Xorg supports most common video cards, keyboards, and pointing devices.
+The X Window System is the heritage
+graphical stack for UNIX(R) platforms,
+supporting the latest technologies
+while maintaining support for generations of applications.
+Applications, including the components of the desktop,
+are hosted by the man:Xorg[1] server.
+This system is network aware and its various components
+can interoperate across networks.
-[WARNING]
-====
-Video cards, monitors, and input devices are automatically detected and do not require any manual configuration.
-Do not create [.filename]#xorg.conf# or run a `Xorg -configure` step unless automatic configuration fails.
-====
+[[x-install]]
+== Installing The X.org Server
-[[x-config-files]]
-=== Configuration Files
+_**abstract**: The package:x11/xorg[X.org] server
+must be installed to host the crossref:desktop[desktop-synopsis,desktop].
+Users must be added to the `video` group to use it._
+
+Once a graphics driver is installed and enabled,
+the X.org server can be installed as a meta-package,
+or compiled locally with the ports tree.
-Xorg looks in several directories for configuration files.
-[.filename]#/usr/local/etc/X11/# is the *recommended* directory for these files on FreeBSD.
-Using this directory helps keep application files separate from operating system files.
+The full meta-package can be installed quickly
+but with fewer options for customization:
-[[x-config-files-single-or-multi]]
-=== Single or Multiple Files
+[source,shell]
+....
+# pkg install xorg
+....
+
+This installation results in the complete X Window System
+being installed, including a traditional window manager, man:twm[1],
+and surrounding traditional desktop suite.
+Most users will want to install and configure a
+contemporary crossref:desktop[desktop-synopsis,desktop] of their choice.
+
+The current user must be a member of the `video` group
+to run a graphical environment.
+To add a user to the `video` group, execute the following command:
-It is easier to use multiple files that each configure a specific setting than the traditional single [.filename]#xorg.conf#.
-These files are stored in the [.filename]#/usr/local/etc/X11/xorg.conf.d/# subdirectory.
+[source,shell]
+....
+# pw groupmod video -m username
+....
+
+To run the X Window System, use man:startx[1] from package:x11/xinit[],
+or install and configure a display manager
+to start a graphical login on boot.
[TIP]
====
-The traditional single [.filename]#xorg.conf# still works, but is neither as clear nor as flexible as multiple files in the [.filename]#/usr/local/etc/X11/xorg.conf.d/# subdirectory.
+A smaller version of the X Window System suitable for experienced users
+is available in package:x11/xorg-minimal[].
+Most of the documents, libraries, and applications will not be installed.
+Some applications require these additional components to function.
====
-[[x-config-video-cards]]
-=== Video Cards
+[[x-config]]
+== X.org Configuration
+
+_**abstract**: If the defaults for your monitor or input devices,
+are not satisfactory,
+crossref:desktop[desktop-synopsis,desktops]
+include GUIs for configuring them, or they can be configured manually._
+
+The X.org server supports most common graphics processors, monitors,
+and input devices.
+First, try the defaults.
+This subsection provides an overview of their configuration.
+
+[[x-config-files]]
+=== X.org Configuration Files
+
+Historically, the X.org server was configured with files in
+[.filename]#/usr/local/etc/X11/#.
+This is still supported for edge cases,
+but conflicts with dynamic autoconfiguration.
+
+Do not create configuration for the X.org server in
+[.filename]#xorg.conf#
+or run `Xorg -configure` unless automatic configuration fails.
+
+X.org server looks in several directories for configuration files.
+[.filename]#/usr/local/etc/X11/# is the *recommended* directory
+for these files on FreeBSD.
+Using this directory helps keep application files separate from
+operating system files.
+
+It is easier to use multiple files that each configure a
+specific setting than the traditional single [.filename]#xorg.conf#.
+These files are stored in the
+[.filename]#/usr/local/etc/X11/xorg.conf.d/# subdirectory.
+
+[[x-config-gpu]]
+=== Graphics Configuration
+
+Direct rendering provides the ability to seamlessly
+use a discrete graphics processor (dGPU) alongside
+an integrated graphics processor (iGPU), called PRIME.
+The drivers will automatically offload intensive tasks to the dGPU
+when required, and power it down when able.
-The driver for the graphics card can be specified in the [.filename]#/usr/local/etc/X11/xorg.conf.d/# directory.
+To launch applications on the more powerful GPU in PRIME,
+use the `DRI_PRIME=1` enviroment variable.
+
+If multiple graphics drivers are conflicting,
+the driver for the graphics processor can be specified in the
+[.filename]#/usr/local/etc/X11/xorg.conf.d/# directory.
To configure the Intel(R) driver in a configuration file:
[[x-config-video-cards-file-intel]]
-.Select Intel(R) Video Driver in a File
+.Select Intel(R) Graphics Driver in a File
[example]
====
[.filename]#/usr/local/etc/X11/xorg.conf.d/20-intel.conf#
@@ -348,7 +472,7 @@ EndSection
To configure the AMD(R) driver in a configuration file:
[[x-config-video-cards-file-amd]]
-.Select AMD(R) Video Driver in a File
+.Select AMD(R) Graphics Driver in a File
[example]
====
[.filename]#/usr/local/etc/X11/xorg.conf.d/20-radeon.conf#
@@ -365,7 +489,7 @@ EndSection
To configure the NVIDIA(R) driver in a configuration file:
[[x-config-video-cards-file-nvidia]]
-.Select NVIDIA(R) Video Driver in a File
+.Select NVIDIA(R) Graphics Driver in a File
[example]
====
[.filename]#/usr/local/etc/X11/xorg.conf.d/20-nvidia.conf#
@@ -374,52 +498,53 @@ To configure the NVIDIA(R) driver in a configuration file:
....
Section "Device"
Identifier "Card0"
- Driver "nvidia"
+ Driver "nvidia-modeset"
EndSection
....
====
[TIP]
====
-package:x11/nvidia-xconfig[] can also be used to perform basic control over configuration options available in the NVIDIA driver.
+package:x11/nvidia-xconfig[] can also be used to perform basic control
+over configuration options available in the NVIDIA driver.
====
-To configure the VESA driver in a configuration file:
+To configure the SCFB driver in a configuration file:
-[[x-config-video-cards-file-vesa]]
-.Select VESA Video Driver in a File
+[[x-config-video-cards-file-sfcb]]
+.Select SCFB Graphics Driver in a File
[example]
====
-[.filename]#/usr/local/etc/X11/xorg.conf.d/20-vesa.conf#
+[.filename]#/usr/local/etc/X11/xorg.conf.d/20-scfb.conf#
[.programlisting]
....
Section "Device"
Identifier "Card0"
- Driver "vesa"
+ Driver "scfb"
EndSection
....
====
-To configure the SCFB driver in a configuration file:
+To configure the VESA driver in a configuration file:
-[[x-config-video-cards-file-sfcb]]
-.Select SCFB Video Driver in a File
+[[x-config-video-cards-file-vesa]]
+.Select VESA Graphics Driver in a File
[example]
====
-[.filename]#/usr/local/etc/X11/xorg.conf.d/20-scfb.conf#
+[.filename]#/usr/local/etc/X11/xorg.conf.d/20-vesa.conf#
[.programlisting]
....
Section "Device"
Identifier "Card0"
- Driver "scfb"
+ Driver "vesa"
EndSection
....
====
-To configure multiple video cards, the `BusID` can be added.
-A list of video card bus ``ID``s can be displayed by executing:
+To configure multiple graphics processors, the `BusID` can be added.
+A list of graphics processor bus ``ID``s can be displayed by executing:
[source,shell]
....
@@ -430,19 +555,19 @@ The output should be similar to the following:
[.programlisting]
....
-vgapci0@pci0:0:2:0: class=0x030000 rev=0x07 hdr=0x00 vendor=0x8086 device=0x2a42 subvendor=0x17aa subdevice=0x20e4
+vgapci0@pci0:0:2:0: class=0x030000 rev=0x0c hdr=0x00 vendor=0x8086 device=0x46a6 subvendor=0x1028 subdevice=0x0b29
vendor = 'Intel Corporation'
- device = 'Mobile 4 Series Chipset Integrated Graphics Controller'
+ device = 'Alder Lake-P GT2 [Iris Xe Graphics]'
class = display
--
-vgapci1@pci0:0:2:1: class=0x038000 rev=0x07 hdr=0x00 vendor=0x8086 device=0x2a43 subvendor=0x17aa subdevice=0x20e4
- vendor = 'Intel Corporation'
- device = 'Mobile 4 Series Chipset Integrated Graphics Controller'
+vgapci0@pci0:1:0:0: class=0x030200 rev=0xa1 hdr=0x00 vendor=0x10de device=0x25b9 subvendor=0x1028 subdevice=0x0b29
+ vendor = 'NVIDIA Corporation'
+ device = 'GA107GLM [RTX A1000 Laptop GPU]'
class = display
....
[[x-config-video-cards-file-multiple]]
-.Select Intel(R) Video Driver and NVIDIA(R) Video Driver in a File
+.Select Intel(R) Graphics Driver and NVIDIA(R) Graphics Driver in a File
[example]
====
@@ -457,26 +582,32 @@ Section "Device"
EndSection
Section "Device"
- Identifier "Card0"
- Driver "nvidia"
+ Identifier "Card1"
+ Driver "nvidia-modeset"
BusID "pci0:0:2:1"
EndSection
....
====
[[x-config-monitors]]
-=== Monitors
+=== Monitor Configuration
-Almost all monitors support the Extended Display Identification Data standard (`EDID`).
-Xorg uses `EDID` to communicate with the monitor and detect the supported resolutions and refresh rates.
-Then it selects the most appropriate combination of settings to use with that monitor.
+Almost all monitors support the Extended Display Identification Data
+standard (`EDID`).
+X.org uses `EDID` to communicate with the monitor
+and detect the supported resolutions and refresh rates.
+Then it selects the most appropriate combination of settings
+to use with that monitor.
-Other resolutions supported by the monitor can be chosen by setting the desired resolution in configuration files, or after the X server has been started with man:xrandr[1].
+Other resolutions supported by the monitor can be selected atomically
+after the X server has been started with man:xrandr[1],
+or in the X.org server configuration files.
[[x-config-monitors-xrandr]]
==== Using RandR (Resize and Rotate)
-Run man:xrandr[1] without any parameters to see a list of video outputs and detected monitor modes:
+Run man:xrandr[1] in an X session without any parameters
+to see a list of video outputs and detected monitor modes:
[source,shell]
....
@@ -517,9 +648,12 @@ DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
....
-This shows that the `VGA-1` output is being used to display a screen resolution of 1280x960 pixels at a refresh rate of about 60 Hz.
-The `LVDS-1` is being used as a secondary monitor to display a screen resolution of 1280x800 pixels at a refresh rate of about 60 Hz.
-Monitors are not attached to the `HDMI-1`, `HDMI-2`, `DP-1`, `DP-2` and `DP-3` connectors.
+This shows that the `VGA-1` output is being used to display
+a screen resolution of 1280x960 pixels at a refresh rate of about 60 Hz.
+The `LVDS-1` is being used as a secondary monitor to display
+a screen resolution of 1280x800 pixels at a refresh rate of about 60 Hz.
+Monitors are not attached to the `HDMI-1`, `HDMI-2`, `DP-1`, `DP-2`, and
+`DP-3` connectors.
Any of the other display modes can be selected with man:xrandr[1].
For example, to switch to 1280x1024 at 60 Hz:
@@ -529,8 +663,14 @@ For example, to switch to 1280x1024 at 60 Hz:
% xrandr --output LVDS-1 --mode 1280x720 --rate 60
....
-[[x-config-monitors-files]]
-==== Using the Xorg configuration file
+[TIP]
+====
+Oftentimes, a black screen upon starting X can be fixed
+by adding an `xrandr --auto` step to the initialization process.
+====
+
+[[x-config-monitors-file]]
+==== Using the X.org Configuration Files
The monitor configuration can also be set in a configuration file.
@@ -554,18 +694,80 @@ EndSection
====
[[x-config-input]]
-=== Input Devices
+=== Input Configuration
+
+The package:Xorg[X.org] server provides the package:x11/libinput[]
+library, a cross-platform effort to support all touch, pointing,
+and keyboard devices under a unified library.
+Unless specified otherwise, this is loaded automatically.
+
+Individual device settings for man:libinput[4] can be tuned in your
+crossref:desktop[desktop-synopsis,desktop's] GUI,
+or manually with package:x11/xinput[xinput]
+and package:x11/setxkbmap[setxkbmap].
+
+Alternatively, there are older, lightweight, individual drivers for
+specific input devices available in the package:x11-drivers[] catagory
+named x11/xf86-input-[foo].
+This approach requires manual configuration of the X.org server.
+Both are described in this subsection.
+
+[[x-config-input-atmoic]]
+==== Using Atomic Input Configuration
+
+Devices supported by man:libinput[4] can be configured
+with graphical utilities included with your
+crossref:desktop[desktop-synopsis,desktop] of choice,
+or manually and atomically at runtime with package:x11/xinput[]
+and package:x11/setxkbmap[].
+
+To ask man:libinput[4] what devices it's currently attached to,
+run man:xinput[1] with no arguments:
+
+[source,shell]
+....
+$ xinput
+....
+
+Its output should be similar to the following:
+
+[example]
+....
+
+⎡ Virtual core pointer id=2 [master pointer (3)]
+⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
+⎜ ↳ System mouse id=7 [slave pointer (2)]
+⎜ ↳ VEN_0488:00 0488:1031 Mouse id=11 [slave pointer (2)]
+⎜ ↳ VEN_0488:00 0488:1031 TouchPad id=12 [slave pointer (2)]
+⎣ Virtual core keyboard id=3 [master keyboard (2)]
+ ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
+ ↳ System keyboard multiplexer id=6 [slave keyboard (3)]
+ ↳ Power Button id=8 [slave keyboard (3)]
+ ↳ Sleep Button id=9 [slave keyboard (3)]
+ ↳ AT keyboard id=10 [slave keyboard (3)]
+....
+
+All settings supported by these devices are provided as properties,
+which can be listed and set atomically.
+Pointing devices have many configurable properties, keyboards usually need none.
+
+To customize your keyboard, take a look at man:setxkbmap[1].
+
+Once satisfied with your configuration, simply add the lines to your
+X initialization script such as [.filename]#~/.Xsession# or [.filename]#~/.xinitrc#.
+
+[[x-config-input-file]]
+==== Using X.org Configuration Files
-Xorg supports the vast majority of input devices via package:x11/libinput[].
[TIP]
====
-Some desktop environments (such as KDE Plasma) provide a graphical UI for setting these parameters.
+Some desktop environments (such as crossref:desktop[kde-environment,KDE Plasma]) provide a graphical UI for setting these parameters.
Check if this is the case before resorting to manual configuration editing.
====
[[x-config-input-keyboard-layout]]
-For example, to configure the keyboard layout:
+For example, to manually configure the X.org server for the keyboard layout:
.Setting a Keyboard Layout
[example]
@@ -586,53 +788,55 @@ EndSection
====
[[x-fonts]]
-== Using Fonts in Xorg
+== Using Fonts in the X Window System
-The default fonts that ship with Xorg are less than ideal for typical desktop publishing applications.
-Large presentation fonts show up jagged and unprofessional looking, and small fonts are almost completely unintelligible.
-However, there are several free, high quality Type1 (PostScript(R)) fonts available which can be readily used with Xorg.
+_**abstract**: Additional fonts can be installed from the
+package:x11-fonts[] category or placed in [.filename]#~/.fonts#.
+They are available immediately to modern applications.
+Configuration for older applications is available and described as well._
-[[type1]]
-=== Type1 Fonts
+The X Window System provides the X FreeType interface library
+(man:Xft[3]) to render vector or outline fonts,
+as well as the traditional X Logical Font Description system
+maintaining compatibility with generations of applications and fonts.
-The URW font collection (package:x11-fonts/urwfonts[]) includes high quality versions of standard type1 fonts (Times Roman(TM), Helvetica(TM), Palatino(TM) and others).
-The Freefonts collection (package:x11-fonts/freefonts[]) includes many more fonts, but most of them are intended for use in graphics software such as the Gimp, and are not complete enough to serve as screen fonts.
-In addition, Xorg can be configured to use TrueType(R) fonts with a minimum of effort.
-For more details on this, see the man:X[7] manual page or crossref:x11[truetype, TrueType(R) Fonts].
+There are primarily two types of fonts users will be interested in:
-To install the above Type1 font collections from binary packages, run the following commands:
+* OpenType fonts or TrueType(R) fonts are for displaying on a screen.
+* Adobe(R) PostScript(R) Type 1 fonts are for printing to paper.
-[source,shell]
-....
-# pkg install urwfonts
-....
+These are both vector or outline fonts, there are also bitmap fonts.
-And likewise with the freefont or other collections.
-To have the X server detect these fonts, add an appropriate line to the X server configuration file ([.filename]#/usr/local/etc/X11/xorg.conf.d/90-fonts.conf#), which reads:
+The FreeBSD Ports Collection includes a wide and growing catalog
+of free, high quality fonts available for installation
+in the package:x11-fonts[] catagory.
-[.programlisting]
-....
-Section "Files"
- FontPath "/usr/local/share/fonts/urwfonts/"
-EndSection
-....
+System-wide font packages installed from the ports collection
+live in `[.filename]#/usr/local/share/fonts/#`.
+Fonts for a single user can be placed in `[.filename]#~/.fonts/#`,
+or `[.filename]#~/.local/share/fonts/#`.
-Alternatively, at the command line in the X session run:
+Fonts in either directory or subdirectories will be available
+for immediate use when the font information cache is rebuilt.
+To trigger this manually, issue:
[source,shell]
....
-% xset fp+ /usr/local/share/fonts/urwfonts
-% xset fp rehash
+% fc-cache
....
-This will work but will be lost when the X session is closed, unless it is added to the startup file ([.filename]#~/.xinitrc# for a normal `startx` session, or [.filename]#~/.xsession# when logging in through a graphical login manager like XDM).
-A third way is to use the new [.filename]#/usr/local/etc/fonts/local.conf# as
-demonstrated in crossref:x11[antialias, Anti-Aliased Fonts].
+Plenty of free, high quality fonts of both types are available in the
+ports tree which can be readily used with X Window System.
+This chapter provides a brief overview of both,
+as well as configuring the X FreeType interface.
+
+For more information about how to install and configure fonts on FreeBSD,
+please read the article link:{fonts}[Fonts and FreeBSD].
[[truetype]]
=== TrueType(R) Fonts
-Xorg has built in support for rendering TrueType(R) fonts.
+X.org has built in support for rendering TrueType(R) fonts.
There are two different modules that can enable this functionality.
The freetype module is used in this example because it is more consistent with the other font rendering back-ends.
To enable the freetype module just add the following line to the `"Module"` section of [.filename]#/usr/local/etc/X11/xorg.conf.d/90-fonts.conf#.
@@ -643,7 +847,7 @@ Load "freetype"
....
Now make a directory for the TrueType(R) fonts (for example, [.filename]#/usr/local/share/fonts/TrueType#) and copy all of the TrueType(R) fonts into this directory.
-Keep in mind that TrueType(R) fonts cannot be directly taken from an Apple(R) Mac(R); they must be in UNIX(R)/MS-DOS(R)/Windows(R) format for use by Xorg.
+Keep in mind that TrueType(R) fonts cannot be directly taken from an Apple(R) Mac(R); they must be in UNIX(R)/MS-DOS(R)/Windows(R) format for use by X.org.
Once the files have been copied into this directory, use mkfontscale to create a [.filename]#fonts.dir#, so that the X font renderer knows that these new files have been installed.
`mkfontscale` can be installed as a package:
@@ -661,7 +865,7 @@ Then create an index of X font files in a directory:
....
Now add the TrueType(R) directory to the font path.
-This is just the same as described in crossref:x11[type1, Type1 Fonts]:
+This is just the same as described in <<type1>>:
[source,shell]
....
@@ -674,10 +878,45 @@ or add a `FontPath` line to [.filename]#xorg.conf#.
Now Gimp, LibreOffice, and all of the other X applications should now recognize the installed TrueType(R) fonts.
Extremely small fonts (as with text in a high resolution display on a web page) and extremely large fonts (within LibreOffice) will look much better now.
+[[type1]]
+=== Type1 Fonts
+
+The URW font collection (package:x11-fonts/urwfonts[]) includes high quality versions of standard type1 fonts (Times Roman(TM), Helvetica(TM), Palatino(TM) and others).
+The Freefonts collection (package:x11-fonts/freefonts[]) includes many more fonts, but most of them are intended for use in graphics software such as the Gimp, and are not complete enough to serve as screen fonts.
+
+To install the above Type1 font collections from binary packages, run the following commands:
+
+[source,shell]
+....
+# pkg install urwfonts
+....
+
+And likewise with the freefont or other collections.
+To have a manually configured X server detect these fonts, add an appropriate line to the X server configuration file ([.filename]#/usr/local/etc/X11/xorg.conf.d/90-fonts.conf#), which reads:
+
+[.programlisting]
+....
+Section "Files"
+ FontPath "/usr/local/share/fonts/urwfonts/"
+EndSection
+....
+
+Alternatively, at the command line in the X session run:
+
+[source,shell]
+....
+% xset fp+ /usr/local/share/fonts/urwfonts
+% xset fp rehash
+....
+
+This will work but will be lost when the X session is closed, unless it is added to the startup file ([.filename]#~/.xinitrc# for a normal `startx` session, or [.filename]#~/.xsession# when logging in through a graphical login manager like XDM).
+A third way is to use the new [.filename]#/usr/local/etc/fonts/local.conf# as demonstrated in <<antialias>>.
+
[[antialias]]
=== Anti-Aliased Fonts
-All fonts in Xorg that are found in [.filename]#/usr/local/share/fonts/# and [.filename]#~/.fonts/# are automatically made available for anti-aliasing to Xft-aware applications. Most recent applications are Xft-aware, including KDE, GNOME, and Firefox.
+All fonts in X.org that are found in [.filename]#/usr/local/share/fonts/# and [.filename]#~/.fonts/# are automatically made available for anti-aliasing to Xft-aware applications.
+Most recent applications are Xft-aware, including KDE, GNOME, and Firefox.
To control which fonts are anti-aliased, or to configure anti-aliasing properties, create (or edit, if it already exists) the file [.filename]#/usr/local/etc/fonts/local.conf#.
Several advanced features of the Xft font system can be tuned using this file; this section describes only some simple possibilities.
@@ -814,5 +1053,3 @@ To enable this, add the line somewhere in [.filename]#local.conf#:
====
Depending on the sort of display, `rgb` may need to be changed to `bgr`, `vrgb` or `vbgr`: experiment and see which works best.
====
-
-For more information about how to install and configure fonts on FreeBSD, please read the article link:{fonts}[Fonts and FreeBSD].
diff --git a/documentation/content/en/books/porters-handbook/versions/_index.adoc b/documentation/content/en/books/porters-handbook/versions/_index.adoc
index 88146faf79..f7aeec0525 100644
--- a/documentation/content/en/books/porters-handbook/versions/_index.adoc
+++ b/documentation/content/en/books/porters-handbook/versions/_index.adoc
@@ -770,6 +770,11 @@ Here is a convenient list of `__FreeBSD_version` values as defined in https://cg
|April 18, 2025
|14.2-STABLE after changing alloc changes to LinuxKPI and removing iwlwifi firmware.
+|1403503
+|gitref:6cdcf08c9c5eda6dc3b8395cefd9d30a4f5e2f1a[repository="src",length=12]
+|July 13, 2025
+|14.3-STABLE after LinuxKPI dma-mapping.h and acpi changes.
+
|===
////
diff --git a/documentation/content/nl/articles/_index.po b/documentation/content/nl/articles/_index.po
index 50b3c66dda..2a3fb5fa6a 100644
--- a/documentation/content/nl/articles/_index.po
+++ b/documentation/content/nl/articles/_index.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2022-01-08 11:34-0300\n"
-"PO-Revision-Date: 2025-06-24 20:10+0000\n"
+"PO-Revision-Date: 2025-06-26 04:45+0000\n"
"Last-Translator: René Ladan <rene0@freedom.nl>\n"
"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
"documentation/articles_index/nl_NL/>\n"
@@ -27,4 +27,4 @@ msgstr "Artikelen"
#. type: Plain text
#: documentation/content/en/articles/_index.adoc:8
msgid "{{< list-articles-directories >}}"
-msgstr "{{< list-articles-directories >}"
+msgstr "{{< list-articles-directories >}}"
diff --git a/documentation/content/nl/books/handbook/_index.adoc b/documentation/content/nl/books/handbook/_index.adoc
index f90c71e3e9..2788668a0d 100644
--- a/documentation/content/nl/books/handbook/_index.adoc
+++ b/documentation/content/nl/books/handbook/_index.adoc
@@ -1,17 +1,22 @@
---
-title: FreeBSD handboek
+add_single_page_link: 'true'
authors:
- - author: The FreeBSD Dutch Documentation Project
-copyright: 1995-2020 The FreeBSD Dutch Documentation Project
-trademarks: ["freebsd", "ibm", "ieee", "redhat", "3com", "adobe", "apple", "intel", "linux", "microsoft", "opengroup", "sun", "realnetworks", "oracle", "3ware", "arm", "adaptec", "heidelberger", "intuit", "lsilogic", "themathworks", "thomson", "vmware", "wolframresearch", "xiph", "xfree86", "general"]
+ -
+ author: 'The FreeBSD Documentation Project'
+bookOrder: 1
+copyright: '1995-2025 The FreeBSD Documentation Project'
+description: 'Een uitgebreide, zich voortdurend ontwikkelende bron voor FreeBSD-gebruikers'
next: books/handbook/preface
-showBookMenu: true
-weight: 0
params:
- path: "/books/handbook/"
+ path: /books/handbook/
+showBookMenu: 'true'
+tags: ["FreeBSD Handbook", "Handbook"]
+title: 'FreeBSD Handboek'
+trademarks: ["freebsd", "ibm", "ieee", "redhat", "3com", "adobe", "apple", "intel", "linux", "microsoft", "opengroup", "sun", "realnetworks", "oracle", "3ware", "arm", "adaptec", "google", "heidelberger", "intuit", "lsilogic", "themathworks", "thomson", "vmware", "wolframresearch", "xiph", "xfree86", "general"]
+weight: 0
---
-= FreeBSD handboek
+= FreeBSD Handboek
:doctype: book
:toc: macro
:toclevels: 1
@@ -32,19 +37,19 @@ include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
+:chapters-path: content/{{% lang %}}/books/handbook/
endif::[]
ifdef::backend-pdf,backend-epub3[]
+:chapters-path:
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]
ifndef::env-beastie[]
+:chapters-path:
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
-[.abstract-title]
-Samenvatting
-
-Welkom bij FreeBSD! Dit handboek behandelt de installatie en het dagelijks gebruik van _FreeBSD {rel112-current}-RELEASE_ en _FreeBSD {rel120-current}-RELEASE_. Aan deze handleiding wordt nog gewerkt, en is het resultaat van het werk van veel mensen. Veel hoofdstukken of paragrafen bestaan nog niet en wat bestaat dient soms nog bijgewerkt te worden. Als de lezer mee wil helpen aan dit project kan een mail gestuurd worden naar de {freebsd-doc}. De meest recente versie van dit document is te vinden op de http://www.FreeBSD.org/[FreeBSD website]. Eerdere versies van dit handboek zijn te vinden op http://docs.FreeBSD.org/doc/[http://docs.FreeBSD.org/doc/]. Het kan ook gedownload worden in veel verschillende formaten en compressiewijzen van de link:ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/[FreeBSD FTP server] of een van de vele <<mirrors-ftp,mirrorsites>>. Een gedrukt exemplaar van het handboek is te koop bij de http://www.freebsdmall.com/[FreeBSD Mall] (Engels). Het handboek kan ook link:https://www.FreeBSD.org/search/[doorzocht worden].
+include::{chapters-path}introduction.adoc[]
'''
diff --git a/documentation/content/nl/books/handbook/_index.po b/documentation/content/nl/books/handbook/_index.po
new file mode 100644
index 0000000000..36a95807bf
--- /dev/null
+++ b/documentation/content/nl/books/handbook/_index.po
@@ -0,0 +1,38 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# René Ladan <rene0@freedom.nl>, 2025.
+# Tammo-Jan Kamminga <tammo-jan@freezzz.eu>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
+"PO-Revision-Date: 2025-07-02 04:45+0000\n"
+"Last-Translator: Tammo-Jan Kamminga <tammo-jan@freezzz.eu>\n"
+"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
+"documentation/bookshandbook_index/nl_NL/>\n"
+"Language: nl_NL\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: YAML Front Matter: description
+#: documentation/content/en/books/handbook/_index.adoc:1
+#, no-wrap
+msgid "A constantly evolving, comprehensive resource for FreeBSD users"
+msgstr ""
+"Een uitgebreide, zich voortdurend ontwikkelende bron voor FreeBSD-gebruikers"
+
+#. type: Title =
+#: documentation/content/en/books/handbook/_index.adoc:1
+#: documentation/content/en/books/handbook/_index.adoc:18
+#, no-wrap
+msgid "FreeBSD Handbook"
+msgstr "FreeBSD Handboek"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/_index.adoc:54
+msgid "'''"
+msgstr "'''"
diff --git a/documentation/content/nl/books/handbook/book.adoc b/documentation/content/nl/books/handbook/book.adoc
index 52920c607a..27ec8a7433 100644
--- a/documentation/content/nl/books/handbook/book.adoc
+++ b/documentation/content/nl/books/handbook/book.adoc
@@ -1,12 +1,16 @@
---
-title: FreeBSD handboek
+add_split_page_link: 'true'
authors:
- - author: The FreeBSD Dutch Documentation Project
-copyright: 1995-2020 The FreeBSD Dutch Documentation Project
-trademarks: ["freebsd", "ibm", "ieee", "redhat", "3com", "adobe", "apple", "intel", "linux", "microsoft", "opengroup", "sun", "realnetworks", "oracle", "3ware", "arm", "adaptec", "heidelberger", "intuit", "lsilogic", "themathworks", "thomson", "vmware", "wolframresearch", "xiph", "xfree86", "general"]
+ -
+ author: 'The FreeBSD Documentation Project'
+copyright: '1995-2025 The FreeBSD Documentation Project'
+description: 'Een uitgebreide, zich voortdurend ontwikkelende bron voor FreeBSD-gebruikers'
+tags: ["FreeBSD Handbook", "Handbook"]
+title: 'FreeBSD Handboek'
+trademarks: ["freebsd", "ibm", "ieee", "redhat", "3com", "adobe", "apple", "intel", "linux", "microsoft", "opengroup", "sun", "realnetworks", "oracle", "3ware", "arm", "adaptec", "google", "heidelberger", "intuit", "lsilogic", "themathworks", "thomson", "vmware", "wolframresearch", "xiph", "xfree86", "general"]
---
-= FreeBSD handboek
+= FreeBSD Handboek
:doctype: book
:toc: macro
:toclevels: 2
@@ -42,11 +46,7 @@ ifndef::env-beastie[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
-[.abstract-title]
-[abstract]
-Samenvatting
-
-Welkom bij FreeBSD! Dit handboek behandelt de installatie en het dagelijks gebruik van _FreeBSD {rel112-current}-RELEASE_ en _FreeBSD {rel120-current}-RELEASE_. Aan deze handleiding wordt nog gewerkt, en is het resultaat van het werk van veel mensen. Veel hoofdstukken of paragrafen bestaan nog niet en wat bestaat dient soms nog bijgewerkt te worden. Als de lezer mee wil helpen aan dit project kan een mail gestuurd worden naar de {freebsd-doc}. De meest recente versie van dit document is te vinden op de http://www.FreeBSD.org/[FreeBSD website]. Eerdere versies van dit handboek zijn te vinden op http://docs.FreeBSD.org/doc/[http://docs.FreeBSD.org/doc/]. Het kan ook gedownload worden in veel verschillende formaten en compressiewijzen van de link:ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/[FreeBSD FTP server] of een van de vele <<mirrors-ftp,mirrorsites>>. Een gedrukt exemplaar van het handboek is te koop bij de http://www.freebsdmall.com/[FreeBSD Mall] (Engels). Het handboek kan ook link:https://www.FreeBSD.org/search/[ doorzocht worden].
+include::{chapters-path}introduction.adoc[]
'''
@@ -63,8 +63,6 @@ include::{chapters-path}parti.adoc[]
include::{chapters-path}introduction/_index.adoc[leveloffset=+1]
-include::{chapters-path}install/_index.adoc[leveloffset=+1]
-
include::{chapters-path}bsdinstall/_index.adoc[leveloffset=+1]
include::{chapters-path}basics/_index.adoc[leveloffset=+1]
@@ -73,6 +71,10 @@ include::{chapters-path}ports/_index.adoc[leveloffset=+1]
include::{chapters-path}x11/_index.adoc[leveloffset=+1]
+include::{chapters-path}wayland/_index.adoc[leveloffset=+1]
+
+include::{chapters-path}network/_index.adoc[leveloffset=+1]
+
// Section two
include::{chapters-path}partii.adoc[]
@@ -86,6 +88,8 @@ include::{chapters-path}printing/_index.adoc[leveloffset=+1]
include::{chapters-path}linuxemu/_index.adoc[leveloffset=+1]
+include::{chapters-path}wine/_index.adoc[leveloffset=+1]
+
// Section three
include::{chapters-path}partiii.adoc[]
@@ -93,8 +97,6 @@ include::{chapters-path}config/_index.adoc[leveloffset=+1]
include::{chapters-path}boot/_index.adoc[leveloffset=+1]
-include::{chapters-path}users/_index.adoc[leveloffset=+1]
-
include::{chapters-path}security/_index.adoc[leveloffset=+1]
include::{chapters-path}jails/_index.adoc[leveloffset=+1]
@@ -107,6 +109,8 @@ include::{chapters-path}disks/_index.adoc[leveloffset=+1]
include::{chapters-path}geom/_index.adoc[leveloffset=+1]
+include::{chapters-path}zfs/_index.adoc[leveloffset=+1]
+
include::{chapters-path}filesystems/_index.adoc[leveloffset=+1]
include::{chapters-path}virtualization/_index.adoc[leveloffset=+1]
@@ -117,6 +121,8 @@ include::{chapters-path}cutting-edge/_index.adoc[leveloffset=+1]
include::{chapters-path}dtrace/_index.adoc[leveloffset=+1]
+include::{chapters-path}usb-device-mode/_index.adoc[leveloffset=+1]
+
// Section four
include::{chapters-path}partiv.adoc[]
@@ -145,4 +151,8 @@ include::{chapters-path}eresources/_index.adoc[leveloffset=+1]
include::{chapters-path}pgpkeys/_index.adoc[leveloffset=+1]
+include::{chapters-path}glossary.adoc[leveloffset=+1]
+
+include::{chapters-path}colophon.adoc[leveloffset=+1]
+
:sectnums:
diff --git a/documentation/content/nl/books/handbook/book.po b/documentation/content/nl/books/handbook/book.po
new file mode 100644
index 0000000000..5b860587a4
--- /dev/null
+++ b/documentation/content/nl/books/handbook/book.po
@@ -0,0 +1,38 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# René Ladan <rene0@freedom.nl>, 2025.
+# Tammo-Jan Kamminga <tammo-jan@freezzz.eu>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2022-07-07 23:22-0300\n"
+"PO-Revision-Date: 2025-07-02 04:45+0000\n"
+"Last-Translator: Tammo-Jan Kamminga <tammo-jan@freezzz.eu>\n"
+"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
+"documentation/bookshandbookbook/nl_NL/>\n"
+"Language: nl_NL\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: YAML Front Matter: description
+#: documentation/content/en/books/handbook/book.adoc:1
+#, no-wrap
+msgid "A constantly evolving, comprehensive resource for FreeBSD users"
+msgstr ""
+"Een uitgebreide, zich voortdurend ontwikkelende bron voor FreeBSD-gebruikers"
+
+#. type: Title =
+#: documentation/content/en/books/handbook/book.adoc:1
+#: documentation/content/en/books/handbook/book.adoc:12
+#, no-wrap
+msgid "FreeBSD Handbook"
+msgstr "FreeBSD Handboek"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/book.adoc:51
+msgid "'''"
+msgstr "'''"
diff --git a/documentation/content/nl/books/handbook/colophon.adoc b/documentation/content/nl/books/handbook/colophon.adoc
new file mode 100644
index 0000000000..08420981f6
--- /dev/null
+++ b/documentation/content/nl/books/handbook/colophon.adoc
@@ -0,0 +1,48 @@
+---
+description: 'FreeBSD Handboek Colofon'
+params:
+ path: /books/handbook/colophon/
+prev: books/handbook/glossary
+showBookMenu: 'true'
+title: Colofon
+weight: 46
+---
+
+[colophon]
+[[colophon]]
+= Colofon
+:doctype: book
+:toc: macro
+:toclevels: 1
+:icons: font
+:!sectnums:
+:partnums:
+:source-highlighter: rouge
+:experimental:
+:images-path: books/handbook/colophon/
+
+ifdef::env-beastie[]
+ifdef::backend-html5[]
+:imagesdir: ../../../../images/{images-path}
+endif::[]
+ifndef::book[]
+include::shared/authors.adoc[]
+include::shared/mirrors.adoc[]
+include::shared/releases.adoc[]
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+toc::[]
+endif::[]
+ifdef::backend-pdf,backend-epub3[]
+include::../../../../../shared/asciidoctor.adoc[]
+endif::[]
+endif::[]
+
+ifndef::env-beastie[]
+toc::[]
+include::../../../../../shared/asciidoctor.adoc[]
+endif::[]
+
+Dit boek is het gezamenlijke werk van honderden vrijwilligers aan het "FreeBSD Documentatie Project". De tekst is opgesteld in AsciiDoc.
diff --git a/documentation/content/nl/books/handbook/colophon.po b/documentation/content/nl/books/handbook/colophon.po
new file mode 100644
index 0000000000..13e6ea72dc
--- /dev/null
+++ b/documentation/content/nl/books/handbook/colophon.po
@@ -0,0 +1,40 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Tammo-Jan Kamminga <tammo-jan@freezzz.eu>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
+"PO-Revision-Date: 2025-07-05 04:45+0000\n"
+"Last-Translator: Tammo-Jan Kamminga <tammo-jan@freezzz.eu>\n"
+"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
+"documentation/bookshandbookcolophon/nl_NL/>\n"
+"Language: nl_NL\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: YAML Front Matter: description
+#: documentation/content/en/books/handbook/colophon.adoc:1
+#, no-wrap
+msgid "FreeBSD Handbook Colophon"
+msgstr "FreeBSD Handboek Colofon"
+
+#. type: Title =
+#: documentation/content/en/books/handbook/colophon.adoc:1
+#: documentation/content/en/books/handbook/colophon.adoc:13
+#, no-wrap
+msgid "Colophon"
+msgstr "Colofon"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/colophon.adoc:49
+msgid ""
+"This book is the combined work of hundreds of contributors to \"The FreeBSD "
+"Documentation Project\". The text is authored in AsciiDoc."
+msgstr ""
+"Dit boek is het gezamenlijke werk van honderden vrijwilligers aan het "
+"\"FreeBSD Documentatie Project\". De tekst is opgesteld in AsciiDoc."
diff --git a/documentation/content/nl/books/handbook/partiv.adoc b/documentation/content/nl/books/handbook/partiv.adoc
index faf8c5f1c6..a15b0d2d74 100644
--- a/documentation/content/nl/books/handbook/partiv.adoc
+++ b/documentation/content/nl/books/handbook/partiv.adoc
@@ -1,23 +1,23 @@
---
-title: Deel IV. Netwerkcommunicatie
-prev: books/handbook/usb-device-mode
next: books/handbook/serialcomms
-showBookMenu: true
-weight: 30
params:
- path: "/books/handbook/partiv/"
+ path: /books/handbook/partiv/
+prev: books/handbook/usb-device-mode
+showBookMenu: 'true'
+title: 'Deel IV. Netwerkcommunicatie'
+weight: 33
---
[[network-communication]]
= Netwerkcommunicatie
-Als het om servers gaat die hoge prestaties moeten leveren, wordt wereldwijd vaak FreeBSD toegepast. De hoofdstukken in dit deel behandelen:
+FreeBSD is een van de meest gebruikte besturingssystemen voor hoogwaardige, snelle netwerkservers. De hoofdstukken in dit deel behandelen:
-* Seriëe communicatie;
-* PPP en PPP over Ethernet;
-* E-mail;
-* Netwerkdiensten;
-* Firewalls;
-* Overig gevorderd netwerken.
+* Seriële communicatie
+* PPP en PPP over Ethernet
+* E-mail
+* Netwerkdiensten
+* Firewalls
+* Andere geavanceerde netwerkonderwerpen
-Deze hoofdstukken zijn geschreven om gelezen te worden als de informatie nodig is. Ze hoeven niet allemaal in een bepaalde volgorde gelezen te worden. Ze hoeven ook niet allemaal gelezen te worden om FreeBSD in een netwerkomgeving in te zetten.
+Deze hoofdstukken kunnen worden gelezen als naslagwerk. Ze kunnen in willekeurige volgorde worden gelezen en niet alle hoofdstukken hoeven gelezen te worden om FreeBSD te kunnen gaan gebruiken in een netwerkomgeving.
diff --git a/documentation/content/nl/books/handbook/partiv.po b/documentation/content/nl/books/handbook/partiv.po
new file mode 100644
index 0000000000..b563e41840
--- /dev/null
+++ b/documentation/content/nl/books/handbook/partiv.po
@@ -0,0 +1,80 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Tammo-Jan Kamminga <tammo-jan@freezzz.eu>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
+"PO-Revision-Date: 2025-07-03 04:45+0000\n"
+"Last-Translator: Tammo-Jan Kamminga <tammo-jan@freezzz.eu>\n"
+"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
+"documentation/bookshandbookpartiv/nl_NL/>\n"
+"Language: nl_NL\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: YAML Front Matter: title
+#: documentation/content/en/books/handbook/partiv.adoc:1
+#, no-wrap
+msgid "Part IV. Network Communication"
+msgstr "Deel IV. Netwerkcommunicatie"
+
+#. type: Title =
+#: documentation/content/en/books/handbook/partiv.adoc:12
+#, no-wrap
+msgid "Network Communication"
+msgstr "Netwerkcommunicatie"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:16
+msgid ""
+"FreeBSD is one of the most widely deployed operating systems for high "
+"performance network servers. The chapters in this part cover:"
+msgstr ""
+"FreeBSD is een van de meest gebruikte besturingssystemen voor hoogwaardige, "
+"snelle netwerkservers. De hoofdstukken in dit deel behandelen:"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:18
+msgid "Serial communication"
+msgstr "Seriële communicatie"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:19
+msgid "`PPP` and `PPP` over Ethernet"
+msgstr "PPP en PPP over Ethernet"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:20
+msgid "Electronic Mail"
+msgstr "E-mail"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:21
+msgid "Running Network Servers"
+msgstr "Netwerkdiensten"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:22
+msgid "Firewalls"
+msgstr "Firewalls"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:23
+msgid "Other Advanced Networking Topics"
+msgstr "Andere geavanceerde netwerkonderwerpen"
+
+#. type: Plain text
+#: documentation/content/en/books/handbook/partiv.adoc:25
+msgid ""
+"These chapters are designed to be read when the information is needed. They "
+"do not need to be read in any particular order, nor is it necessary to read "
+"all of them before using FreeBSD in a network environment."
+msgstr ""
+"Deze hoofdstukken kunnen worden gelezen als naslagwerk. Ze kunnen in "
+"willekeurige volgorde worden gelezen en niet alle hoofdstukken hoeven "
+"gelezen te worden om FreeBSD te kunnen gaan gebruiken in een netwerkomgeving."
diff --git a/documentation/content/nl/books/handbook/partv.adoc b/documentation/content/nl/books/handbook/partv.adoc
index 1d00966fe0..f40da603dc 100644
--- a/documentation/content/nl/books/handbook/partv.adoc
+++ b/documentation/content/nl/books/handbook/partv.adoc
@@ -1,12 +1,12 @@
---
-title: Deel V. Appendix
-prev: books/handbook/advanced-networking
next: books/handbook/mirrors
-showBookMenu: true
-weight: 37
params:
- path: "/books/handbook/partv/"
+ path: /books/handbook/partv/
+prev: books/handbook/advanced-networking
+showBookMenu: 'true'
+title: 'Deel V. Bijlagen'
+weight: 40
---
[[appendices]]
-= Appendix
+= Bijlagen
diff --git a/documentation/content/nl/books/handbook/partv.po b/documentation/content/nl/books/handbook/partv.po
new file mode 100644
index 0000000000..bc17ef7376
--- /dev/null
+++ b/documentation/content/nl/books/handbook/partv.po
@@ -0,0 +1,30 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Tammo-Jan Kamminga <tammo-jan@freezzz.eu>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
+"PO-Revision-Date: 2025-07-02 04:45+0000\n"
+"Last-Translator: Tammo-Jan Kamminga <tammo-jan@freezzz.eu>\n"
+"Language-Team: Dutch <https://translate-dev.freebsd.org/projects/"
+"documentation/bookshandbookpartv/nl_NL/>\n"
+"Language: nl_NL\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: YAML Front Matter: title
+#: documentation/content/en/books/handbook/partv.adoc:1
+#, no-wrap
+msgid "Part V. Appendices"
+msgstr "Deel V. Bijlagen"
+
+#. type: Title =
+#: documentation/content/en/books/handbook/partv.adoc:12
+#, no-wrap
+msgid "Appendices "
+msgstr "Bijlagen "
diff --git a/documentation/static/pgpkeys/imp.key b/documentation/static/pgpkeys/imp.key
index f0ec76f1a9..0f83721ace 100644
--- a/documentation/static/pgpkeys/imp.key
+++ b/documentation/static/pgpkeys/imp.key
@@ -2,20 +2,21 @@
[.literal-block-margin]
....
-pub rsa4096/6C1CD1287DB01100 2014-04-28 [SC] [expires: 2024-01-30]
+pub rsa4096/6C1CD1287DB01100 2014-04-28 [SC] [expires: 2035-07-16]
Key fingerprint = 2035 F894 B00A A3CF 7CCD E1B7 6C1C D128 7DB0 1100
uid Warner Losh <wlosh@netflix.com>
+uid Warner Losh <wlosh@bsdimp.com>
uid Warner Losh <imp@village.org>
uid Warner Losh <imp@freebsd.org>
uid Warner Losh <imp@bsdimp.com>
-uid Warner Losh <wlosh@bsdimp.com>
-sub rsa4096/D17B99703EC6E9C0 2014-04-28 [E] [expires: 2024-01-30]
+sub rsa4096/D17B99703EC6E9C0 2014-04-28 [E] [expires: 2035-07-16]
....
[.literal-block-margin]
....
-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - https://gpgtools.org
mQINBFNeyu8BEADtftcDTzE/bAyEGBP7v1kz0zOFy0f43IWiyP/JTqoo+xEzOfid
H+tIntn8Nm5XwQmpMzwsBO4jBshkCmcxiTuoiqRU0oLDs7WCForV++LQuFsl+YfQ
@@ -28,235 +29,199 @@ UPf4bJZMmZEOG8r9DGzaPinByb3OXqzSuEftfMel9JEuy0iiwhuEMidALugctnVQ
/YyAwNnl/1asqz3peHqqEt4V9odttajW7+C/3X1rTAl8WThuUBVCc0g1tDZbSDkt
+qXefspVhUxAbnSsVaF9NBW28FeXRf8QnEM1ZDxfwrx+cwTtWBPPAIrTrP/1qWO8
CN//Qvu5zS3UrcTw7A4P29Q84SNv+7DJDjY8De4J0inRXA7Zc4EUK9Tu7QARAQAB
-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
+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
@@ -267,32 +232,19 @@ HmoJmf3Ze9GJC5+GiekbUd/NAKaHhdYA+3UCt1ibH4rNJ5WGnpDCHjw7WpToBfhd
KTMOd0u6pZnFRp03D7RNDP08crtRvSjgEfIYbdoFuAb7cLYJw8SzmynE2MEAwXU3
kSrWzn4/sjBVdJgw3oZFufba80zkpy7TsG24mNMvuR7loKmd4cKB6VhhUQsGCcM3
1lAd5UjhlT2as9KyS2oZU2kxh8e1TPHTYB21edimK1afu3JxMpqoufFmxISaaonY
-cGNircT/NY9gmlsO3WSx4vtegNa6twARAQABiQIlBBgBCgAPBQJTXsrvAhsMBQkH
-hh+AAAoJEGwc0Sh9sBEATYEQAMGxfT+kW3ks7/6we4sCbz8cohHgjGOj1I9EV+WW
-L3cjpwH2ZlgiUj/mbqA4WtK7TfNSuw4IAMP3WjJvNZCdx/82L4k4zD0I4ozZX8+N
-386SCsvFfxZ1SpTf5teoL+T+9/JLL1IrN19no1u9ulY3Gf1afC/AKm2BSPFYNScx
-ZzeIrFwSNBLxzGqk2d1xzM/yAf9vzBmx3HVDmu6gg5K0ypHs9iKUTf7K8ackdqN/
-neO14qT7SE0X2dHc1ikK9zcS45PKyVtRfkJ6nH5+YzjMUZBYiHC+UNrfSnnx/aT4
-SiUgtYluE4zf9i3DTGvp5HnD3NZ6JPM2g56XIwclvAK474vOotiD3Ck6tCrDhLcF
-FDpS/pCVcgQEj+7Be1O1rMoenlaDD93lT/swudd5pNijCRhoLvFjg2Mzf6dIW/+R
-bIsVvtPc8VAJD9cMrWXJMCKbwguj2wlQWBiO13HAUncQRqJ+oS9FvgyIHpkcM/tj
-SqEGmvQkr7u5798VY5Y0Cz/5Ot2EToslVSRud3amqcfvDKlFMFBx836jnPs0sh5P
-TXSs4YlAojn/k3mE6OHOQNYPROqwsYADbW3R8NNabIT53SP4L+7g+12bmZAQLy/P
-NpIE+LTOUPS6ipUd6fO295OIzCRUiLTbdJItq3qCI+XR5uz1MvusmSBSPmOl2AcK
-Lt7miQI8BBgBCgAmAhsMFiEEIDX4lLAKo898zeG3bBzRKH2wEQAFAlxTMxcFCRJa
-aagACgkQbBzRKH2wEQBtFxAA6qiHAn9dayW858r1aFx55A0TjQopbUXRN7JD2EB9
-SvkAI0Vqn4k/GfSWkpW8tmGRGXVhRTBpglU1xX43lvyMG/9dpzEWEmXYfUM37oaw
-vMS2mUUpGCgoRSsb4c3RQFvQxW5xVgSjYIX0nrH3GBML0n+8K2bv2I3+NOZ9MDwe
-Q5hF2TcCNEVhx/dYTtIJXzVCV6GdKTJZi3OLnslRHxIKzyFY3gzhmFgZ6hFpo3s1
-mM9u7LepuSvaomGDk7p2WPZxkr1OxJpfllB2SiHG5q65xNRE+wgt/0/2mLRpCE1B
-TcuHkC/BPBlN2o+t9GA7wPUxPD4Wc847W74B8zgaSxrFnySs+yfztBG2TPaVAg8+
-3R0OagXPlk7eueMXIhPDf0VgEQlJLso6OWeMJNF1SEuogc/yBUjtcTTDxBpYtPZq
-cpZ3/ZbynfJQAyoQY6+naGULg5oXRPZIplStcSNSuI1QqoaYAquRALVdySb3F8IE
-wQIZZuRuPQKQVBXcSZwV0TBM7yJfHph0sfn2Z71PjklROJo8IxmrrX4JAzYoLTSw
-7EM/RftyBx3YsY8K0yjrHtcoV4qpJmXgnKZzaiawBBGwpyJy6yRAN8dwwzFfRbcs
-ZaP9h8aXwLumpNMeevGhqu9WhyMeW9Cz6hgbYB9C9W6ZoXd+ANKldTlggirm+SLT
-4Iw=
-=ZiKb
+cGNircT/NY9gmlsO3WSx4vtegNa6twARAQABiQI8BBgBCgAmAhsMFiEEIDX4lLAK
+o898zeG3bBzRKH2wEQAFAmh6lPMFCSfnzQQACgkQbBzRKH2wEQBOHw/+JYhEpg+G
+bNwYN4J9UQQqmHgqe5qRIh4FRFyk3c9elnfO0i7X/FiooG36rNkdRki5OHwYarPN
+SttsP8YUTDxh1AAVorJUZVnqNvaNI+Aq3JhA+p4SBBFkPI/+WX2SF7kk+dtS9CRq
+ecVjn2TNlD0guHFoJB9baZBqARv0I/im99Ksu5oqkO3OKui+0jEpSD3pA/oJoy7I
+82kIWcLbgNKYoYPvlLlud64dwFArAKuHKI3sTAe5v9w/kKamWgmNpfy8C6YKOKSf
+Dl7OD7wAPamOMBB0VmR2BUmVoUBJQyyefwr9kWSKAENCeonAY5bvbkdsVbiTnIwK
+He6+8A1LwcmhpnKevA/9M3+1vT8mSf5OWjSv++AFRL9CyvZJokj1G4XtTpJLV7P6
+AHZs0wVDGWsp2pKSfwTzTPenZHBQ9aGWJrlPAlqie51ak01Ku18HryPszY1u/RDT
+niRdWgdOp921Kj23FYfOVmsFJw3yvjJKmPnPpAuJMFyENB5diTf06SPXGL81mLPC
+fqw0M4yVFRXonmQ4d44tL9YgK/A4IEeM5KSRlOD4HEI+3ENEHLXRwkUTG9BZ5wtm
+fIH0zMOIm8ndAuwI2zDs+MTGvlKt6oGcqBLI2HRdbpN0MUgqqlud41gG1pgq9XJr
+j8l3IsiareWqAfH9XRJkWQ8R/U9gZx6k9AQ=
+=c7Mn
-----END PGP PUBLIC KEY BLOCK-----
....
-
diff --git a/documentation/static/pgpkeys/obiwac.key b/documentation/static/pgpkeys/obiwac.key
new file mode 100644
index 0000000000..4d13b14d5f
--- /dev/null
+++ b/documentation/static/pgpkeys/obiwac.key
@@ -0,0 +1,55 @@
+// sh addkey.sh obiwac 4CC540EC0B39382D ;
+
+[.literal-block-margin]
+....
+pub rsa3072/4CC540EC0B39382D 2025-07-19 [SC] [expires: 2028-07-18]
+ Key fingerprint = E07A 67C5 5569 B9F8 049D 3C02 4CC5 40EC 0B39 382D
+uid Aymeric Wibo (FreeBSD GPG key) <obiwac@FreeBSD.org>
+sub rsa3072/DA028F4A35934661 2025-07-19 [E] [expires: 2028-07-18]
+
+....
+
+[.literal-block-margin]
+....
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+=miT7
+-----END PGP PUBLIC KEY BLOCK-----
+....