Document librem laptop 15v3

This commit is contained in:
Niklaus Giger 2020-03-23 20:19:54 +01:00
parent f4364f2457
commit c6722b86bf
2 changed files with 41 additions and 1 deletions

View file

@ -73,7 +73,7 @@ See code for all available configurations.
| PC Engines APU | `<nixos-hardware/pcengines/apu>` |
| [Raspberry Pi 2][] | `<nixos-hardware/raspberry-pi/2>` |
| [Samsung Series 9 NP900X3C][] | `<nixos-hardware/samsung/np900x3c>` |
| [Purism Librem 13v3][] | `<nixos-hardware/purism/librem/13v3>` |
| [Purism Librem 13v3/15v3][] | `<nixos-hardware/purism/librem/13v3>` |
| Supermicro A1SRi-2758F | `<nixos-hardware/supermicro/a1sri-2758f>` |
| Supermicro X10SLL-F | `<nixos-hardware/supermicro/x10sll-f>` |
| [Toshiba Chromebook 2 `swanky`][] | `<nixos-hardware/toshiba/swanky>` |

View file

@ -1,3 +1,6 @@
This config is for [Librem 13v3](https://puri.sm/products/librem-13/) and [15v3](https://puri.sm/products/librem-15/) Laptops from Purism.
Librem comes with Coreboot + SeaBIOS payload. That means EFI boot is not
possible. Use `fdisk` to partition hard drive, and GRUB as a bootloader:
@ -10,3 +13,40 @@ possible. Use `fdisk` to partition hard drive, and GRUB as a bootloader:
};
}
```
## Adding a PureOS partition to the GRUB menu
I first assume that `boot.loader.grub.useOSProber = true;` should be sufficient.
However GRUB was not able to identify the disks correctly and it took me several
reinstallation till setting `boot.loader.grub.fsIdentifier= "provided";` and using
boot.loader.grub.extraEntries allowed me to dual boot NixOS and PureOS.
Be aware that each time the PureOS updates the /boot/grub/grub.cfg you will be unable
to boot into NixOS unless you patch grub.cfg manually again.
Therefore: If you want to be able to boot into your old PureOS distribution
add the following lines, assuming that you have a separate boot partition
Adapt linux version and the UUID to your disk!!
```nix
{
boot.loader.grub.useOSProber = false;
boot.loader.grub.fsIdentifier= "provided";
boot.loader.grub.extraEntries = ''
menuentry "PureOS with linux 4.19.0-5-amd64 on /dev/sdb2 " {
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 ef7a4dcf-8cc4-4870-b860-3ed64906f9b9
else
search --no-floppy --fs-uuid --set=root ef7a4dcf-8cc4-4870-b860-3ed64906f9b9
fi
linux /vmlinuz-4.19.0-5-amd64 root=UUID=43899f26-04f2-4ccb-b52a-c9441f1a1a6d ro quiet splash resume=UUID=923317f8-d8bb-4e1f-bca3-f36a556de609 # $vt_handoff
initrd /initrd.img-4.19.0-5-amd64
};
}
```