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 setfont /usr/share/consolefonts/ter-132n.psf.gz
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 /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
Install system:
BOOTLOADER=none setup-disk -m sys -k edge -s 0 /mnt
Chroot:
chroot /mnt /bin/sh
Generate Unified Kernel Image as Bootloader
apk add secureboot-hook gummiboot-efistub efibootmgr
Exit chroot:
exit
Blkid:
BLKUUID=$(blkid /dev/sda2 | sed 's|.*UUID="||' | sed 's|".*||')
Cmdline:
echo cmdline=\"cryptroot=UUID=$BLKUUID cryptdm=root rootfstype=ext4 modules=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|nvme|nvme cryptsetup|' /mnt/etc/mkinitfs/mkinitfs.conf
Chroot again:
chroot /mnt /bin/sh
Create dummy efi keys:
apk add efi-mkkeys efi-mkkeys -s "Your Name" -o /etc/uefi-keys
Generate image:
apk fix kernel-hooks
Set root password:
passwd
Exit chroot and power off:
exit poweroff