Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release for 2025Q1 images #830

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 12 additions & 6 deletions src/installation/guides/arm-devices/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,11 @@ thoroughly.

### Pre-built images

The pre-built images provided are prepared for 2GB SD cards. After [downloading
and verifying](../../index.md#downloading-installation-media) an image, it can
be uncompressed with [unxz(1)](https://man.voidlinux.org/unxz.1) and written to
the relevant media with [cat(1)](https://man.voidlinux.org/cat.1),
The pre-built images provided are prepared for 1GB storage devices. After
[downloading and verifying](../../index.md#downloading-installation-media) an
image, it can be uncompressed with [unxz(1)](https://man.voidlinux.org/unxz.1)
and written to the relevant media with
[cat(1)](https://man.voidlinux.org/cat.1),
[pv(1)](https://man.voidlinux.org/pv.1), or
[dd(1)](https://man.voidlinux.org/dd.1). For example, to flash it onto an SD
card located at `/dev/mmcblk0`:
Expand All @@ -40,8 +41,13 @@ $ unxz -k <image>.img.xz
# dd if=<image>.img of=/dev/mmcblk0 bs=4M status=progress
```

After flashing, the root partition can optionally be expanded to fit the storage
device with [cfdisk(8)](https://man.voidlinux.org/cfdisk.8),
On first boot, the root partition and filesystem will automatically expand to
fill available contiguous space in the storage device using
[growpart(1)](https://man.voidlinux.org/man1/growpart.1). This can be disabled
by commenting out `ENABLE_ROOT_GROWPART=yes` in `/etc/default/growpart`.

This can also be done manually after flashing with
[cfdisk(8)](https://man.voidlinux.org/cfdisk.8),
[fdisk(8)](https://man.voidlinux.org/fdisk.8), or another partitioning tool, and
the filesystem can be resized to fit the expanded partition with
[resize2fs(8)](https://man.voidlinux.org/resize2fs.8).
Expand Down
98 changes: 26 additions & 72 deletions src/installation/guides/chroot.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,8 @@ System Partition:
```

Initialize swap space, if desired, using
[mkswap(8)](https://man.voidlinux.org/mkswap.8).
[mkswap(8)](https://man.voidlinux.org/mkswap.8), and enable it with
[swapon(8)](https://man.voidlinux.org/swapon.8).

## Base Installation

Expand Down Expand Up @@ -133,33 +134,40 @@ Unpack the tarball into the newly configured filesystems:
# tar xvf void-<...>-ROOTFS.tar.xz -C /mnt
```

ROOTFS images generally contain out of date software, due to being a snapshot of
the time when they were built, and do not come with a complete `base-system`.
Update the package manager and install `base-system`:

```
# 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
```

## Configuration

With the exception of the section "Install base-system (ROOTFS method only)",
the remainder of this guide is common to both the XBPS and ROOTFS installation
The remainder of this guide is common to both the XBPS and ROOTFS installation
methods.

### Entering the Chroot
### Configure Filesystems

[xchroot(1)](https://man.voidlinux.org/xchroot.1) (from `xtools`) can be used to
set up and enter the chroot. Alternatively, this can be [done
manually](../../config/containers-and-vms/chroot.md#manual-method).
The [fstab(5)](https://man.voidlinux.org/fstab.5) file can be automatically
generated from currently mounted filesystems using
[xgenfstab(1)](https://man.voidlinux.org/xgenfstab.1) (from `xtools`).

```
# xchroot /mnt /bin/bash
# xgenfstab -U /mnt > /mnt/etc/fstab
```

### Install base-system (ROOTFS method only)
### Entering the Chroot

ROOTFS images generally contain out of date software, due to being a snapshot of
the time when they were built, and do not come with a complete `base-system`.
Update the package manager and install `base-system`:
[xchroot(1)](https://man.voidlinux.org/xchroot.1) (from `xtools`) can be used to
set up and enter the chroot. Alternatively, this can be [done
manually](../../config/containers-and-vms/chroot.md#manual-method).

```
[xchroot /mnt] # xbps-install -Su xbps
[xchroot /mnt] # xbps-install -u
[xchroot /mnt] # xbps-install base-system
[xchroot /mnt] # xbps-remove base-container-full
# xchroot /mnt /bin/bash
```

### Installation Configuration
Expand Down Expand Up @@ -191,60 +199,6 @@ To set a root password, run:
[xchroot /mnt] # passwd
```

### Configure fstab

The [fstab(5)](https://man.voidlinux.org/fstab.5) file can be automatically
generated from currently mounted filesystems by copying the file `/proc/mounts`:

```
[xchroot /mnt] # cp /proc/mounts /etc/fstab
```

Remove lines in `/etc/fstab` that refer to `proc`, `sys`, `devtmpfs` and `pts`.

Replace references to `/dev/sdXX`, `/dev/nvmeXnYpZ`, etc. with their respective
UUID, which can be found by running
[blkid(8)](https://man.voidlinux.org/blkid.8). Referring to filesystems by their
UUID guarantees they will be found even if they are assigned a different name at
a later time. In some situations, such as booting from USB, this is absolutely
essential. In other situations, disks will always have the same name unless
drives are physically added or removed. Therefore, this step may not be strictly
necessary, but is almost always recommended.

Change the last zero of the entry for `/` to `1`, and the last zero of every
other line to `2`. These values configure the behaviour of
[fsck(8)](https://man.voidlinux.org/fsck.8).

For example, the partition scheme used throughout previous examples yields the
following `fstab`:

```
/dev/sda1 /boot/efi vfat rw,relatime,[...] 0 0
/dev/sda2 / ext4 rw,relatime 0 0
```

The information from `blkid` results in the following `/etc/fstab`:

```
UUID=6914[...] /boot/efi vfat rw,relatime,[...] 0 2
UUID=dc1b[...] / ext4 rw,relatime 0 1
```

Note: The output of `/proc/mounts` will have a single space between each field.
The columns are aligned here for readability.

Add an entry to mount `/tmp` in RAM:

```
tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
```

If using swap space, add an entry for any swap partitions:

```
UUID=1cb4[...] swap swap rw,noatime,discard 0 0
```

### Enable services

Services can be [enabled](../../config/services/index.md#enabling-services)
Expand All @@ -262,7 +216,7 @@ to install GRUB onto your boot disk.
install GRUB to. For example:

```
[xchroot /mnt] # xbps-install grub
[xchroot /mnt] # xbps-install -S grub
[xchroot /mnt] # grub-install /dev/sda
```

Expand All @@ -272,7 +226,7 @@ optionally specifying a bootloader label (this label may be used by your
computer's firmware when manually selecting a boot device):

```
[xchroot /mnt] # xbps-install grub-x86_64-efi
[xchroot /mnt] # xbps-install -S grub-x86_64-efi
[xchroot /mnt] # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Void"
```

Expand Down
44 changes: 21 additions & 23 deletions src/installation/guides/fde.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ 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
```

## System installation
Expand Down Expand Up @@ -162,9 +163,23 @@ command for a UEFI system will be as follows.
# xbps-install -Sy -R https://repo-default.voidlinux.org/current -r /mnt base-system cryptsetup grub-x86_64-efi lvm2
```

When it's done, we can enter the chroot with
[`xchroot(1)`](https://man.voidlinux.org/xchroot.1) (from `xtools`) and finish
up the configuration. Alternatively, entering the chroot can be [done
## Configuration

### Filesystem Configuration

The [fstab(5)](https://man.voidlinux.org/fstab.5) file can be automatically
generated from currently mounted filesystems using
[xgenfstab(1)](https://man.voidlinux.org/xgenfstab.1) (from `xtools`).

```
# xgenfstab /mnt > /mnt/etc/fstab
```

### Entering the Chroot

We can enter the chroot with [`xchroot(1)`](https://man.voidlinux.org/xchroot.1)
(from `xtools`) and finish up the configuration. Alternatively, entering the
chroot can be [done
manually](../../config/containers-and-vms/chroot.md#manual-method).

```
Expand All @@ -175,33 +190,16 @@ manually](../../config/containers-and-vms/chroot.md#manual-method).
[xchroot /mnt] # echo voidvm > /etc/hostname
```

and, for glibc systems only:
### System Locale (glibc only)

For glibc systems only, generate locale files with:

```
[xchroot /mnt] # echo "LANG=en_US.UTF-8" > /etc/locale.conf
[xchroot /mnt] # echo "en_US.UTF-8 UTF-8" >> /etc/default/libc-locales
[xchroot /mnt] # xbps-reconfigure -f glibc-locales
```

### Filesystem configuration

The next step is editing `/etc/fstab`, which will depend on how you configured
and named your filesystems. For this example, the file should look like this:

```
# <file system> <dir> <type> <options> <dump> <pass>
tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
/dev/voidvm/root / xfs defaults 0 0
/dev/voidvm/home /home xfs defaults 0 0
/dev/voidvm/swap swap swap defaults 0 0
```

UEFI systems will also have an entry for the EFI system partition.

```
/dev/sda1 /boot/efi vfat defaults 0 0
```

### GRUB configuration

Next, configure GRUB to be able to unlock the filesystem. Add the following line
Expand Down
24 changes: 16 additions & 8 deletions src/installation/live-images/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,22 @@ the base system, without any additional packages included on the live image.

All Void installer images support the console screenreader
[espeakup](https://man.voidlinux.org/espeakup.8) and the console braille display
driver [brltty](https://man.voidlinux.org/brltty.1). These services can be
enabled at boot by pressing `s` in the bootloader menu to enable accessibility
support. On UEFI-based systems, GRUB is the bootloader, and it will play a
two-tone chime when the menu is available. On BIOS-based systems and UEFI
systems in legacy/compatibility mode, SYSLINUX is the bootloader, and no chime
is played. SYSLINUX also requires pressing the enter key after pressing `s`. The
hotkey `r` will also boot with accessibility support, but will load the live ISO
into RAM.
driver [brltty](https://man.voidlinux.org/brltty.1). On UEFI-based systems, GRUB
is the bootloader, and it will play a two-tone chime when the menu is available.
On BIOS-based systems and UEFI systems in legacy/compatibility mode, SYSLINUX is
the bootloader, and no chime is played.

Several hotkeys exists in the bootloader, which will select different entries:

- `s` will boot with screenreader enabled
- `r` will boot with screenreader enabled and will load the live ISO into RAM
- `g` will boot with screenreader enabled and graphics disabled
- `m` will enter `Memtest86+` (if supported)
- `f` will enter the UEFI firmware setup interface (if supported)
- `b` will reboot the computer
- `p` will power off the computer

SYSLINUX requires pressing enter after pressing a hotkey.

After booting into the installer image with accessibility support enabled, if
there are multiple soundcards detected, a short audio menu allows for the
Expand Down
Loading