Skip to content
onlycsPublic

About

Read-only mirror of https://codeberg.org/tendulkar/dotfiles | the best nixos dotfiles

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

26 Commits

Folders and files

Repository files navigation

.dotfiles

Personal NixOS system configuration, managed as a flake with home-manager.

Overview

  • OS: NixOS (flake-based, nixos-unstable)
  • Host: theseus — a Framework 16 (AMD)
  • Window manager: Hyprland, with wayle as the bar/shell
  • Shell: zsh
  • Terminal: kitty
  • Editor: Zed
  • Browser: Zen
  • Launcher: Vicinae
  • Theming: wallpaper-derived Material You palette via matugen, templated out to GTK, Hyprland, Vicinae, and Zen

Layout

.
├── flake.nix                 # Flake inputs/outputs, nixosConfigurations
├── hosts/
│   └── theseus/               # Host-specific system configuration
│       ├── configuration.nix
│       └── hardware-configuration.nix
├── home/
│   └── angad/
│       └── home.nix           # Home-manager entry point
├── modules/
│   ├── cli/                   # git, kitty, zsh, ssh, cli-tools
│   ├── gui/                   # apps, gtk, zed-editor, zen-browser
│   ├── wm/                    # hyprland, wayle, easyeffects
│   └── colors/                # matugen-based theme generator + templates
└── wallpapers/

Each module is a self-contained home-manager/NixOS module, imported from home.nix or configuration.nix. Adding a new tool or app usually means adding/editing a module under modules/ and wiring it in.

Theming

modules/colors generates a color scheme from wallpaper.jpg using matugen, then feeds the resulting JSON through processor.py (Jinja2) to render theme files for GTK3/4, Hyprland, Vicinae, and Zen's userChrome/userContent. Swap the wallpaper to regenerate the whole system's palette.

Usage

Rebuild the system after making changes:

rebuild   # alias for: sudo nixos-rebuild switch --flake ~/.dotfiles

A direnv/shell.nix dev shell is provided for editing (nixd, nil, lua) — run direnv allow in the repo root.

Adding a new host

  1. Create hosts/<hostname>/configuration.nix (and hardware-configuration.nix from nixos-generate-config).
  2. Add a new entry under nixosConfigurations in flake.nix, pointing at the new host and a home-manager user config.

License

GPL-3.0 — see LICENSE.


This README was generated by AI.

I promise I did the rest though.

About

Read-only mirror of https://codeberg.org/tendulkar/dotfiles | the best nixos dotfiles

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages