A NixOS-based distribution. Defaults that work, mkDefault so you always win.
This is my personal NixOS configuration that I use daily on:
- AMD Ryzen desktop (Gigabyte X870E)
- Intel/NVIDIA laptop (Lenovo Legion 16IRX8H)
It works well for me, but it's only tested on my hardware.
Instead of copying similar configuration across machines, mynixos provides a my.* module API:
# Enable what you need
my.users.alice = {
graphical.enable = true; # Desktop environment
dev.enable = true; # Development tools
terminal.enable = true; # CLI tools
ai.enable = true; # Ollama, etc.
};
# Override any default
my.users.alice.environment.BROWSER = pkgs.firefox;# /etc/nixos/flake.nix
{
inputs.mynixos.url = "github:i-am-logger/mynixos";
outputs = { mynixos, ... }: {
nixosConfigurations.myhost = mynixos.lib.mkSystem {
my = {
system = {
enable = true;
hostname = "myhost";
};
users.alice = {
fullName = "Alice";
email = "alice@example.com";
graphical.enable = true;
dev.enable = true;
terminal.enable = true;
};
};
};
};
}nixos-rebuild switch --flake /etc/nixos#myhostusers.alice = {
environment.BROWSER = pkgs.firefox;
environment.TERMINAL = pkgs.kitty;
terminal.multiplexer = "tmux";
graphical.webapps.slack.enable = false;
};- System: Core config (hostname, kernel, scripts, environment)
- Users: 50+ apps across 28 categories, per-user config with feature bundles (graphical, dev, terminal, ai)
- Hardware: CPU (AMD/Intel), GPU (AMD/NVIDIA), motherboards (Gigabyte), laptops (Lenovo), cooling (NZXT), memory optimization, storage (NVMe/SATA/SSD/USB), bluetooth (Realtek), USB (HID/Thunderbolt/XHCI), peripherals (Elgato), boot (UEFI/dual-boot)
- Desktop: Hyprland with Waybar, Walker launcher
- Security: Secure boot (lanzaboote), YubiKey/SoloKey/NitroKey support, 1Password, audit rules
- Secrets: sops-nix integration
- Storage: disko partitioning, impermanence (tmpfs root + persistent storage)
- Theming: vogix runtime theme management
- Dev: Docker (rootless), direnv, devenv, binfmt, VSCode, Helix, GitHub Desktop
- AI: Ollama with ROCm, Claude Code, OpenCode
- Terminals: Ghostty, Kitty, Alacritty, WezTerm, Warp
- Shells: Fish, Bash with Starship prompt
- Browsers: Firefox, Brave, Chromium + web apps (PWAs)
- Communication: Signal, Slack, Element
- Media: Audacious, musikcube, pipewire-tools, cava visualizer
- Network Defense: addrwatch, pcap, tshark, Suricata IDS, Zeek, P0F, AIDE file integrity, NetFlow/ntopng, Blocky DNS sinkhole (docs)
- Infrastructure: GitHub Actions runner, k3s
- Performance: zram, memory optimization, sysctl tuning
- Streaming: OBS-related setup
- File Management: Yazi, Midnight Commander, lsd, rclone sync
mynixos/
├── flake.nix
└── my/
└── category/item/
├── options.nix
├── default.nix
└── mynixos.nix
See github.com/i-am-logger/flake for real system configurations using mynixos.
Contributions are always welcome. See docs/CONTRIBUTING.md or check out my flake to see how I use mynixos.
CC BY-NC-SA 4.0 - See LICENSE
NixOS, home-manager, disko, impermanence, vogix, lanzaboote, sops-nix, nixos-hardware
