### Start X Session with startx and i3 Source: https://github.com/void-linux/void-docs/blob/master/src/config/graphical-session/xorg.md Example ~/.xinitrc file to start xscreensaver and the i3 window manager using startx. Ensure the last line is 'exec /bin/i3'. ```bash xscreensaver & exec /bin/i3 ``` -------------------------------- ### Run Void Installer Source: https://github.com/void-linux/void-docs/blob/master/src/installation/live-images/guide.md After booting the live image and logging in as root, run this command to start the Void Linux installer. ```bash # void-installer ``` -------------------------------- ### Xorg Keyboard Configuration Example Source: https://github.com/void-linux/void-docs/blob/master/src/config/graphical-session/xorg.md Example configuration for a specific keyboard driver in Xorg. This file should be placed in /etc/X11/xorg.conf.d/. ```config Section "InputClass" Identifier "keyboard-all" Driver "evdev" MatchIsKeyboard "on" EndSection ``` -------------------------------- ### Launch Printer Configuration Tool Source: https://github.com/void-linux/void-docs/blob/master/src/config/print/index.md Install and run system-config-printer for graphical printer setup. Root privileges are typically required unless PolicyKit is configured with cups-pk-helper. ```bash # system-config-printer ``` -------------------------------- ### List Installed Packages by Name Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/index.md Retrieves a list of all installed package names. This example uses awk and xargs with xbps-uhelper, or the simpler 'xpkg' command if xtools is installed. ```bash $ xbps-query -l | awk '{ print $2 }' | xargs xbps-uhelper getpkgname ``` ```bash $ xpkg ``` -------------------------------- ### Install GRUB for BIOS Systems Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Installs the GRUB bootloader package and then installs GRUB to the specified disk for BIOS-based systems. ```bash [xchroot /mnt] # xbps-install -S grub [xchroot /mnt] # grub-install /dev/sda ``` -------------------------------- ### Install GRUB for UEFI Systems Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Installs the appropriate GRUB EFI package and then installs GRUB for UEFI systems, specifying the target, EFI directory, and a bootloader ID. ```bash [xchroot /mnt] # xbps-install -S grub-x86_64-efi [xchroot /mnt] # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Void" ``` -------------------------------- ### Create ZFS Pool Example Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/zfs.md Example command to create a ZFS pool on a specified partition. Ensure the partition is correctly identified. ```bash zpool create -f -o ashift=12 -O acltype=posixacl -O amdd=enabled -O canmount=off -O compression=lz4 -O devices=off -O exec=on -O filesystemim=enabled -O logbias=throughput -O ‘‘mountpoint=/’’ -O ‘‘normalization=formD’’ -O ‘‘redundant_metadata=most’’ -O ‘‘relatime=on’’ -O ‘‘reservation=’’ -O ‘‘utf8only=on’’ -O ‘‘vscan=enabled’’ -O ‘‘xattr=sa’’ -O ‘‘zoned=off’’ -S’’’’ rpool /dev/disk/by-id/wwn-0x5000c500deadbeef-part3 ``` -------------------------------- ### Install Full TeX Live Package Scheme Source: https://github.com/void-linux/void-docs/blob/master/src/config/texlive.md Install all available TeX Live packages by installing the 'scheme-full' collection. ```bash # tlmgr install scheme-full ``` -------------------------------- ### Install GRUB Bootloader Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Installs the GRUB bootloader to the specified disk (e.g., /dev/sda). This command is executed within the chroot environment. ```bash [xchroot /mnt] # grub-install /dev/sda ``` -------------------------------- ### Run as root command example Source: https://github.com/void-linux/void-docs/blob/master/CONTRIBUTING.md Command code-blocks should start with a '#' character to indicate that the command should be run as root. ```bash # vi /etc/fstab ``` -------------------------------- ### Install Base System for UEFI with Full Disk Encryption Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Installs the base system with specific packages for UEFI systems, including cryptsetup and grub-x86_64-efi, for full disk encryption setup. ```bash # xbps-install -Sy -R https://repo-default.voidlinux.org/current -r /mnt base-system cryptsetup grub-x86_64-efi lvm2 ``` -------------------------------- ### Install a TeX Live Collection Source: https://github.com/void-linux/void-docs/blob/master/src/config/texlive.md Install a specific TeX Live collection. Replace with the collection's name. ```bash # tlmgr install collection- ``` -------------------------------- ### Manually create chroot with xbps-install Source: https://github.com/void-linux/void-docs/blob/master/src/config/containers-and-vms/chroot.md Manually create a chroot directory and install a base system using xbps-install. Ensure keys are copied and specify the repository. ```bash # mkdir -p "/var/db/xbps/keys" # cp -a /var/db/xbps/keys/* "/var/db/xbps/keys" # XBPS_ARCH= xbps-install -S -r -R base-container ``` -------------------------------- ### Start Tor Client Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/repositories/mirrors/tor.md Start the Tor client as a user to enable the SOCKS5 proxy on localhost:9050. ```bash # tor ``` -------------------------------- ### Download and Run Asahi Linux Installer Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/apple-silicon.md Download the Asahi Linux installer script and execute it from macOS to set up the UEFI environment and prepare disk space. ```bash macos $ curl https://alx.sh > alx.sh macos $ sh ./alx.sh ``` -------------------------------- ### Install Base System and LVM2 with Full Disk Encryption Support Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Installs the base system and LVM2, preparing for full disk encryption. This command is used for non-UEFI systems. ```bash # xbps-install -Sy -R https://repo-default.voidlinux.org/current -r /mnt base-system lvm2 cryptsetup grub ``` -------------------------------- ### Install a Specific TeX Live Package Source: https://github.com/void-linux/void-docs/blob/master/src/config/texlive.md Install a standalone TeX package. Ensure the package exists by searching for it first. ```bash # tlmgr install ``` -------------------------------- ### Create chroot with xvoidstrap Source: https://github.com/void-linux/void-docs/blob/master/src/config/containers-and-vms/chroot.md Use xvoidstrap to create a chroot directory and install a base container system. Specify the architecture and optionally pre-install other packages. ```bash # mkdir # XBPS_ARCH= xvoidstrap base-container ``` -------------------------------- ### ConnManctl Interactive Shell Example Source: https://github.com/void-linux/void-docs/blob/master/src/config/network/connman.md Demonstrates how to establish a Wi-Fi connection using the connmanctl interactive shell. Ensure Wi-Fi is enabled and an agent is running before scanning and connecting. ```bash # connmanctl > enable wifi > agent on > scan wifi > services > connect wifi_ > exit ``` -------------------------------- ### Mount Partitions for Custom Installation Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/index.md Mount the prepared partitions for a custom Void Linux installation. Assumes the second partition is for root and the first is for boot. ```bash # mount /dev/mmcblk0p2 /mnt # mkdir /mnt/boot # mount /dev/mmcblk0p1 /mnt/boot ``` -------------------------------- ### Enable a Service on a Non-Running System Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md Link the service directory directly into the 'default' runsvdir to enable it. This will automatically start the service and ensure it starts on boot. ```bash # ln -s /etc/sv/ /etc/runit/runsvdir/default/ ``` -------------------------------- ### Install HP Printer Drivers Source: https://github.com/void-linux/void-docs/blob/master/src/config/print/index.md Use this command to initiate the HP printer driver installation process. Default selections are usually sufficient. ```bash # hp-setup -i ``` -------------------------------- ### Bootstrap Void Linux Base System with XBPS Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Installs the 'base-system' metapackage into the target chroot environment using xbps-install, specifying the architecture, repository, and target root. ```bash # XBPS_ARCH=$ARCH xbps-install -S -r /mnt -R "$REPO" base-system ``` -------------------------------- ### Start PipeWire Service Source: https://github.com/void-linux/void-docs/blob/master/src/config/media/pipewire.md Starts the PipeWire service in the current user session. This is a basic test to ensure PipeWire is running. ```bash $ pipewire ``` -------------------------------- ### Install debug packages using xdbg Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/repositories/index.md Use the xdbg utility to find debug dependencies for a package and then install them using xbps-install. ```bash $ xdbg bash bash-dbg glibc-dbg # xbps-install -S $(xdbg bash) ``` -------------------------------- ### Mounting Root and Home Partitions Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Mount the root and home logical volumes to the /mnt directory to prepare for system installation. ```bash # mount /dev/voidvm/root /mnt # mkdir -p /mnt/home # mount /dev/voidvm/home /mnt/home ``` -------------------------------- ### Manually Start PulseAudio Daemon Source: https://github.com/void-linux/void-docs/blob/master/src/config/media/pulseaudio.md Use this command to start the PulseAudio daemon manually. The `--daemonize=no` flag keeps it in the foreground, and `--exit-idle-time=-1` prevents it from shutting down when idle. ```bash $ pulseaudio --daemonize=no --exit-idle-time=-1 ``` -------------------------------- ### List Files Provided by a Package Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/index.md Lists all files installed by a specific package. This is useful for troubleshooting or verifying package contents. ```bash $ xbps-query -f ``` -------------------------------- ### Basic WPA2/PSK Network Configuration Source: https://github.com/void-linux/void-docs/blob/master/src/config/network/iwd.md Example of a basic configuration file for a WPA2/PSK secured network. This file should be named '.psk' and placed in '/var/lib/iwd/'. ```ini [Security] Passphrase= ``` -------------------------------- ### Controlling user services with sv Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/user-services.md Examples demonstrating how to check the status of user services and restart them using the sv command. The SVDIR environment variable can be set to simplify commands when managing services in a user's service directory. ```bash $ sv status ~/service/* ``` ```bash $ SVDIR=~/service sv restart gpg-agent ``` -------------------------------- ### Copying XBPS Keys Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Copy the XBPS package repository keys from the installation medium to the target root directory to ensure package verification during installation. ```bash # mkdir -p /mnt/var/db/xbps/keys # cp /var/db/xbps/keys/* /mnt/var/db/xbps/keys/ ``` -------------------------------- ### Prevent a Service from Starting at Boot Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md To stop a service from starting at boot while still allowing runit to manage it, create a 'down' file in its service directory. ```bash touch /var/service//down ``` -------------------------------- ### List Available TeX Live Collections Source: https://github.com/void-linux/void-docs/blob/master/src/config/texlive.md Display a list of all available TeX Live package collections that can be installed. ```bash tlmgr info collections ``` -------------------------------- ### Configure Subordinate UID/GID Ranges Source: https://github.com/void-linux/void-docs/blob/master/src/config/containers-and-vms/lxc.md Example configuration for /etc/subuid and /etc/subgid files to delegate subordinate UID and GID ranges for unprivileged containers. Ensure ranges do not overlap. ```bash root:1000000:65536 user:2000000:65536 ``` -------------------------------- ### Verify Digital Signature of Installation Image Source: https://github.com/void-linux/void-docs/blob/master/src/installation/index.md Use the minisign utility to verify the authenticity of the sha256sum.txt file against the sha256sum.sig file. This ensures the checksum file has not been tampered with. Requires the minisign package and the release's public key. ```bash $ minisign -V -p /usr/share/void-release-keys/void-release-20250202.pub -x sha256sum.sig -m sha256sum.txt ``` -------------------------------- ### Update System and Packages Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/index.md Use this command to update all installed packages and synchronize repository indexes. If the 'xbps' package itself is updated, run this command a second time. ```bash # xbps-install -Su ``` -------------------------------- ### Specify Sound Card Module Order Source: https://github.com/void-linux/void-docs/blob/master/src/config/media/alsa.md Sets the order of sound card modules using kernel module options in `/etc/modprobe.d/alsa.conf`. This example sets the USB audio device as the primary card. ```text options snd_usb_audio index=0 ``` -------------------------------- ### Serve Documentation Locally Source: https://github.com/void-linux/void-docs/blob/master/CONTRIBUTING.md Run this command from the repository root to serve the docs locally and preview your changes. ```bash mdbook-legacy serve ``` -------------------------------- ### Running Application with Nouveau PRIME Source: https://github.com/void-linux/void-docs/blob/master/src/config/graphical-session/graphics-drivers/optimus.md Set the `DRI_PRIME=1` environment variable to direct an application to run on the NVIDIA GPU using the open-source `nouveau` driver. This requires configuring the system to use `nouveau` if NVIDIA drivers are installed. ```bash $ DRI_PRIME=1 ``` -------------------------------- ### Create Initial ZFS Filesystems Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/zfs.md Creates the root filesystem and a separate filesystem for home directories. Setting canmount=noauto on the root filesystem allows for multiple boot environments. ```bash # zfs create -o mountpoint=none zroot/ROOT # zfs create -o mountpoint=/ -o canmount=noauto zroot/ROOT/void ``` ```bash # zfs create -o mountpoint=/home zroot/home ``` -------------------------------- ### Enter Chroot Environment and Basic Configuration Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Enters the chroot environment using xchroot and performs initial configuration tasks such as setting root ownership and permissions, and setting the root password and hostname. ```bash # xchroot /mnt [xchroot /mnt] # chown root:root / [xchroot /mnt] # chmod 755 / [xchroot /mnt] # passwd root [xchroot /mnt] # echo voidvm > /etc/hostname ``` -------------------------------- ### Extract Tarball for Installation Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/index.md Unpack a PLATFORMFS or ROOTFS tarball to the mounted root partition for a tarball-based installation. ```bash # tar xvfp .tar.xz -C /mnt ``` -------------------------------- ### Enter Chroot Environment Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Uses xchroot to set up and enter the chroot environment for further system configuration. ```bash # xchroot /mnt /bin/bash ``` -------------------------------- ### Mount efivarfs for UEFI GRUB Installation Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Mounts the efivarfs filesystem, which may be necessary for GRUB installation on some UEFI systems. ```bash [xchroot /mnt] # mount -t efivarfs none /sys/firmware/efi/efivars ``` -------------------------------- ### Creating Filesystems and Swap Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Format the logical volumes with XFS (or another supported filesystem) and set up the swap partition. The '-L' flag sets the filesystem label. ```bash # mkfs.xfs -L root /dev/voidvm/root meta-data=/dev/voidvm/root isize=512 agcount=4, agsize=655360 blks ... # mkfs.xfs -L home /dev/voidvm/home meta-data=/dev/voidvm/home isize=512 agcount=4, agsize=2359040 blks ... # mkswap /dev/voidvm/swap Setting up swapspace version 1, size = 2 GiB (2147479552 bytes) # swapon /dev/voidvm/swap ``` -------------------------------- ### Update All Installed TeX Packages Source: https://github.com/void-linux/void-docs/blob/master/src/config/texlive.md Update all TeX packages and collections that are currently installed on your system to their latest available versions. ```bash # tlmgr update --all ``` -------------------------------- ### Set Target Architecture for XBPS Install Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Sets the ARCH shell variable to the desired target architecture for the Void Linux installation. ```bash # ARCH=x86_64 ``` -------------------------------- ### Configure GRUB for Pinebook Pro Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/pinebook-pro.md Append these lines to `/etc/default/grub` to set kernel command line arguments and the default Device Tree Blob for the Pinebook Pro. ```bash GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT console=ttyS2,115200 video=eDP-1:1920x1080x60" GRUB_DEFAULT_DTB="rockchip/rk3399-pinebook-pro.dtb" ``` -------------------------------- ### Enable a Service on a Running System Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md Create a symbolic link to the service directory in /var/service/ to enable it. This command is for systems that are currently running. ```bash # ln -s /etc/sv/ /var/service/ ``` -------------------------------- ### NVIDIA Driver Not Supported Message Source: https://github.com/void-linux/void-docs/blob/master/src/config/graphical-session/graphics-drivers/optimus.md This message appears in the kernel log when the installed NVIDIA driver does not support your specific GPU in an Optimus configuration. It indicates the need to uninstall the current driver and install a legacy version. ```text NVRM: The NVIDIA GPU xxxx:xx:xx.x (PCI ID: xxxx:xxxx) NVRM: installed in this system is not supported by the xxx.xx NVRM: NVIDIA Linux driver release. Please see 'Appendix NVRM: A - Supported NVIDIA GPU Products' in this release's NVRM: README, available on the Linux driver download page NVRM: at www.nvidia.com. ``` -------------------------------- ### Configure GRUB for ThinkPad X13s Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/thinkpad-x13s.md Append kernel command-line arguments and specify the default DTB for the ThinkPad X13s in /etc/default/grub. ```bash GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT arm64.nopauth clk_ignore_unused pd_ignore_unused" GRUB_DEFAULT_DTB="qcom/sc8280xp-lenovo-thinkpad-x13s.dtb" ``` -------------------------------- ### Check Service Status Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md Example of checking the status of a specific service ('dhcpcd') and all enabled services. ```bash # sv status dhcpcd # sv status /var/service/* ``` -------------------------------- ### Boot from USB in U-Boot Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/apple-silicon.md Commands to set boot targets and methods in the U-Boot prompt to boot from an external USB drive containing the Void Linux ISO. ```bash U-Boot> setenv boot_targets "usb" U-Boot> setenv bootmeths "efi" U-Boot> boot ``` -------------------------------- ### Configure Static IP Address using rc.local Source: https://github.com/void-linux/void-docs/blob/master/src/config/network/index.md Add ip commands to /etc/rc.local for static network configuration at boot. ```bash ip link set dev eth0 up ip addr add 192.168.1.2/24 brd + dev eth0 ip route add default via 192.168.1.1 ``` -------------------------------- ### Define Local Custom Repository Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/repositories/custom.md Use this command to add a local custom repository by creating a configuration file in /etc/xbps.d. ```bash # echo 'repository=/path/to/repo' > /etc/xbps.d/my-local-repo.conf ``` -------------------------------- ### Launch JACK Clients with PipeWire Source: https://github.com/void-linux/void-docs/blob/master/src/config/media/pipewire.md Launches JACK clients using the PipeWire JACK compatibility layer. ```shell $ pw-jack ``` -------------------------------- ### Export and Re-import ZFS Pool Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/zfs.md Exports the ZFS pool and then re-imports it with an alternate root path, typically used for installation. ```bash # zpool export zroot # zpool import -N -R /mnt zroot ``` -------------------------------- ### Enable WWAN Modem on ThinkPad X13s Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/thinkpad-x13s.md Install ModemManager and configure FCC unlock for the WWAN modem on the ThinkPad X13s. ```bash # mkdir -p /etc/ModemManager/fcc-unlock.d # ln -s /usr/share/ModemManager/fcc-unlock.available.d/105b /etc/ModemManager/fcc-unlock.d/105b:e0c3 ``` -------------------------------- ### Creating LVM Logical Volumes Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Create logical volumes for root, swap, and home within the 'voidvm' volume group. Adjust sizes as needed. ```bash # lvcreate --name root -L 10G voidvm Logical volume "root" created. # lvcreate --name swap -L 2G voidvm Logical volume "swap" created. # lvcreate --name home -l 100%FREE voidvm Logical volume "home" created. ``` -------------------------------- ### Internal link example Source: https://github.com/void-linux/void-docs/blob/master/CONTRIBUTING.md Links to other sections of the Handbook must be relative. This format is used for internal navigation within the documentation. ```markdown [example](./example.md#heading-text) ``` -------------------------------- ### Exit Chroot, Unmount, and Reboot Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/fde.md Exits the chroot environment, unmounts all mounted filesystems under /mnt, and reboots the system to complete the installation. ```bash [xchroot /mnt] # exit # umount -R /mnt # reboot ``` -------------------------------- ### Set XBPS Repository URL Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Sets the REPO shell variable to the default Void Linux repository URL for a glibc installation. ```bash # REPO=https://repo-default.voidlinux.org/current ``` -------------------------------- ### Configure Dracut for ZFS Root Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/zfs.md Installs the ZFS package and configures Dracut to recognize a ZFS root filesystem. This is crucial for booting the system. ```bash [xchroot /mnt] # mkdir -p /etc/dracut.conf.d [xchroot /mnt] # cat > /etc/dracut.conf.d/zol.conf < ``` -------------------------------- ### List Initramfs Alternatives Source: https://github.com/void-linux/void-docs/blob/master/src/config/kernel.md Check available initramfs generators registered in the 'initramfs' group. This helps verify if a new generator like mkinitcpio is recognized. ```bash $ xbps-alternatives -l -g initramfs ``` -------------------------------- ### Lock Package to Repository Source: https://github.com/void-linux/void-docs/blob/master/src/xbps/advanced-usage.md Ensure a package is only updated from the repository it was originally installed from, preventing overwrites by non-customized versions. Use `xbps-pkgdb` to apply a repolock. ```bash # xbps-pkgdb -m repolock ``` -------------------------------- ### Configure Root LUKS Device for TRIM Source: https://github.com/void-linux/void-docs/blob/master/src/config/ssd.md Enable TRIM for root LUKS devices by adding 'rd.luks.allow-discards' to GRUB's CMDLINE_LINUX_DEFAULT and updating GRUB. ```bash GRUB_CMDLINE_LINUX_DEFAULT="rd.luks.allow-discards" ``` ```bash # update-grub ``` -------------------------------- ### Placeholder usage example Source: https://github.com/void-linux/void-docs/blob/master/CONTRIBUTING.md Placeholders indicate where the user should substitute information. They use angle brackets and contain only lower-case text with words separated by underscores. ```bash # ln -s /etc/sv/ /var/service/ ``` -------------------------------- ### Load Kernel Module During Boot Source: https://github.com/void-linux/void-docs/blob/master/src/config/kernel.md Create a .conf file in /etc/modules-load.d/ to specify modules that should be loaded automatically when the system boots. ```bash # load virtio-net virtio-net ``` -------------------------------- ### Link a service to be run by runit Source: https://github.com/void-linux/void-docs/blob/master/src/about/about-this-handbook.md Use this command to link a service configuration to the runit service directory. Replace `` with the actual name of the service you wish to enable. ```shell # ln -s /etc/sv/ /var/service/ ``` -------------------------------- ### LXC UID/GID ID Mapping Configuration Source: https://github.com/void-linux/void-docs/blob/master/src/config/containers-and-vms/lxc.md Specifies the UID and GID mapping ranges for LXC containers. Essential for both root and unprivileged container setups. ```bash lxc.idmap = u 0 1000000 65536 lxc.idmap = g 0 1000000 65536 ``` -------------------------------- ### Internal link with section title example Source: https://github.com/void-linux/void-docs/blob/master/CONTRIBUTING.md When referring literally to a Handbook section, the section title should be placed in double-quotes. This is used for clarity when referencing specific sections. ```markdown For more information, please read the "[Power Management](./power-management.md)" section. ``` -------------------------------- ### Troubleshooting Interface Renaming Errors Source: https://github.com/void-linux/void-docs/blob/master/src/config/network/iwd.md Example log messages indicating interference between IWD and udevd during network interface renaming. This can be resolved by configuring IWD or udevd. ```log [ 39.441723] udevd[1100]: Error changing net interface name wlan0 to wlp59s0: Device or resource busy [ 39.442472] udevd[1100]: could not rename interface '3' from 'wlan0' to 'wlp59s0': Device or resource busy ``` -------------------------------- ### Setting up D-Bus session bus with turnstile Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/user-services.md Instructions for setting up the D-Bus session bus as a turnstile-managed user service. This involves creating the necessary directory and symlinking the run and check scripts. ```bash $ mkdir -p ~/.config/service/dbus ``` ```bash $ ln -s /usr/share/examples/turnstile/dbus.run ~/.config/service/dbus/run ``` ```bash $ ln -s /usr/share/examples/turnstile/dbus.check ~/.config/service/dbus/check ``` -------------------------------- ### Update Package Manager and Base System in Chroot Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Updates the xbps package manager and installs the base-system within the chroot environment. It also removes the 'base-container-full' package. ```bash # xbps-install -r /mnt -Su xbps # xbps-install -r /mnt -u # xbps-install -r /mnt base-system # xbps-remove -r /mnt -R base-container-full ``` -------------------------------- ### Basic Service Management Commands Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md Use these commands to manage individual services or all enabled services. Replace with the service name or path. ```bash # sv up # sv down # sv restart # sv status ``` -------------------------------- ### Copy XBPS Keys to Target Root Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Copies the necessary XBPS RSA keys from the host system to the target chroot environment to ensure package verification during installation. ```bash # mkdir -p /mnt/var/db/xbps/keys # cp /var/db/xbps/keys/* /mnt/var/db/xbps/keys/ ``` -------------------------------- ### Mount necessary directories for chroot Source: https://github.com/void-linux/void-docs/blob/master/src/config/containers-and-vms/chroot.md Before entering a manually created chroot, mount essential pseudo-filesystems and device directories. This ensures proper system operation within the chroot. ```bash # mount -t proc none /proc # mount -t sysfs none /sys # mount --rbind /dev /dev # mount --rbind /run /run ``` -------------------------------- ### Add /boot Partition to fstab Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/index.md Ensure your /boot partition is correctly mounted by adding an entry to /etc/fstab. This is crucial for kernel updates and module loading. Replace `/dev/mmcblk0p1` with your actual device path if not using an SD card. ```bash /dev/mmcblk0p1 /boot vfat defaults 0 0 ``` -------------------------------- ### Query Available Kernel Series Source: https://github.com/void-linux/void-docs/blob/master/src/config/kernel.md Use this command to list all available kernel series in the Void Linux repositories. It filters for packages starting with 'linux' and sorts them numerically. ```bash $ xbps-query --regex -Rs '^linux[0-9.]+-[0-9._]+' | sort -Vrk2 ``` -------------------------------- ### Flash Pre-built Image to SD Card Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/index.md Uncompress and write a Void Linux image to an SD card. The root partition will automatically expand on first boot. ```bash $ unxz -k .img.xz # dd if=.img of=/dev/mmcblk0 bs=4M status=progress ``` -------------------------------- ### Display a Man Page Source: https://github.com/void-linux/void-docs/blob/master/src/config/package-documentation/man.md Use the `man` command followed by the name of the command or topic to display its manual page. ```bash $ man chroot ``` -------------------------------- ### Running Application with PRIME Render Offload Source: https://github.com/void-linux/void-docs/blob/master/src/config/graphical-session/graphics-drivers/optimus.md Use the `prime-run` command from the `nvidia` package to execute an application on the NVIDIA GPU. This method allows per-application GPU switching. ```bash $ prime-run ``` -------------------------------- ### Reconfigure Packages in Chroot Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/chroot.md Use xbps-reconfigure to ensure all installed packages are properly configured. This command also triggers dracut to generate an initramfs and GRUB to create a working configuration. ```bash [xchroot /mnt] # xbps-reconfigure -fa ``` -------------------------------- ### Create 'down' file to disable a service Source: https://github.com/void-linux/void-docs/blob/master/src/config/services/index.md Create an empty file named 'down' in the service's directory to prevent it from starting. This is useful for disabling services that are enabled by default. ```bash # touch /etc/sv//down ``` -------------------------------- ### Configure RNGD Service Options Source: https://github.com/void-linux/void-docs/blob/master/src/installation/guides/arm-devices/raspberry-pi.md Exclude inefficient entropy sources and force the HWRNG device for the rngd service to prevent CPU overload. ```bash RNGD_OPTS='-x jitter -x pkcs11 -x rtlsdr -n hwrng' ```