nixos-config
nixos-config copied to clipboard
KISS NixOS configuration based on Flakes & flake-parts (supports macOS too)
This repository contains the Nix / NixOS configuration for all of my systems. Start from flakes.nix (see Flakes).
To build,
# First, edit nixosConfigurations or darwinConfigurations in flake.nix to add
# your system's hostname. And then change `userName` to your username.
make
Install notes
- NixOS Linux
- Install NixOS
- Hetzner dedicated from Linux Rescue system: https://github.com/serokell/nixos-install-scripts/pull/1#pullrequestreview-746593205
- Digital Ocean: https://github.com/elitak/nixos-infect
- X1 Carbon: https://www.srid.ca/x1c7-install
- Windows (via WSL): https://github.com/nix-community/NixOS-WSL
- Clone this repo at
/etc/nixos - Edit
flake.nixand add your Linux's hostname in thenixosConfigurationsset, as well as updateuserName. - Run
make. That's it. Re-open your shell.
- Install NixOS
- macOS:
- Install Nix normally (multi-user)
- Install nix-darwin
- This will create a
~/.nixpkgs/darwin-configuration.nix, but we do not need that.
- This will create a
- Clone this repo anywhere
- Edit
flake.nixand add your Mac's hostname in thedarwinConfigurationsset, as well updateuserName. - Run
make.[^cleanup] That's it. Re-open your shell.
[^cleanup]: You might have to rm -rf /etc/nix/nix.conf, so our flake.nix can do its thing.
Directory layout
home: home-manager confignixos: nixos config (includes nix-darwin)systems: top-level configuration.nix('ish) for various kinds of system
Tips
- To update NixOS (and other inputs) run
nix flake update