midori-config/README.md

51 lines
1.6 KiB
Markdown

Inspiration from https://gitlab.aliens-lyon.fr/AliENS/infrastructure
## Make a disk image
From another linux system, create the build script
`nix build .#nixosConfigurations.midori.config.system.build.diskoImagesScript`
Write your disk password to somewhere, like /tmp/secret.key,
then build the image calling the result:
`./result --build-memory 8192 --pre-format-files /tmp/secret.key secret.key`
## VMC
VMC has a weird mapping for keys (Qwerty-1 * bepo)
To remap, use the following python script
```Python
a = "abcdefghijklmnopqrsuvx,.'ABCDEFHIJKLMOPQRSUX"
b = "akxipe,cdtsrq'ljbouv.yghmAKXIPECDTSRQLJBOUVY"
d = dict()
for i in range(len(b)):
d[b[i]] = a[i]
p = "motdepasse"
pp = ''.join([c for c in p if c in b])
pc = ''.join([d[c] for c in pp])
print("Mot de passe:",pp)
print("Mot de passe:",pc)
```
## Install with nixos-anywhere
```Bash
# Write disk encryption password to secret.key
echo "motdepasse" > secret.key
# Connect to ssh, run kexec to nixos install rom, and format disko
nix run github:nix-community/nixos-anywhere -- --flake '.#midori' --target-host root@109.94.170.38 --disk-encryption-keys /tmp/secret.key ./secret.key --phases kexec,disko
# Mount persistence directories that nixos will install stuff into
mkdir -p /mnt/persistence/nix
mkdir -p /mnt/persistence/var/lib/nixos
mount --bind -m -o X-fstrim.notrim /mnt/persistence/nix /mnt/nix
mount --bind -m -o X-fstrim.notrim /mnt/persistence/var/lib/nixos /mnt/var/lib/nixos
# Run the install phase
nix run github:nix-community/nixos-anywhere -- --flake '.#midori' --target-host root@109.94.170.38 --disk-encryption-keys /tmp/secret.key ./secret.key --phases install
```