Find a file
Henrik Lissner 5866008d0c
Fix bin/{mov2gif,bspwm/presel}
Shifting the first is no longer necessary for nix-shell scripts.
2020-11-27 13:59:12 -05:00
bin Fix bin/{mov2gif,bspwm/presel} 2020-11-27 13:59:12 -05:00
config Refactor theme system, add 'hey theme' & reload handlers 2020-10-25 15:52:50 -04:00
hosts Update linode instructions 2020-11-17 15:27:50 -05:00
lib Refactor flake 2020-10-26 05:48:12 -04:00
modules Switch to emacsPgtkGcc 2020-11-27 13:58:06 -05:00
overlays Rewrite to use flakes 2020-10-11 01:31:33 -04:00
packages Rewrite to use flakes 2020-10-11 01:31:33 -04:00
.gitignore Rewrite to use flakes 2020-10-11 01:31:33 -04:00
default.nix Move to nixpkgs/master 2020-10-30 01:41:35 -04:00
flake.lock Switch to emacsPgtkGcc 2020-11-27 13:58:06 -05:00
flake.nix Move to nixpkgs/master 2020-10-30 01:41:35 -04:00
LICENSE Update copyright year 2020-01-12 18:14:27 -05:00
README.md Update screenshot links 2020-10-26 14:18:12 -04:00

Made with Doom Emacs NixOS 20.09

Hey, you. You're finally awake. You were trying to configure your OS declaratively, right? Walked right into that NixOS ambush, same as us, and those dotfiles over there.


Shell: zsh + zgen
DM: lightdm + lightdm-mini-greeter
WM: bspwm + polybar
Editor: Doom Emacs (and occasionally vim)
Terminal: st
Launcher: rofi
Browser: firefox
GTK Theme: Ant Dracula

Quick start

  1. Yoink NixOS 20.09 (must be newer than Sept 12, 2020 for nixos-install --flake).
  2. Boot into the installer.
  3. Do your partitions and mount your root to /mnt
  4. git clone https://github.com/hlissner/dotfiles /mnt/etc/nixos
  5. Install NixOS: nixos-install --root /mnt --flake /mnt/etc/nixos#XYZ, where XYZ is your hostname. Use #generic for a simple, universal config.
  6. OPTIONAL: Create a sub-directory in hosts/ for your device. See host/kuro as an example.
  7. Reboot!

Management

And I say, bin/hey. What's going on?

Command Description
hey rebuild Rebuild this flake (shortcut: hey re)
hey upgrade Update flake lockfile and switch to it (shortcut: hey up)
hey rollback Roll back to previous system generation
hey gc Runs nix-collect-garbage -d. Use sudo to clean system profile
hey push REMOTE Deploy these dotfiles to REMOTE (over ssh)
hey check Run tests and checks for this flake
hey show Show flake outputs of this repo

Frequently asked questions

  • Why NixOS?

    Because declarative, generational, and immutable configuration is a godsend when you have a fleet of computers to manage.

  • How do I change the default username?

    1. Set USER the first time you run nixos-install: USER=myusername nixos-install --root /mnt --flake #XYZ
    2. Or change "hlissner" in modules/options.nix.
  • How do I "set up my partitions"?

    My main host has a README you can use as a reference. I set up an EFI+GPT system and partitions with parted and zfs.

  • How 2 flakes?

    It wouldn't be the NixOS experience if I gave you all the answers in one, convenient place.