My poorly constructed configurations for NixOS using flakes.
Here are some specs you’ve seen a trillion times:
- WM: Hyprland
- Bar: Waybar
- Launcher/Menu: Rofi-Wayland and/or Fuzzel
- Editor: Emacs
- Terminal: Alacritty
- Shell: Fish
Right now I just have my framework laptop but I hope expand it to a desktop, my other laptops, and a NAS (eventually).
This is the rough organization for my config. This is subject to change at any point and may not reflect what the current structure is.
- flake.nix - central point of my config
- home - my personal configurations for home-manager, scalable for multiple users
- cli - cli programs, tui programs, and services primarily interacted with through a terminal
- graphical - programs that are graphical, irrespective of whether or not they are X11 or Wayland
- wayland - configuration for my Wayland environment. Sometimes graphical programs are configured here if they are integral to my environment.
- hosts - per host configurations. Almost always has a configuration.nix, hardware-configuration.nix, and a home.nix (for the main user).
- chopin - my framework laptop
- lib - my library of custom functions and variables to help with my config. This is part of the flake’s outputs so it is accessible if you use my flake as an input.
- modules - proper modules for nixos and home-manager that can be used by others
- nixos - personal configuration for system wide programs, services, configuration files, etc.
- overlays - self explanatory
- packages - my personal packages, part of this flake’s outputs so accessible if you use my flake as an input.
- secrets - shhhhhh…
- templates - templates so I don’t have to set up my development environment every time I start a project
- haskell - for Haskell development
I have themes for:
- Catppuccin Mocha
- Gruvbox Dark Medium
- Kanagawa Wave
- Nord Aurora (default)
- Basic Dark (not really a themes, basically just for testing)
- Iynaix’s Config
- Vimjoyer’s Config and Videos
- IogaMaster’s Videos
- Jake Hamilton’s Config, Livestreams and Snowfall Lib
- RubberDuck’s Videos
- LibrePhoenix’s Videos
- The Nix Flakes Book
- The nix.dev Tutorials and Guides
- The Unofficial NixOS Wiki
- Misterio77’s Configs and Starter Configs
- Bugswriter’s Rice
- junnunkarim’s dwm rice(s)
- AlphaTechnolog’s dwm rice
- Luke Smith’s rice
- DistroTube’s DTOS
- Eric Murphy’s BSPWM rice
- [-] Home Manager Modules [66%]
- [X] Clean up modules [100%]
- [X] Wayland Options
- [X] Hyprland
- [X] Rofi
- [X] Waybar
- [-] Fix/Add Modules [80%]
- [X] Fish
- [X] SSH Configuration
- [ ] GPG Configuration
- [X] Direnv
- [X] Use appropriate xdg-desktop-portal
- [X] Fix/Add Options [100%]
- [X] Default Browser on Wayland
- [X] MPD Options
- [X] Shell Options
- [X] Clean up modules [100%]
- [-] NixOS Modules [50%]
- [X] Reorganize Modules
- [ ] Services [0%]
- [ ] SSH Configuration
- [-] Hosts [50%]
- [X] Stream line hosts nixos
- [-] Make Stand Alone Home Manager Work
- [X] Create Custom Packages Directory [100%]
- [X] Move Scripts to Custom Packages
- [-] Emacs [50%]
- [X] migrate to literate config?
- [-] switch to vertico/marginalia/consult/embark
- [X] vertico
- [X] marginalia
- [X] consult
- [-] embark
- [X] isearch (and search and replace in general)
- [X] imenu
- [-] custom themes
- [X] keyboard macros
- [ ] dired [0%]
- [ ] open-dwim
- [ ] preview
- [ ] thumbnail preview
- [ ] archive commands [0%]
- [ ] zip
- [ ] tar
- [ ] gz
- [ ] tar.gz
- [ ] bz2
- [ ] tar.bz2
- [ ] xz
- [ ] tar.xz
- [ ] give date command
- [ ] zoxide (or zoxide like) directory changing
- [ ] cycle through images in dir
- [X] occur
- [ ] modeline [0%]
- [ ] time
- [ ] last/current command
- [ ] last/current key-binding
- [ ] custom faces
- [ ] vc branch
- [ ] flycheck
- [ ] flymake
- [ ] flyspell
- [ ] better modified status
- [ ] project compile mode status
- [ ] debug errors
- [ ] eglot vs lsp-mode?
- [X] Direnv Support
- [ ] Better Pipes