~ Return to the rest of the site

alpine

updated 2022-04-21


Resources

Alpine: Always install manual pages

Alpine doesn't include man pages in program packages to save on space, instead keeping them in [package]-doc sibling packages. To always install doc packages with program packages, apk add docs.

Arch and Artix: Install essential packages

On Artix, use basestrap(8). On Arch, use pacstrap(8).

At a minimum you need base on both Arch and Artix. On Artix, you need to select the initialization you want to use: 66, dinit, openrc, runit, or s6-base. On both Arch and Artix, select a kernel; linux, linux-lts, or another Linux configuration or fork. Arch says you need to install linux-firmware, technically you don't need to do so but you should. Artix says you need to install the appropriate elogind package (elogind-$(INIT_SYSTEM); e.g. elogind-66). This isn't necessary if you aren't using elogind, but you most likely want elogind. Install base-devel if you plan on using the AUR or if you don't know what the AUR is yet.

It's also a good idea to install any utilities you'll need on the bootstrapped system. Text editors, network managers or utilities, and other administration tools, for example. Manual utilities such as man-db and others would also be useful.

Common utilities

A lot of common utilities such as lsblk(8) and more(1) are provided by util-linux which is not installed by default.

C language

Also see the build-base metapackage.

LUKS

cryptsetup and e2fsprogs.

Manual viewer

mandoc

Make

make

Login manager

elogind

Stream Pager

less

Task manager

top(1) comes with busybox; see its derivatives such as htop for curses-based alternatives.

Text editing

emacs and vim come to mind. A particularly shoddy attempt at ed(1) is provided by busybox but will please nobody. busybox's vi(1) on the other hand is a very useable implementation of the original.

fstab

See fstab(5).

postmarketOS requires that the localmount OpenRC service be enabled for the system to read fstab(5).

Arch and Artix have fstab generators at genfstab(8) and fstabgen(8) respectively in their installation scripts.

Mount LUKS encrypted partitions at boot

Sources

See cryptography#LUKS partitioning for how to make a LUKS partition.

cryptsetup-openrc provides a dmcrypt service for OpenRC. Make sure that service is added to runlevel boot and then configure /etc/conf.d/dmcrypt, and accordingly fstab. dmcrypt will need the UUID of the physical block device while fstab (if being configured with UUIDs will need the UUID of the decrypted block device in the device mapper.

Partitions and filesystems

See also

Don't use partitioners included with OS media where the same job can be done by GParted (which has live media available) or another good general-purpose partitioner. BSDs and Plan 9 are exceptions to this rule due to their exotic partitioning systems. Using utilities from a shell or TUIs does not make you "cooler" than someone who needs a GUI for partitioning; in some cases, messing up partitioning can have serious consequences, so it's always nice to have some idiot-proofing. I always partition my disks with the GParted live media.

You should do your own research on how you should partition your disks. I personally use separate partitions for /boot, /home, /, and swap. Your needs will vary.

Please note that a separate boot partition is mandatory if you intend to boot via (U)EFI. Check out the linked pages in the "See also" section.

Use mkfs(8) for creating filesystems and mount(8) for mounting partitions' filesystems.

postmarketOS: Random MAC address generation on Wifi

By default, postmarketOS will generate a random software MAC address when connecting to a new WLAN network. You can disable this by adding a NetworkManager rule. In /etc/NetworkManager/conf.d/ you can make a file with any name that has the following:

[device]
wifi.scan-rand-mac-address=no

On a live system you can then rc-service networkmanager restart to restart NetworkManager and have it load the new configuration.

WiFi

I use iwd(8) and iwctl(8). Some prefer NetworkManager and I believe that's the default on Debian. The Artix wiki suggests connman.