Maddison's dotfiles, managed with Nix
- Compositor: Niri
- Terminal: Ghostty
- Multiplexer: Zellij
- Shell: Nushell
- Editor: Neovim
- Colorscheme: Lavi
- Font: Pragmasevka Nerd Font
- Stats:
- 25,000+ lines of code across 200+ files
- 14,000+ lines of Neovim config (Lua)
- 6,000+ lines of Nushell config
- In development since 2015, 1,350+ commits since 2018
config/- Application configurations- Shell
nushell/- structured data shell- Lazy hook system for shell integrations
- Comark directory/file bookmark manager
- Git worktree management commands
- Nix/home-manager wrapper commands
- Cross-platform clipboard utilities
- Fuzzy completion with skim plugin
- Auto-managed plugin system
starship.toml- shell promptatuin/- shell history sync and searchcarapace/- shell completionszellij/- multiplexerzsh/- fallback shell
- Editor
nvim/- Neovim configuration- Fully custom config written from scratch
- 100+ plugins managed with lazy.nvim
- LSP with 30+ language servers
- 500+ custom keymaps
- blink.cmp completion
- Telescope fuzzy finder
- Treesitter with textobjects
- Incline.nvim, lualine.nvim status lines
- Neogit, Gitsigns, Diffview
- Nvim-dap debugging, Neotest
- Supermaven AI completion
- Terminal
ghostty/- terminal emulator
- Desktop
niri/- wayland compositor- Custom floating scratchpad system
- Custom screenshot utility with history and annotations
- Modal key menus via wlr-which-key
- Window urgency notification daemon
- Swayidle screen lock integration
mako/- notification daemonwaybar/- status barwlr-which-key/- keybinding hintsrofi/- application launcher
- Dev Tools
- Utilities
- Shell
nix/- NixOS and Home Manager configurationsflake.nix- Nix flake entry pointjustfile- Task runner commands
# using my nushell helper
hm switch
# or standard home-manager command
home-manager switch --flake .#<config>Configs:
arch-maddy- Arch Linux user environment
nixos-rebuild switch --flake .#<host>Hosts:
boonix- desktop workstation with ZFS
# using my nushell helper
fp switch
# or standard command
nix run .#<profile>.switchProfiles:
Symlink configs manually with GNU Stow:
just stowMIT
