Go to file
Andreas Zweili 651a463ffc Pin nixos-hardware to working commit
A recent change in nixos-hardware requires kernel version 6.1 for Raspberry
Pis. Howeve in 22.11 we only have access to 5.X
2023-05-22 15:34:33 +02:00
custom Bump the version 2022-12-30 17:49:54 +01:00
hardware Revert "Remove configs related to qtile" 2023-05-10 09:23:43 +02:00
home-manager Update display configuration 2023-05-22 11:24:57 +02:00
lib Provide unstable to home-manager 2023-03-21 09:43:06 +01:00
modules Update tt-rss 2023-05-22 15:13:27 +02:00
scripts Skip mobile when update all servers 2023-04-23 13:47:43 +02:00
scrts Fix the DKIM setup 2023-05-16 20:30:59 +02:00
systems Enable hidpi config 2023-05-22 11:45:00 +02:00
.envrc extend the development environment 2022-03-18 18:06:59 +01:00
.gitignore Update gitignore 2022-11-11 20:42:52 +01:00
.gitmodules Remove unused submodule 2022-11-11 20:42:12 +01:00
LICENSE
README.md Update README 2022-11-16 22:23:14 +01:00
flake.lock Pin nixos-hardware to working commit 2023-05-22 15:34:33 +02:00
flake.nix Pin nixos-hardware to working commit 2023-05-22 15:34:33 +02:00
requirements.txt rename requirements 2021-12-20 12:23:38 +01:00
shell.nix Update shell packages to Python 310 2023-01-30 15:06:09 +01:00

README.md

nixos

This repository contains my configuration for my Nixos systems. I don't provide any garantuees that it will work on other systems. In addition some of the scripts required for installation will destroy your data when used.

VM installation

This allows you to setup a VM with minimal effort. However this requires some prerequisites.

  • A VM running the minimal NixOS ISO reachable with SSH under nixos@nixos.2li.local.
  • The VM runs UEFI.
  • You've set a password for the nixos user.
  1. ./scripts/install_new_vm.sh
  2. Provide the required information and wait until the script is finished.
  3. Reboot and profit!

Raspberry Pi installation

  1. Add the new system to flake.nix.
  2. Build the image with scripts/build-raspi-image.sh SYSTEMNAME
  3. Flash the image to an SD card dd if=~/Downloads/SYSTEMNAME.img of=/dev/mmcblk0 bs=4M.
  4. After you've booted the Pi get the new SSH key with ssh-keyscan hostname.custom.domain and add it to scrts/secrets.nix.
  5. Then login into the new Pi and mount the FIRMWARE partition with sudo mkdir -p /mnt && sudo mount /dev/disk/by-label/FIRMWARE /mnt and make sure that your config.txt looks like ./systems/raspi4/config.txt
  6. Change the password

x86 installation

  1. curl https://git.2li.ch/Nebucatnetzer/nixos/archive/master.tar.gz | tar xz
  2. cd nixos && nix-shell
  3. sudo python3 scripts/format-disk.py
  4. sudo nixos-install --no-root-passwd --root /mnt --impure --flake .#SYSTEMNAME

Update remote systems

Simply run the script scripts/update_all_systems.xsh and it will iterate over all defined systems. The script requires Xonsh but can be easily adapted to BASH or similar.

Non-Nixos System

  1. scripts/install-home-manager.sh