This is my NixOS configuration! ^.^
Most of these 'docs' are for future me, for if I forget how this configuration was structured.
I am migrating to Codeberg, this repository will be archived. You can still access my dotfiles at: https://codeberg.org/StellarSt0rm/dotfiles
- Nix Package Versions
- Release Notes
- Release Status
- Find Song Name (Not related to NixOS, but it's a useful tool i use!)
- Split
global_modulesinto profiles, in case i add more devices that need vastly different stuff in the future?- Add an
extras/folder for niche “default” configurations, eg. Nvidia GPUs and Steam. - Profiles could be split as
light,full,devandgames? With a “Central”coreshared by all.
- Add an
- Remove all references to
home-librewolfonce this PR is backported
- Wait for GTK4 port of GNOME Disks.
- Wait for GTK4 port of Dconf Editor.
- Wait for Noteworthy to be available on nixpkgs.
- Follow the NixOS manual up until #Installing->5.
- See Creatign a bootable USB if needed.
- Install git (
nix-env -f '<nixpkgs>' -iA git) and clone this repo. - Set up the host and then run
git add .. See Adding A Host. - Install NixOS with
nixos-install --root /mnt --flake ./dotfiles#<host>. - Set a password for the user with
nixos-enter --root /mnt -c 'passwd gemini'. - Move the repo to
/mnt/home/geminiand reboot.
Make a new file in dotfiles/hosts/<hostname>/<hostname>.nix, and then add the host to dotfiles/flakes.nix.
This new file can contain custom configurations for the host.
Then copy the file at /etc/nixos/hardware-configuration.nix to dotfiles/hosts/<hostname>/<hostname>-hardware.nix otherwise the host wont boot!
Follow how it's implemented on other hosts to do it correctly!
Caution
The host must define in their flake outputs section these variables in specialArgs:
host-system = {
hostname = "<hostname>";
initial-version = "<first_installed_nixos_version";
};
gpg-keys = {
master-id = "<key_id>";
auth-keygrip = "<auth_capable_subkey_keygrip>";
};
More detailed instructions for the GPG keys section here.