Skip to content

theantichris/dotfiles

Repository files navigation

dotfiles // netrunner loadout

A cyberpunk/netrunner themed, keyboard-driven environment managed with chezmoi. One source tree renders per-machine configs for three targets:

  • CachyOS Linux — Hyprland desktop
  • macOS — CLI stack + GUI apps via Homebrew
  • Android — Termux

✨ Highlights

  • Unified cyberpunk palette — the same hardcoded color scheme is carried across the shell prompt, Git, the Claude Code statusline, and every TUI. The canonical reference lives in color_palettes/cyberpunk/palette.html.
  • Hyprland desktop — configured in Lua, driven by noctalia-shell (a Quickshell desktop shell that provides the bar, launcher, control center, notifications, lock screen, wallpaper, and screenshot toolkit).
  • Fish shell with a custom cyberpunk prompt and per-OS branching.
  • Helix + language servers for LSP-powered editing.
  • Cross-platform templating — a single repo that renders correctly on Linux, macOS, and Termux from .chezmoi.os / .chezmoi.osRelease.id.

⚡ Installation

Note: These are my personal dotfiles. You'll need to update user-specific information in configs like Git (name/email), backup remotes, paths, and any API keys or tokens.

Prerequisites

  • git
  • chezmoi
  • SSH keys configured with GitHub (for forking)

Fork and use with chezmoi

  1. Fork this repository to your GitHub account
  2. Install git and chezmoi
  3. Generate an SSH key: ssh-keygen -t ed25519 -C "your_email@example.com"
  4. Add the SSH key to GitHub
  5. Run chezmoi init <YOUR_USERNAME> --ssh
  6. Run chezmoi apply
  7. Customize configs to your preferences

On first apply, the OS-specific install script (.chezmoiscripts/run_onchange_*install-packages-<os>.sh.tmpl) installs the matching toolchain for your platform.

⌨️ Managing configurations

Task Command
Initialize & apply (SSH) chezmoi init <GITHUB_REPO> --apply
Pull updates chezmoi update
Inspect changes chezmoi diff
Apply local changes chezmoi apply
Render one file chezmoi cat <FILE>
Edit a tracked file chezmoi edit <FILE>
Start tracking a file chezmoi add <FILE>
Jump to source repo chezmoi cd

🧰 Loadout

Desktop — Linux / CachyOS
Tool Key Files (chezmoi paths)
Hyprland dot_config/hypr
noctalia-shell dot_config/hypr/noctalia
cliphist -

Hyprland is configured in Lua — hyprland.lua loads the modules under dot_config/hypr/config/*.lua (keybinds, animations, window rules, monitors, autostart, …). Default apps: kitty, dolphin, google-chrome, helix, gnome-calculator.

Shell & Terminal
Tool Key Files (chezmoi paths)
fish dot_config/fish
kitty dot_config/kitty

Termux ships its own terminal config under dot_termux.

Editor & Language Servers
Tool Key Files (chezmoi paths)
Helix dot_config/helix
bash-language-server -
lua-language-server -
marksman -
taplo -
typos-lsp -
vscode-langservers -
yaml-language-server -
Files, Viewers & Monitoring
Tool Key Files (chezmoi paths)
Superfile dot_config/private_superfile
eza dot_config/eza
fd -
entr -
bat dot_config/bat
glow dot_config/private_glow
tldr -
btop dot_config/btop
fastfetch dot_config/fastfetch
Git & Dev
Tool Key Files (chezmoi paths)
Git dot_gitconfig.tmpl, dot_gitignore
git-delta -
gh - (macOS)
pre-commit -
markdownlint-cli2 -
GoReleaser -
vhs -
hugo - (macOS)
Crush dot_config/crush
Claude Code dot_claude
Go Toolchain
Tool Key Files (chezmoi paths)
go / gopls -
delve -
golangci-lint -
golangci-lint-langserver -
goimports -
gocovsh -
go-global-update -
cobra-cli -
ghost -
Rust Tools
Tool Key Files (chezmoi paths)
rustup -
cargo-update -
outside dot_config/outside
Notes, News & Productivity
Tool Key Files (chezmoi paths)
clin dot_config/clin
Toney dot_config/toney (Android)
linear-tui dot_linear-tui
golazo dot_config/golazo
newsboat dot_config/newsboat
Communication
Tool Key Files (chezmoi paths)
oxicord dot_config/oxicord
matcha -
slack-desktop -
Utilities & System
Tool Key Files (chezmoi paths)
chezmoi -
Tailscale -
Bitwarden / bitwarden-cli -
Ollama -
speedtest-cli -
cmatrix -
Nerd Fonts -
qFlipper -
macOS GUI (Homebrew casks)
App Cask
Bitwarden bitwarden
Notion notion
Seafile seafile-client
Surfshark surfshark
Battle.net battle-net
UHK Agent uhk-agent
qFlipper qflipper
Hack Nerd Font font-hack-nerd-font

The full macOS package set lives in dot_Brewfile.

🎨 Color system

The whole environment shares one hardcoded cyberpunk palette. The canonical reference — backgrounds, text, accents, semantic, syntax, and terminal colors with hex values — is color_palettes/cyberpunk/palette.html.

The values are duplicated (not shared) across the Fish prompt (dot_config/fish/functions/fish_prompt.fish), the Claude Code statusline (dot_claude/executable_statusline-cyberpunk.sh), the Git config (dot_gitconfig.tmpl), and the clin theme (dot_config/clin/themes). Change one, change all.

🪪 License

MIT

About

My dotfiles, configurations, and desktop theme.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages