2.1 KiB
NixOS Config
What is this repository?
While I still run Arch btw
, I've been experimenting with NixOS and quite like it! My configuration is not ready for daily use yet, but I'm learning inside a VM. This repository is where I'm working on my NixOS dotfiles, and once ready, I will daily drive Nix btw
instead.
Notes for Myself
To get this running on a NixOS system, I will start by cloning the repo:
git clone https://gitlab.com/librephoenix/nixos-config.git /path/to/my/config/folder
To get the hardware configuration on a new system, I can other copy from /etc/nixos/hardware-configuration.nix
or run:
sudo nixos-generate-config --dir /dotfiles/path/system
Then, I can switch into the system configuration by running:
cd /dotfiles/path
sudo nixos-rebuild switch --flake .#snowfire
Home manager can be installed with:
nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
nix-channel --update
nix-shell '<home-manager>' -A install
Then, my home-manager configuration can be installed with:
home-manager switch --flake #.emmet
This loads in my convenience script phoenix
, which replaces frequently used nix and nixos commands with more user friendly ones, namely:
-
phoenix sync
to build and switch system and home configurationphoenix sync system
to build and switch only system configurationphoenix sync user
to build and switch only home configuration
phoenix update
to update flake inputs-
phoenix gc
to garbage collect- If no argument is given, it cleans anything older than 30 days
- If a time argument is supplied (i.e. 10d), it cleans stuff older than that (10 days in this example)
- If the argument
full
is given, it deletes all previous generations