This repository contains a modular NixOS configuration designed to support multiple machines with profile support distributed across those machines.
flake.nix
: The main entry point for the NixOS configurations.outputs.nix
: Literally the flake outputs, although it aggregrates through a series of many function calls.secrets
: Secures storage for sensitive information (e.g., API keys, passwords)..sops.yaml
: SOPS-NIX configurationLICENSE
: A standard MIT License for ease of distribution and modification.README.md
: This file, which provides an overview of the repository.
- Clone the repository:
git clone https://github.com/TahlonBrahic/nix-config.git .
- Define your own configuration in outputs or choose a pre-defined configuration:
nix --extra-experimental-features 'nix-command flakes' run github:LGUG2Z/JeezyVim ./_disko.nix
If you choose to use an already established configuration it is important to define your hardware specifications as either or a module or vars.
- Rebuild your system:
sudo nixos-rebuild switch --flake .#hostname
Replace hostname
with the appropriate hostname configured in ./outputs/architecture/src/hostname.nix