2026-02-09 18:52:26 +01:00
2026-02-08 11:54:35 +01:00
2026-02-06 23:03:41 +01:00
2026-02-03 01:30:12 +01:00
2026-02-04 15:36:39 +01:00
2026-02-02 14:58:13 +01:00
2026-02-04 23:17:04 +01:00
2026-02-09 18:52:26 +01:00
2026-02-05 09:51:31 +01:00
2026-02-05 10:47:37 +01:00

atlas - NixOS Configuration

NixOS Flakes License

A modular, declarative NixOS configuration for desktop gaming and development.

Overview

This repository contains the complete NixOS system configuration for multiple hosts:

  • atlas - Desktop gaming and media setup
  • server - Headless server (core + dev tools only)
  • laptop - Laptop with desktop environment (no gaming)

It uses Nix flakes for reproducible builds and modular organization for maintainability.

System Highlights

  • OS: NixOS (unstable channel)
  • Kernel: CachyOS optimized kernel with x86_64-v3 microarchitecture
  • Bootloader: Limine with Secure Boot support
  • Window Manager: Niri (scrollable-tiling Wayland compositor)
  • Shell: Fish with Zsh fallback
  • Terminal: Ghostty
  • Browser: Zen Browser + Firefox
  • Editor: Zed

Features

Gaming

  • Steam with Proton-GE
  • Lutris, Heroic (Epic/GOG), Faugus Launchers
  • GameMode optimizations
  • MangoHud & vkBasalt support
  • AMD GPU with ROCm acceleration

Development

  • Rust, Python, Node.js toolchains
  • Docker & container tools
  • Git, GitHub CLI, Lazygit
  • Nix language server (nil, nixd)
  • Claude Code & Opencode AI assistants

Desktop Environment

  • Custom Noctalia desktop shell
  • Wayland portals for screen sharing
  • Flatpak support with Flathub
  • Nordic theming
  • Plymouth boot splash

Security & Privacy

  • Full disk encryption (LUKS2)
  • Encrypted swap partition
  • Secure Boot with custom keys
  • Bitwarden password manager
  • Proton VPN

Structure

.
├── flake.nix                  # Flake inputs and outputs
├── hosts/
│   ├── atlas/                 # Desktop configuration
│   │   ├── configuration.nix
│   │   └── hardware-configuration.nix
│   ├── laptop/                # Laptop configuration
│   │   ├── configuration.nix
│   │   └── hardware-configuration.nix
│   └── server/                # Server configuration
│       ├── configuration.nix
│       └── hardware-configuration.nix
├── modules/
│   ├── core/                  # Boot, users, networking
│   ├── hardware/              # GPU, audio, power
│   ├── desktop/               # WM, apps, theming
│   ├── services/              # System services
│   ├── dev/                   # Development tools
│   └── gaming/                # Steam, Wine, Gamemode
├── overlays/                  # Package patches
├── scripts/                   # Installation helpers
└── wallpaper/                 # Desktop backgrounds

Installation

Prerequisites

  • NixOS installation media
  • Internet connection
  • Target disk (e.g., /dev/nvme0n1)

Automated Install (Full Disk Encryption)

# Boot from NixOS ISO, then:
curl -sL https://raw.githubusercontent.com/ragusa-it/nixos/main/scripts/install-fde.sh | sudo bash

Manual Install

# 1. Partition, format, and mount
cryptsetup luksFormat /dev/nvme0n1p3
cryptsetup open /dev/nvme0n1p3 cryptroot
mkfs.xfs /dev/mapper/cryptroot
mount /dev/mapper/cryptroot /mnt

# 2. Clone and install
git clone https://github.com/ragusa-it/nixos.git /mnt/etc/nixos
cd /mnt/etc/nixos

# Install for specific host (atlas, laptop, or server)
nixos-install --flake .#atlas

Post-Install

# Set up Secure Boot (optional but recommended)
sudo /etc/nixos/scripts/setup-secureboot.sh

# Switch to new configuration
sudo nixos-rebuild switch --flake /etc/nixos

Daily Usage

# Rebuild system (use appropriate host)
sudo nixos-rebuild switch --flake .#atlas

# Update flake inputs
nix flake update

# Clean old generations
sudo nix-collect-garbage -d

# Format all nix files
nixfmt **/*.nix

Hardware Requirements

  • CPU: AMD Ryzen (with x86_64-v3 support for CachyOS kernel)
  • GPU: AMD Radeon (ROCm supported)
  • RAM: 16GB+ recommended
  • Storage: NVMe SSD recommended

External Dependencies

This configuration uses the following flake inputs:

Acknowledgments

  • NixOS - The purely functional Linux distribution
  • CachyOS - Optimized kernel and packages
  • Limine - Modern bootloader
  • Niri - Scrollable-tiling Wayland compositor

License

This configuration is released into the public domain. Feel free to use, modify, and distribute as needed.


Made with ❄️ Nix

Description
No description provided
Readme 63 MiB
Languages
Nix 66.7%
Shell 33.3%