This is the method I used to install Arch on the yoga slim 7x. This is from memory so I may have forgotten things
- disable bitlocker in windows
- resize the windows partition
- disable secure boot in BIOS
- Download the Debian 12 image from https://git.codelinaro.org/linaro/qcomlt/demos/debian-12-installer-image
- write it to USB, use gparted to resize the partition
- download the latest (ancient) arch linux arm generic image from https://archlinuxarm.org/platforms/armv8/generic
- unpack the initrd and add this tarball
- also add some tools like mkfs.ext4 and fdisk (I downloaded debian 12 versions and unpacked the necessary libs and binaries)
- boot from the USB (use F12)
- once in installer, press Fn+alt+F2 to get to another TTY
- create a wpa_supplicant file and start wpa_supplicant
- back on tty1, continue the installer until it has setup networking
- return to tty2
- create /boot and / partitions (and any other you want)
- mount / on /mnt
- unpack the tarball into /mnt
- mount /boot on /mnt/boot
- bind mount /sys, /dev, /proc and /run in /mnt
- chroot in /mnt
- set the date with the
date
command (otherwise signature verification fails) - use
pacman-key --init
pacman-key --populate archlinuxarm
- update with
pacman -Syyu
- copy kernel, initrd and device tree from the USB
- do the rest of Arch setup
- do some of the steps outlined by linaro, in particular the zink environment
- exit the chroot
- edit the USB grub to load from the nvme
- reboot with F12 and boot from the nvme
- build newer kernel, initrd and dtb
- get firmware from https://github.com/Seraphin-/linux-firmware-x1e80100-lenovo-yoga-slim7x
- I replaced the windows nvme with a bigger one that has only linux, that way I was able to update the UEFI boot manager to load Arch without the USB stick
- Download shellaa64.efi and place it on USB stick
- use the following grub entry:
menuentry "UEFI Shell" { insmod fat insmod chain search --no-floppy --set=root --file /shellaa64.efi chainloader /shellaa64.efi }
- boot to UEFI shell
- use the commands in the debian 12 image explanation to set Arch as first boot entry
- install mesa from this PKGBUILD https://github.com/joske/PKGBUILDs-x1e/tree/master/mesa
Here's the image I used for installation: x1e-endeavouros.img.7z
I've built Calamares while booted from USB from this PKGBUILD with only slight modifications and a dirty hack described here. After
pacman -U
I overwrote the configs in/etc/calamares/
with configs fromcalamares_config.tar.gz
(same GDrive folder as the image) and installed with systemd-boot.The partitioning is the following:
/efi
/boot
(XBOOTLDR)/root
(needs to haveendeavouros
label and be f2fs)/home
AFAIR it was necessary to create
/home/liveuser
for Calamares to work,These configs still need some work (probably
eos_bootloader
module needs to be dropped), so after installation succeeds, it won't boot.So one would need to
chroot
into the installed system, manually installlinux-x1e
andx1e-uki
packages (second is optional; both packages are available in my repo) and create a simple systemd-boot config in/boot/loader/entries/
and then it should boot.If installing
x1e-uki
, make sure to first create/etc/kernel/cmdline
file: