dotfiles
Different dotfiles which i use every day
OS: | NixOS |
WM: | XMonad |
sh: | zsh (with fastest plugin-manager) |
font: | (Iosevka + IBM Plex) or Pragmata-Pro |
browser: | google-chrome / Firefox |
editor: | Emacs |
term: | st |
Quick start
-
Acquire NixOS 22.05 or newer:
# Download nixos-unstable wget -O nixos.iso https://channels.nixos.org/nixos-unstable/latest-nixos-minimal-x86_64-linux.iso # Write it to a flash drive cp nixos.iso /dev/sdX
-
Boot into the installer.
-
Switch to root user:
sudo su -
-
Do your partitions and mount your root to
/mnt
(for example). -
Install these dotfiles:
nix-shell -p git nixFlakes # Set HOST to the desired hostname of this system HOST=... # Set USER to your desired username (defaults to hlissner) USER=... git clone https://github.com/lenivaya/dotfiles /etc/dotfiles cd /etc/dotfiles # Create a host config in `hosts/` and add it to the repo: mkdir -p hosts/$HOST nixos-generate-config --root /mnt --dir /etc/dotfiles/hosts/$HOST rm -f hosts/$HOST/configuration.nix cp hosts/t440p/default.nix hosts/$HOST/default.nix vim hosts/$HOST/default.nix # configure this for your system; don't use it verbatim! git add hosts/$HOST # Install nixOS USER=$USER nixos-install --root /mnt --impure --flake .#$HOST # If you get 'unrecognized option: --impure', replace '--impure' with # `--option pure-eval no`. # Then move the dotfiles to the mounted drive! mv /etc/dotfiles /mnt/etc/dotfiles
⚠️ Don't forget to change yourroot
and$USER
passwords! They are set tonixos
by default.
Management
Behold. bin/hey
.
Usage: hey [global-options] [command] [sub-options]
Available Commands:
check Run 'nix flake check' on your dotfiles
gc Garbage collect & optimize nix store
generations Explore, manage, diff across generations
help [SUBCOMMAND] Show usage information for this script or a subcommand
rebuild Rebuild the current system's flake
repl Open a nix-repl with nixpkgs and dotfiles preloaded
rollback Roll back to last generation
search Search nixpkgs for a package
show [ARGS...]
ssh HOST [COMMAND] Run a bin/hey command on a remote NixOS system
swap PATH [PATH...] Recursively swap nix-store symlinks with copies (or back).
test Quickly rebuild, for quick iteration
theme THEME_NAME Quickly swap to another theme module
update [INPUT...] Update specific flakes or all of them
upgrade Update all flakes and rebuild system
Options:
-d, --dryrun Don't change anything; preform dry run
-D, --debug Show trace on nix errors
-f, --flake URI Change target flake to URI
-h, --help Display this help, or help for a specific command
-i, -A, -q, -e, -p Forward to nix-env