OrynOS is a personal NixOS configuration built around a native Wayland stack.
No frameworks.
No hidden abstractions.
No imperative glue.
Everything is declarative, modular, and meant to be understood.
- Native Hyprland configuration
- System-wide theming via Stylix
- Modular system and Home Manager layout
- Shells installed via Nix profiles (intentionally non-declarative)
- NVIDIA hardware acceleration preconfigured
| Component | Choice |
|---|---|
| OS | NixOS Unstable |
| Compositor | Hyprland |
| Login | greetd (TUI) |
| Shell / Bar | Ambxst (AGS) |
| Theming | Stylix (Base16) |
| Terminal | Alacritty + Kitty |
| Browser | Brave + Mullvad |
Important
This assumes you already run NixOS and understand flakes.
1. Enable flakes
nix.settings.experimental-features = [ "nix-command" "flakes" ];2. Clone and build
git clone https://github.com/OrynVail/OrynOS.git
cd ~/OrynOS
# Edit hardware config for your machine
nano hosts/oryn-nixos/hardware-configuration.nix
# Rebuild
sudo nixos-rebuild switch --flake .#oryn-nixosLog in via greetd.
All theming flows from Stylix.
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/ashes.yaml";
image = ./wallpapers/wall.png;
fonts.monospace = {
package = pkgs.nerd-fonts.jetbrains-mono;
name = "JetBrainsMono Nerd Font";
};
};Rebuild once. Everything follows.
Shells are installed via Nix profiles by design.
nix profile install github:Axenide/Ambxst
Swap freely. Update the Hyprland exec-once entry accordingly.
Programs live as isolated modules.
{ pkgs, ... }: {
home.packages = [ pkgs.your-package ];
}Import. Rebuild.
Standard maintenance workflow:
./scripts/oryn_cleanup.sh
nix flake update
sudo nixos-rebuild switch --flake .#oryn-nixosRunning unstable means breakage is part of the contract.
Note
This repository reflects one system and one way of working. There are no guarantees beyond what NixOS already provides.
MIT. See LICENSE.
❄️ Declarative by design. Unimpressed by convention.


