@@ -4,20 +4,21 @@ Void Linux provides packages and images for several ARM devices. Installing Void
4
4
on such devices can be done in several ways:
5
5
6
6
- [ Pre-built images] ( #pre-built-images ) : images that can be flashed directly
7
- onto an SD card or other storage medium, but give you a limited partition
8
- layout and require manual expansion if you wish to increase the partitions;
7
+ onto an SD card or other storage medium, but which give you a limited
8
+ partition layout, and require manual expansion if you wish to increase the
9
+ size of the partitions;
9
10
- [ Tarball installation] ( #tarball-installation ) : PLATFORMFS and ROOTFS tarballs
10
11
that can be extracted to a previously prepared partition scheme;
11
12
- [ Chroot installation] ( #chroot-installation ) : follows most of the steps
12
13
outlined in [ the chroot guide] ( ../chroot.md ) .
13
14
14
- Since most of the commands on this guide will be run on external storage, it is
15
+ This guide also outlines [ configuration steps] ( #configuration ) that are mostly
16
+ specific to such devices.
17
+
18
+ Since most of the commands in this guide will be run on external storage, it is
15
19
important to run [ sync(1)] ( https://man.voidlinux.org/sync.1 ) before removing the
16
20
device.
17
21
18
- Further [ configuration steps] ( #configuration ) that are mostly specific to such
19
- devices are also outlined.
20
-
21
22
## Installation
22
23
23
24
If you are installing Void Linux on one of the ARM devices covered in the
@@ -27,46 +28,46 @@ thoroughly.
27
28
### Pre-built images
28
29
29
30
After [ downloading and verifying] ( ../../index.md#downloading-installation-media )
30
- an image, it can be flashed onto an SD card in ` /dev/mmcblk0 ` , for example, with
31
- the [ cat(1)] ( https://man.voidlinux.org/cat.1 ) ,
32
- [ pv(1)] ( https://man.voidlinux.org/pv.1 ) or
33
- [ dd(1)] ( https://man.voidlinux.org/dd.1 ) command:
31
+ an image, it can be written to the relevant media with
32
+ [ cat(1)] ( https://man.voidlinux.org/cat.1 ) ,
33
+ [ pv(1)] ( https://man.voidlinux.org/pv.1 ) , or
34
+ [ dd(1)] ( https://man.voidlinux.org/dd.1 ) . For example, to flash it onto an SD
35
+ card located at ` /dev/mmcblk0 ` :
34
36
35
37
```
36
38
# dd if=<image>.img of=/dev/mmcblk0 bs=4M status=progress
37
39
```
38
40
39
41
### Custom partition layout
40
42
41
- It is possible to customize an installation further, for example with a custom
42
- partition layout, but it requires a more involved process. Two available options
43
- are:
43
+ Customizing an installation - for example, with a custom partition layout -
44
+ requires a more involved process. Two available options are:
44
45
45
46
- [ Tarball installation] ( #tarball-installation ) ; and
46
- - [ Chroot installation] ( #chroot-installation )
47
+ - [ Chroot installation] ( #chroot-installation ) .
47
48
48
49
To prepare the storage for these installation methods, it is necessary to
49
- partition the storage medium to then mount the partitions in the correct
50
- mounting points.
50
+ partition the storage medium and then mount the partitions at the correct mount
51
+ points.
51
52
52
- The usual partitioning scheme for ARM devices requires at least two partitions
53
- on a drive formatted with an MSDOS partition table:
53
+ The usual partitioning scheme for ARM devices requires at least two partitions,
54
+ on a drive formatted with an MS-DOS partition table:
54
55
55
56
- one formatted as FAT32 with partition type ` 0c ` , which will be mounted on
56
57
` /boot ` ;
57
58
- one that can be formatted as any file system that Linux can boot from, such as
58
- ext4, which will be mounted on ` / ` . If you are using an SD card, for example,
59
- it might be interesting to create the ext4 file system with the
60
- ` ^has_journal ` option , which disables journaling and might increase the
61
- drive's life, at the cost of a higher chance of data loss.
59
+ ext4, which will be mounted on ` / ` . If you're using an SD card, you can
60
+ create the ext4 file system with the ` ^has_journal ` option - this disables
61
+ journaling , which might increase the drive's life, at the cost of a higher
62
+ chance of data loss.
62
63
63
- This can be done with the [ cfdisk(8) ] ( https://man.voidlinux.org/cfdisk.8 )
64
- utility, for example .
64
+ There are a variety of tools available for partitioning, e.g.
65
+ [ cfdisk(8) ] ( https://man.voidlinux.org/cfdisk.8 ) .
65
66
66
67
To access the newly created file systems, it is necessary to mount them. This
67
68
guide will assume that the second partition will be mounted on ` /mnt ` , but you
68
69
may mount it elsewhere. To mount these filesystems, you can use the commands
69
- below, replacing the device names with the appropriate ones for your setup.
70
+ below, replacing the device names with the appropriate ones for your setup:
70
71
71
72
```
72
73
# mnt /dev/mmcblk0p2 /mnt
@@ -78,9 +79,8 @@ below, replacing the device names with the appropriate ones for your setup.
78
79
79
80
First, [ download and verify] ( ../../index.md#downloading-installation-media ) a
80
81
PLATFORMFS or ROOTFS tarball for your desired platform and [ prepare your storage
81
- medium] ( #preparing-your-storage ) . Then, it is necessary to unpack the tarball
82
- onto the file system, which can be done using
83
- [ tar(1)] ( https://man.voidlinux.org/tar.1 ) :
82
+ medium] ( #preparing-your-storage ) . Then, unpack the tarball onto the file system
83
+ using [ tar(1)] ( https://man.voidlinux.org/tar.1 ) :
84
84
85
85
```
86
86
# tar xvfp <image>.tar.xz -C /mnt
@@ -98,12 +98,12 @@ PLATFORMFS or ROOTFS tarball for your desired platform and [prepare your storage
98
98
medium] ( #preparing-your-storage ) . Then, follow the [ XBPS chroot installation
99
99
steps] ( ../chroot.md#the-xbps-method ) using the appropriate architecture and base
100
100
packages, some of which are listed in the "[ Supported
101
- platforms] ( ./platforms.md ) " page .
101
+ platforms] ( ./platforms.md ) " section .
102
102
103
103
Finally, follow the [ chroot configuration steps] ( ../chroot.md#configuration )
104
104
steps, but instead of using the [ chroot(1)] ( https://man.voidlinux.org/chroot.1 )
105
- command to [ enter the chroot] ( ../chroot.md#entering-the-chroot ) , use the command
106
- below :
105
+ command to [ enter the chroot] ( ../chroot.md#entering-the-chroot ) , use the
106
+ following command :
107
107
108
108
```
109
109
# proot -q qemu-arm-static -r /mnt -w /
@@ -125,7 +125,7 @@ For the pre-built images and tarball installations, the `root` user password is
125
125
The ` /boot ` partition should be added to ` /etc/fstab ` , with an entry similar to
126
126
the one below. It is possible to boot without that entry, but updating the
127
127
kernel package in that situation can lead to breakage, such as being unable to
128
- find kernel modules, which is essential for functionality such as wireless
128
+ find kernel modules, which are essential for functionality such as wireless
129
129
connectivity. If you aren't using an SD card, replace ` /dev/mmcblk0p1 ` with the
130
130
appropriate device path.
131
131
@@ -136,8 +136,8 @@ appropriate device path.
136
136
### System time
137
137
138
138
Several of the ARM devices supported by Void Linux don't have battery powered
139
- real time clocks (RTC ), which means they won't keep track of time once powered
140
- off. This issue can present itself as HTTPS errors when browsing the web or
139
+ real time clocks (RTCs ), which means they won't keep track of time once powered
140
+ off. This issue can present itself as HTTPS errors when browsing the Web or
141
141
using the package manager. It is possible to set the time manually using the
142
142
[ date(1)] ( https://man.voidlinux.org/date.1 ) utility. In order to fix this issue
143
143
for subsequent boots, install and enable [ an NTP
@@ -148,11 +148,11 @@ the current time in a configuration file and restores it at boot, leading to a
148
148
better initial approximation of the current time, even without a network
149
149
connection.
150
150
151
- ** Warning** : Images from before 2019-11-09 might have an issue where the
152
- installation of the ` chrony ` package, which comes as the default NTP daemon, is
153
- incomplete, and the system will be missing the ` chrony ` user. This can be
154
- checked in the output of the [ getent(1)] ( https://man.voidlinux.org/getent.1 )
155
- command, which will be empty if it doesn't exist:
151
+ ** Warning** : Images from before 2020-03-16 might have an issue where the
152
+ installation of the ` chrony ` package, the default NTP daemon, is incomplete, and
153
+ the system will be missing the ` chrony ` user. This can be checked in the output
154
+ of the [ getent(1)] ( https://man.voidlinux.org/getent.1 ) command, which will be
155
+ empty if it doesn't exist:
156
156
157
157
```
158
158
$ getent group chrony
0 commit comments