Opinionated NixOS configs for my devices.
.
├── lib/ # Helper functions (mkSystemConfig, mkAppImage)
├── profiles/ # Reusable profiles (base, desktop, server)
├── modules/
│ ├── addons/ # Addon modules
│ ├── apps/ # Application modules
│ ├── core/ # Core system modules
│ ├── desktop-utils/ # Desktop utilities and configurations
│ ├── desktops/ # Desktop environment modules
│ ├── server/ # Server configurations
│ ├── services/ # Service modules
│ └── extras/ # Additional modules
├── scheduled-scripts/ # Scheduled scripts
├── hosts/ # Machine-specific configs
├── flake.nix # Main configuration
├── config.nix # User settings
└── sync-config.nix # Sync configuration
- Boot NixOS ISO
- Run setup script:
sudo sh -c 'curl -sSL https://raw.githubusercontent.com/devswork-in/nix-systems/main/setup.sh | bash -s /dev/nvme0n1 omnix'Warning: Wipes /dev/nvme0n1, repartitions & installs omnix flake.
See Usage for full details and Setup for installation.
sudo nixos-rebuild switch --flake .#<hostname> --impure # Build & switch
nix run nixpkgs#deploy-rs -- .#<hostname> # Remote deploy
nix-repo-sync-force # Force sync
nix-repo-sync-logs # View logs
nix-cleanup --dry-run # Cleanup preview
nix-cleanup # Full cleanup
nix run nixpkgs#nixos-rebuild -- build-vm --flake .#<hostname> --fast # VM testRemote Build (Builds on target, fast):
nixos-rebuild --flake .#phoenix-arm --target-host phoenix --build-host phoenix switch --no-reexec -SLocal Build (Builds locally & pushes):
nixos-rebuild --flake .#phoenix-arm --target-host phoenix switch --no-reexec