You are not logged in.

#1 2020-01-14 23:01:38

mjwurtz
Member
From: France - Alsace
Registered: 2019-11-09
Posts: 4

Installing Arch on a Surface Go without ethernet adapter

Just my experience, but I didn't find any mean for booting Linux from the internal SSD, so I had to find it by myself (look at the en of the post for the hint)

I recently bought a Surface go (dec. 2019) because I've read Linux worked fine on it... But it was less straightforward than expected.
With 128 MB of storage, i wanted to avoid a dual boot, but I have to install Windows to make a recovery usb stick, just in case...)
Since I don't have a usb-C to internet adapter, I used the following process :
- preparation as usual :
   - Boot (and alas register) Windows 10 in order to create a recovery usb stick for Windows 10S, disable bitlocker on windows, and shrink windows main partition to let a 20GB free space at the end of partition #3
   - restart with volume up pressed to enter system configuration : disable secure boot, change order to boot usb first
- installation
   - boot Arch iso with an usb stick : with fdisk delete the 1GB #4 partition (recovery) on internal SSD, use all the freed space to create a partition for root (21GB)
   - install arch following archwiki instruction for installing without internet access
   - reboot... and discover that Windows doesn't recognize the GRUB section in the EFI partition, so start again on Arch install stick and arch-chroot to access the system
   - once booted, it is safe to dismount the usb stick and replace it with another that contains the patches for the wifi controler. This is also time to create a usb UEFI boot for the system on SSD
   - reboot again, with the new UEFI boot, verify that wifi is working (after some trials and errors, I noticed that you should erase the board-2.bin file and replace board.bin, and probably firmware-6.bin in /lib/firmware/ath10k/QCA6174/hw3.0/)
   - now that wifi is working it's time for updating with pacman -Suy, and installing the rest of the system, including the linux-surface packages that gives you a better experience for the Surface hardware.
     NOTE : pacman -Suy without installing linux-surface update the firmware, including the wifi controller binaries, and you have to made again the patches and restart !
    At this point, I tried efibootmgr to modify the order of boot, but at reboot, the bios replaces Windows at first position...   So I had to keep the boot on usb (not too annoying since once booted, you don't need it anymore)
- Deleting Windows
   - Now that Linux is going well, I don't care about Windows and suppressed partition #2 (Microsoft reserved) and #3 (Windows), and put in the space freed a 8 GB swap partition + the /home partition (~ 100 GB)

- BOOTING ARCH FROM INTERNAL SSD
   - I tried different approach, including Refind, but nothing did the job.  I eventually found an easy solution : Since the hardware want absolutely to boot from EFI/Microsoft/Boot/bootmgfw.efi, ignoring any other directory or efi file,
     (moving the directory elsewhere => the system ask for a reinstallation of Windows) you only need to replace the content of this file by copying EFI/GRUB/grubx64.efi over it.  After that booting from internal disk works fine.

Hope this will be useful...


--
Michael

Offline

Board footer

Powered by FluxBB