-
Notifications
You must be signed in to change notification settings - Fork 0
Arch Linux
- Install the necessary tools:
sudo pacman -S tpm2-tss tpm2-tools - Identify the LUKS partition (the one with
FSTYPEascrypto), and note down itsNAMEandUUID:lsblk -f - Enroll the TPM keyslot:
sudo systemd-cryptenroll --tpm2-device=auto --tpm2-pcrs=7 /dev/<NAME> - Open
/etc/mkinitcpio.conf, and find theHOOKS=(...)line. Within the braces, replaceudevwithsystemd, andencryptwithsd-encrypt. - Open
/etc/default/grub, and find the lineGRUB_CMDLINE_LINUX="...". Look forcryptdevice=<UUID>=...:root, and replace it withrd.luks.name=<UUID>=root root=/dev/mapper/root - Regenerate and reboot:
sudo mkinitcpio -P sudo grub-mkconfig -o /boot/grub/grub.cfg
- Install Plymouth:
sudo pacman -S plymouth - Open
/etc/mkinitcpio.conf, and find theHOOKS=(...)line. Within the braces, addplymouthaftersystemd, but beforesd-encrypt[!IMPORTANT] - Find the
MODULES(...)line, and addamdgpuandbtrfsto it. - Open
/etc/default/grub, and add the following toGRUB_CMDLINE_LINUX_DEFAULT="...":quiet splash loglevel=3 rd.systemd.show_status=auto rd.udev.log_priority=3 vt.global_cursor_default=0 - Regenerate and reboot:
sudo mkinitcpio -P sudo grub-mkconfig -o /boot/grub/grub.cfg
On Arch Linux, Steam download speeds may be significantly lower than the actual ISP bandwidth (e.g., capping at 30 Mbps on a 400 Mbps line). This occurs because the Steam Linux client is exceptionally "chatty"; it sends individual DNS requests for the thousands of small data "chunks" it pulls from the Content Delivery Network (CDN).
Because Arch Linux does not enable a local DNS cache by default, every chunk request requires a round-trip to the ISP's DNS servers. These micro-delays (20–50ms each) aggregate into a massive performance bottleneck that prevents the download stream from reaching full network saturation.
Enabling a local DNS resolver moves the lookup process from the network (milliseconds) to local memory (nanoseconds). This effectively eliminates the "handshake" delay for each data chunk.
This starts the systemd-resolved daemon, which acts as a local DNS stub listener on 127.0.0.53.
sudo systemctl enable --now systemd-resolvedFor applications to actually use the local cache, /etc/resolv.conf must point to the systemd-resolved stub. The most robust way to do this on Arch is via a symbolic link:
sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf