Sway on Laptop
Quq's guide for installing Alpine with Sway, for latitude 7370.
Download Alpine Linux, verify checksum then
dd if=alpine-extended.iso of=/dev/sdb
Known issues: screen sharing appears to be broken.
More details forth-coming.
Press f12
at boot to enter Setup, wipe disk under Maintenance>Data Wipe. Check Wipe on Next Boot check box. Exit.
Plug in external storage device with alpine extended on it. Let it boot.
Login as root. There is no password.
Set up internet connection
# -r is needed for starting the network after configuration setup-interfaces -r
Initialize: wlan0 Enter SSID: my net Password, DHCP.
Set up SSH server:
setup-sshd # example: ssh server: openssh allow root: "prohibit-password" or "yes" ssh key: "none" or "<public key>"
Configurations set here will be copied verbatim to the installed system.
Set root password or /root/.ssh/authorized_keys. Choose a strong root password, as it will be copied to the installed system. However, authorized_keys is not copied.
Set up time:
setup-ntp chrony
Set up repos:
setup-apkrepos -c # show mirror list, then select geographically nearest mirror # -c argument enables community repo
Larger font for high res screen:
apk add terminus-font
Partition the disk:
apk add parted cryptsetup e2fsprogs parted --script --align=optimal /dev/sda -- mklabel gpt mkpart EFI 1MiB 4GiB mkpart alpine 4GiB -1MiB set 1 esp on mkfs.vfat /dev/sda1 cryptsetup luksFormat --type luks2 /dev/sda2 cryptsetup luksOpen /dev/sda2 alpine-luks mkfs.ext4 /dev/mapper/alpine-luks
Mount.
mount -t ext4 /dev/mapper/alpine-luks /mnt mkdir /mnt/boot mount -t vfat /dev/sda1 /mnt/boot
Generate Unified Kernel Image as Bootloader
apk add secureboot-hook gummiboot-efistub efibootmgr apk add efi-mkkeys
Install system:
BOOTLOADER=none setup-disk -m sys -k edge -s 0 /mnt
Blkid:
ROOTUUID=$(blkid /dev/sda2 | sed 's|.*UUID="||' | sed 's|".*||')
Cmdline:
echo cmdline=\"root=/dev/mapper/alpine-luks cryptroot=UUID=$ROOTUUID cryptdm=alpine-luks rootfstype=ext4 modules=sd-mod,usb-storage,ext4\" >> /mnt/etc/kernel-hooks.d/secureboot.conf
Disable mkinitfs trigger:
echo 'disable_trigger=yes' >> /mnt/etc/mkinitfs/mkinitfs.conf
Enable cryptroot in mkinitfs:
sed -i 's|ext4|ext4 cryptsetup|' /mnt/etc/mkinitfs/mkinitfs.conf
Chroot again:
chroot /mnt /bin/sh
Create dummy efi keys:
efi-mkkeys -s "Your Name" -o /etc/uefi-keys
Generate image:
apk fix kernel-hooks
Exit chroot and power off:
exit poweroff