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 + Firefox |
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.
MIT. See LICENSE.
❄️ Declarative by design. Unimpressed by convention.
