mjallen18 8c93a6473d nuc
2026-03-16 17:03:19 -05:00
2026-01-27 11:13:58 -06:00
2026-02-19 18:35:13 -06:00
sf
2026-03-16 16:41:46 -05:00
sf
2026-03-16 16:41:46 -05:00
nuc
2026-03-16 17:03:19 -05:00
sf
2026-03-16 16:41:46 -05:00
nuc
2026-03-16 17:03:19 -05:00
2026-03-04 15:31:10 -06:00
sf
2026-03-16 16:41:46 -05:00
lib
2026-03-16 16:46:29 -05:00
t
2025-12-15 14:59:12 -06:00
kek
2026-03-13 19:11:58 -05:00
sf
2026-03-16 16:41:46 -05:00
sf
2026-03-16 16:41:46 -05:00
2026-01-02 20:30:05 -06:00
ha
2026-02-10 19:44:41 -06:00
2025-07-24 11:19:19 -05:00
2026-01-15 09:29:21 -06:00

NixOS Configuration Repository

This repository contains my personal NixOS configurations for multiple systems, managed using Snowfall Lib and the Nix Flakes system.

Overview

This repository provides a centralized, declarative configuration for all my systems, including:

  • Desktop PC (AMD)
  • NAS server
  • Steam Deck
  • Intel NUC
  • Raspberry Pi 4
  • Raspberry Pi 5
  • MacBook Pro (NixOS on Apple Silicon)
  • MacBook Pro (Darwin/macOS)

Repository Structure

.
├── checks/                # Pre-commit hooks and other checks
├── flake.nix              # Main flake configuration
├── homes/                 # Home-manager configurations for users
│   ├── aarch64-darwin/    # macOS home configurations
│   ├── aarch64-linux/     # ARM Linux home configurations
│   └── x86_64-linux/      # x86 Linux home configurations
├── modules/               # Reusable configuration modules
│   ├── home/              # Home-manager modules
│   └── nixos/             # NixOS system modules
├── overlays/              # Nixpkgs overlays
├── packages/              # Custom package definitions
├── secrets/               # Encrypted secrets (managed with sops-nix)
└── systems/               # System-specific configurations
    ├── aarch64-darwin/    # macOS system configurations
    ├── aarch64-linux/     # ARM Linux system configurations
    └── x86_64-linux/      # x86 Linux system configurations

Key Features

  • Modular Design: Reusable modules for various system components
  • Multi-System Support: Configurations for different hardware platforms
  • Home Manager Integration: User environment management
  • Secret Management: Encrypted secrets with sops-nix
  • Disk Management: Declarative disk partitioning with disko
  • State Management: Persistent state management with impermanence
  • Desktop Environments: Support for GNOME, Hyprland, and COSMIC
  • Hardware-Specific Optimizations: Tailored configurations for different hardware

Key Technologies

Notable System Configurations

Desktop

A powerful AMD-based desktop with gaming capabilities, featuring:

  • AMD CPU and GPU optimizations
  • Multiple desktop environment options (GNOME, Hyprland, COSMIC)
  • Gaming setup with Steam and related tools

NAS

A home server with various self-hosted services:

  • Media management (Jellyfin, Jellyseerr)
  • Download automation (Sonarr, Radarr, etc.)
  • Document management (Paperless)
  • File sharing (Samba, Nextcloud)
  • AI services (Ollama)

Raspberry Pi

Configurations for both Pi 4 and Pi 5:

  • Hardware-specific optimizations
  • Disk partitioning suitable for ARM devices
  • Bluetooth and wireless support

Steam Deck

Custom NixOS configuration for the Steam Deck:

  • Integration with Jovian for Steam Deck compatibility
  • Gaming optimizations
  • Steam ROM Manager

MacBook Pro

Configurations for both:

  • NixOS on Apple Silicon
  • nix-darwin for macOS

Usage

Building a System Configuration

# Build and activate a system configuration
sudo nixos-rebuild switch --flake .#hostname

Building a Home Configuration

# Build and activate a home configuration
home-manager switch --flake .#username@hostname

Documentation

Comprehensive documentation is available in the docs directory:

License

This project is licensed under the MIT License - see the LICENSE file for details.

Description
No description provided
Readme 285 MiB
Languages
Nix 84.9%
Python 10.9%
Shell 1.9%
HTML 1.2%
JavaScript 1.1%