Personal configuration for Arch Linux, managed with GNU Stow. Each application lives in its own top-level directory, and the directory tree inside it mirrors the path under $HOME.
.
├── fastfetch/ .config/fastfetch/config.jsonc
├── kitty/ .config/kitty/ (kitty.conf, theme, light-theme.auto.conf)
├── nvim/ .config/nvim/ (init.lua, lazy-lock.json)
├── packages/ pkglist.txt, aur-pkglist.txt, vscode-extensions.txt
├── scripts/ install.sh
└── zsh/ .zshrc, .p10k.zsh
zsh runs Oh My Zsh with the Powerlevel10k theme, plus zsh-autosuggestions and zsh-syntax-highlighting. Neither the theme nor the plugins are tracked here; install.sh clones them into ~/.oh-my-zsh/custom.
kitty uses Fira Code at 14pt, semi-transparent windows, a background image, and the Atelier Cave Dark theme. light-theme.auto.conf switches the palette based on the system color scheme.
nvim is configured from a single init.lua. lazy.nvim bootstraps itself on first run and manages three plugins: catppuccin, telescope.nvim, and nvim-treesitter. Leader is space. Tabs are 4 spaces, relative line numbers on.
packages lists the software a fresh install should end up with. pkglist.txt is for pacman, aur-pkglist.txt for the AUR, vscode-extensions.txt for VS Code.
git clone https://github.com/nittsuj/dotfiles ~/dotfiles
cd ~/dotfiles
./scripts/install.sh
The script installs the pacman package list, bootstraps yay from the AUR if it is missing, installs the AUR package list, installs the VS Code extensions, stows the config directories, clones Oh My Zsh, Powerlevel10k and the two zsh plugins, then runs nvim --headless "+Lazy! sync" to install the Neovim plugins. It stops on the first failure.
If you only want the symlinks:
stow zsh kitty nvim fastfetch
Run that from the repo root. It creates ~/.zshrc, ~/.p10k.zsh, and the .config entries, and does not touch anything else.
packages/vscode-extensions.txtis installed byinstall.shwithcode --install-extension. Append an extension ID to that file to add another.- The kitty background image (
desktop-lain.jpg) is not tracked. Drop your own into~/.config/kittyor remove thebackground_imagelines fromkitty.conf. .p10k.zshwas generated byp10k configure. Run it again to change the prompt.