NixOS Configuration · Systems Work

A personal
system of order.

One modular flake for a Hyprland workstation, a GNOME alternative, and a MacBook Air — with the details that make a machine feel like yours.

surya@nixos ~/Dotfiles/nixos-config
$ nh os switch
building system configuration...
activating home-manager profile...
✓ system is up to date

THE CONFIGURATION

Three targets.

Flake outputs compose small, focused modules into complete operating-system configurations.

01 · PRIMARY

NixOS / Hyprland

A Wayland-first daily driver with Ghostty, Quickshell, declarative hardware, gaming, and work tooling.

02 · ALTERNATIVE

NixOS / GNOME

A conventional GNOME session built from the same reusable system and Home Manager layers.

03 · MOBILE

nix-darwin / macOS

A MacBook Air configuration that keeps shell, development, and user preferences portable.

THE ROAD FROM INPUT TO DESKTOP

Designed as a flow.

01

Flake inputs

Pin the ecosystem and keep updates intentional.

02

Deferred modules

Group concerns without enabling them accidentally.

03

Host composition

Select the right system and user layers.

04

Daily runtime

Services, UI, tools, and hardware work together.

WHAT LIVES HERE

Details matter.

Not just packages — the choices that make a desktop feel calm, capable, and personal.

DESKTOP

Serpantinum

A focused Quickshell desktop shell patched at build time from upstream.

Original project ↗
WORKFLOW

Developer tools

Fish, Starship, Ghostty, VS Code, Git, and project tooling together.

SYSTEMS

Hardware-aware

Audio, Bluetooth, NVIDIA, networking, boot, storage, and work integrations.

START HERE

Bring it up.

Clone the flake, choose a target, and let Nix do the rest.

$ git clone https://github.com/suryavamsi6/nixos-config.git
$ cd nixos-config

$ nh os switch                         # Hyprland
$ nix run nix-darwin -- switch --flake .#macbook-air

Small modules, clear boundaries

System and Home Manager layers stay separate until the host composes them.

Upstream where possible

Focused build-time patches instead of unnecessary forks.

Safe by default

Secrets stay out of the flake and destructive workflows stay deliberate.

Made for the actual machine

Reliability choices follow the hardware and how it is used every day.