A comprehensive NixOS configuration framework designed for research and development environments, emphasizing security, reproducibility, and automated deployment. Built using Snowfall Lib and Nixicle, this architecture easily manages multiple systems and user environments with a focus on enabling fast GPU computing and secure networking.
It provides a securely encrypted setup for study laptops, enabling research on protected data. This enables cooperation among research centers.
This infrastructure was built in the context of the ColoReg study. Here the main use case will be gathering medical study data.
- NixOS installation media
- UEFI-capable system
- Storage device (NVMe or SATA)
- USB drive for boot decryption (optional)
- FIDO2 security key (optional)
- Verify UEFI boot mode
- Prepare storage devices
- Set up LUKS encryption
- Follow hardware setup guide
- Nixicle https://github.com/hmajid2301/nixicle
- Snowflakes OS Quickstart https://snowfall.org/guides/lib/quickstart/
- NixOS installation media
- Basic understanding of Nix flakes
- Hardware compatible with NixOS
- Boot from NixOS installation media
- Follow the deployment guide in the Wiki
- Choose appropriate system configuration from
systems/x86_64-linux/
# Clone the repository
git clone https://github.com/wg-lux/luxnix.git
# Deploy to a new system
nixos-anywhere --flake '.#hostname' nixos@ip-address
# Update existing system
nh os switch
nho #shortcutluxnix/
βββ flake.nix # Main flake configuration
βββ modules/ # Modular system configurations
β βββ home/ # Home-manager configurations
β βββ nixos/ # System-level configurations
βββ systems/ # Per-machine configurations
βββ homes/ # User-specific configurations
- LUKS2 encryption with FIDO2 device support
- Secure boot configuration (optional)
- VPN integration for secure networking
- Role-based access control
- Secrets management with SOPS
-
Development Workstations (gc-*)
- Hybrid GPU configurations
- Development toolchain preinstalled
- Desktop environment with KDE and Plasma on Linux (NixOS Distro)
-
Servers (s-*)
- Infrastructure to outsource computation
- Monitoring systems
- Network services
Comprehensive documentation is available in the Luxnix Wiki:
For issues and questions:
- Create an issue in the repository
- Check the Luxnix Wiki for documentation
- Review the deployment guide for common problems
Make sure account has been created.
Please visit the following link:
https://keycloak.endo-reg.net/
Use the provided credentials to log in.
After logging in, you will be automatically guided through the following steps:
- Verify your email address
- Set up OTP (two-factor authentication)
- Change your password
Make sure to complete all steps.
Once all steps are completed, go to:
https://cloud.endo-reg.net/login
Click "Login with Keycloak".
You can now use your Keycloak credentials to access Nextcloud.
Download the mobile app. Use this link: https://cloud.endo-reg.net Enter credential/login using keyscloak
The following documents have been moved from the repository into the Luxnix Wiki for easier access and centralized maintenance:
- Installation Guide - NixOS and Setting Up Luxnix
- Flake.nix & Garbage Collection
- Access Management
- Roles
- LX Cheatsheet
- tmux CLI Cheatsheet
- Deployment Guide
- Development
- Hardware Setup
- Network Architecture
- Security Improvements
- Security
- Service Architecture
- User Management
- Systemd tmpfiles Rules in NixOS
- Common Errors
- NixOs Configuration Testing with Eval
- System Language Change
- Roles Documentation
- Doc Maintenance Schedule
- Luxnix Server Setup with example
- Postgres Config Guide
- Postgres Documentation
- Postgres gc-10 Declarative Setup Summary
- Endoreg Central Architecture
- Readme
- Ansible CMDB Readme
- Process flow of creating Hosts, Roles, Groups
- Adding a New User Configuration
- Maintenance & Security: Auto Update #6
- Home Configuration Autoconf Flow (Step-by-Step)
- Guide to Define New Setting With Example
- Autoconfig- create inventory.yml using Python Script
- Updated : Generating home config files using autoconfig
- git
- vscode
- fix_long_lines
- kernel
- keycloak-setup
- network
- setup-mail
- setup-s04
- syncthing
- 2025-01-29 - postgres
- Diagram for Luxnix
- Cloudflare-traefik
- Forward Auth Sonarr
- HTTP Basic Auth
- tls-cloudflare-issue
- Tunnel Order
- update-outpost
Built with βοΈ using NixOS