Quick and Easy Encrypted Install
I've found a way to perform a quick encrypted install, and I'd like to share my experience. This setup was made with an Artix image using KDE, ext4 file system, no lvm, and unencrypted boot partition. It should also work with an encrypted boot partition, but I haven't tested it.
Download the Artix ISO with your preferred desktop environment (KDE in this example). Start the Calamares installer.
When you reach the partitioning step:
Create a new LUKS ext4 partition.
Do not click on "Modify Partition" as that will not work. Instead, delete the old partition and create a new one.
Continue with the installation process. After installation is complete, reboot into the new system. It should successfully reboot on the first attempt after installation. If it doesn't, chroot and follow part 2 below.
Update your system using pacman -Syu, choose not to reboot.
Whenever initramfs is updated, the system becomes unbootable because the Calamares installer does not work as expected.
Part 2: Fixing Boot Issues
Open /etc/mkinitcpio.conf:
nano /etc/mkinitcpio.conf
Find the line that starts with HOOKS=(base,.... It should be HOOKS, not #HOOKS.
Add encrypt before filesystem.
It should now look like this: HOOKS=(base udev ... encrypt filesystem ...
Save and exit.
Run:
mkinitcpio -P
Verify /etc/default/grub contains the correct cryptdevice UUID. It should look something like this: cryptdevice=UUID=correspond_to_the_UUID_of_encrypted_partition
Reboot.
Now, your system will boot successfully after every reboot and even after updates.
Part 3: Get Rid of Creepy PulseAudio
Install PipeWire. For KDE users, it can be installed with:
pacman -Rns plasma-pa pulseaudio pulseaudio-bluetooth pulseaudio-zeroconf
pacman -S --needed pipewire pipewire-pulse pipewire-alsa wireplumber bluez bluez-utils avahi plasma-pa
As a regular non-root user, create a file named start_pipewire.sh (or other) in your home (or other) directory with the following content:
#!/bin/bash
# kill any existing pipewire instance to restore sound
pkill -u "$USER" -fx /usr/bin/pipewire-pulse 1>/dev/null 2>&1
pkill -u "$USER" -fx /usr/bin/wireplumber 1>/dev/null 2>&1
pkill -u "$USER" -fx /usr/bin/pipewire 1>/dev/null 2>&1
exec /usr/bin/pipewire &
# wait for pipewire to start before attempting to start related daemons
while [ "$(pgrep -f /usr/bin/pipewire)" = "" ] ; do
sleep 1
done
# start wireplumber
exec /usr/bin/wireplumber &
# start pipewire-pulse
exec /usr/bin/pipewire-pulse &
Save the file and make it executable:
chmod +x start_pipewire.sh
Add this script to KDE's autorun at login.
Now, your sound system (including Bluetooth) will be orchestrated by PipeWire instead of PulseAudio.