No Description

xd1le 2fe2821458 alacritty: cemant and base16-black-metal-immortal colors 2 years ago
alacritty 2fe2821458 alacritty: cemant and base16-black-metal-immortal colors 2 years ago
chromium c4081bbdca ⚙ chromium: increase monospace font size on github 6 years ago
compton 25f7ab78de ⚙🎁 polybar: colors 6 years ago
emacs 2fe2821458 alacritty: cemant and base16-black-metal-immortal colors 2 years ago
fontconfig 9d49ecd3bd ⚙ update 4 years ago
ghci 0aa402f764 feat(ghci): vi bindings 7 years ago
git 2b8b0967b2 git: use 'main' as initial branch 2 years ago
guile 8200aa4b8c refactor(bin): remove some scripts to move them to [1] 6 years ago
herbstluftwm 786dbe0623 ⚙ terminal: switch to using alacritty 4 years ago
interception-tools c6174ee38f nixos: enable interception tools 3 years ago
iosevka 0c8339ab75 iosevka: separate iosevka customization from iosevka-custom nix package 2 years ago
latexmk 7cad720a41 🎁 latexmk: init latexmkrc 6 years ago
mpd 4d2a3e4ded refactor(mpd): new music library location 6 years ago
mpv 11909d84bf ⚙ mpv: add quick chapter navigation keybindings 6 years ago
nixos fcd313b0dd nixos: use latest janet release 2 years ago
pandoc 76e550be28 ♻ nixos/pkgs/xwinwrap + pandoc: add some uncommited files in case they 5 years ago
polybar 9d49ecd3bd ⚙ update 4 years ago
readline e37f262ec8 refactor(readline): place .inputrc in the right place 6 years ago
stow adb1c72d74 feat(stow): add vim swap files to the default global ignore list 8 years ago
sxhkd bcfebed62a ⚙ sxhkd: up and down arrow keys are still sometimes useful to use in web 4 years ago
tridactyl 85075a8b73 🎈 tridactyl: init 4 years ago
vim 857aa4305e update 3 years ago
x a045727ae8 ⚙ nixos: switch to dummy startx display manager 4 years ago
zathura f00d460de6 🎁 zathura: init zathurarc 6 years ago
zsh 857aa4305e update 3 years ago
.gitignore 15ed3c536f refactor(nixos): add nixpkgs submodule back again 6 years ago
bootstrap 9d49ecd3bd ⚙ update 4 years ago
copying a7bdb5314b ⚖ copying: asl2.0 to gplv3+ 4 years ago
flake.lock 3b4facd9e4 nixos: update nixos-unstable 2 years ago
flake.nix 2cdfc814df update 2 years ago cb7a8cb480 📝 readme: keep some installation instructions here for now 4 years ago


  1. Download latest nixos-unstable image from

  2. Make a bootable usb. For example:

    # Obviously run `lsblk -f` first to get the correct 'of' path to your usb.
    # NOTE: Not using the correct 'of' path could erase your hard drive so be
    # very careful to use the right one!
    dd if=path/to/image of=/dev/sdb # As root.
  3. Boot into live image and log in as root with empty password (if it doesn't automatically log you in).

  4. Get internet access.

    1. ip a will bring up a list of network interfaces.

    2. iwlist <interface> scan | less to see if your wifi is available.

    3. Edit /etc/wpa_supplicant.conf with your network details.

    4. wpa_supplicant -B -i<interface> -c/etc/wpa_supplicant.conf -Dwext.

    5. dhclient <interface> or dhcpcd <interface> if dhclient command doesn't exist.

  5. Partition and format disks.

    • lsblk -f lists your devices.

    • mkfs.ext4 -L nixos <device> to format a device.

    • mkswap -L swap <device> to make a swap partition.

  6. (optional) Activate swap device: swapon <device>.

  7. Mount target filesystems under /mnt:

    mount /dev/disk/by-label/nixos /mnt
  8. Generate /etc/nixos configuration files:

    nixos-generate-config --root /mnt
  9. Inspect the generated /mnt/etc/configuration.nix to see if any bootloader options were put in there to hint on which bootloader options to use.

  10. If using systemd-boot, mount the boot partition under /mnt/boot and perform step 8 again to get an updated hardware-configuration.nix with the /mnt/boot filesystem entry.

  11. Backup hardware-configuration.nix:

    cp /mnt/etc/nixos/hardware-configuration.nix \
  12. Edit hardware-configuration.modified.nix to put the correct bootloader options in it, and also put system.stateVersion from configuration.nix into hardware-configuration.modified.nix.

  13. Copy wpa_supplicant.conf to target filesystem:

    cp /etc/wpa_supplicant.conf /mnt/etc

    This allows wpa_supplicant to automatically connect to internet when rebooting into the installed system.

  14. nixos-install -I nixos-config=

  15. Reboot and login with root and set password for user "u":

    passwd u
  16. Login as user and retrieve this repository:

    git clone
  17. ./dots/bootstrap.

  18. sudo nixos-rebuild boot and reboot (with sudo shutdown now).