2025-07-31 00:58:33 +02:00
2025-07-31 00:58:33 +02:00
2025-07-31 00:58:33 +02:00
2025-07-31 00:58:33 +02:00
2025-05-04 03:25:42 +02:00
2025-05-04 03:25:42 +02:00
2025-05-04 03:25:42 +02:00
2025-07-26 21:52:25 +02:00
2025-07-31 00:58:33 +02:00

NixOS Configuration

Personal NixOS configuration for my machines, using Nix Flakes for reproducible and shareable setups.

Repository Structure

  • flake.nix: Main entry point for the Nix Flake, defining NixOS and home-manager configurations.
  • hosts/: Contains the host-specific NixOS configurations.
  • system/: Holds system-wide configuration modules that can be shared across different hosts. This includes things like boot settings, desktop environments, hardware configurations, networking, packages, security, and system services.
  • users/: Manages user-specific configurations. It's split into modules for reusable home-manager configurations and phundrak for my personal configuration.
  • keys/: Public keys for various machines.
  • secrets/: Encrypted secrets managed with sops-nix.

Usage

System Management

Update flake dependencies:

nix flake update

Build and switch to a new system configuration:

sudo nixos-rebuild switch --flake .#<hostname>

Using the Nix Helper (nh) tool:

# Build and activate a new configuration, making it the boot default
nh os switch

# Build a new configuration and make it the boot default
nh os boot

# Build and activate a new configuration (without making it the boot default)
nh os test

# Just build a new configuration
nh os build

Home Configuration

Update and switch to a new home configuration:

nh home switch

Format Nix files (using Alejandra):

nix fmt .

Contributing

Feel free to fork this repository and make your own changes. If you have any improvements or suggestions, please open an issue or submit a pull request.

Description
No description provided
Readme 308 KiB
Languages
Nix 98.6%
CSS 1.4%