-
Linux Distribution: NixOS (with flakes)
-
Dotfiles: bare git + Home Manager
-
Shell: ZSH (via Home Manager)
-
Editor: Neovim + lua config (I always use it in the terminal)
-
Keyboard layout: Neo Layout
-
Tiling Window Manager: Herbstluftwm
-
Statusbar: Polybar
-
Terminal: Alacritty
-
Font: Commit Mono
-
Theme: tokyonight-storm (dark) / catppuccin-latte with white background (light)
-
Password Manager: KeePassXC synced with MEGA to cloud + android, with Syncthing to trusted friends - covers:
- SSH Agent
- TOTP Authenticator
- secret service / gnome-keyring
- scecret environment variables, like
OPENAI_API_KEY
-
Screenshot tool: Flameshot
-
git TUI: tig - make precise commits by staging individual git hunks instead of whole files
WARNING: These are the installation instructions for myself, not for you. You should have your own repository and get inspired by this one. If you have any questions, feel free to open issues.
# Manage dotfiles entirely with git:
git clone --bare git@github.com:fdietze/dotfiles.git "$HOME/dotfiles.git"
alias dt='GIT_DIR="$HOME/dotfiles.git" GIT_WORK_TREE="$HOME" git -c status.showUntrackedFiles=no'
dt checkout master
ssh-keygen -t ed25519
- What are
.zshrc
/.zshenv
/.zprofile
? https://unix.stackexchange.com/questions/71253/what-should-shouldnt-go-in-zshenv-zshrc-zlogin-zprofile-zlogout - Better bash functions: https://cuddly-octo-palm-tree.com/posts/2021-10-31-better-bash-functions/
-
managing dotfiles with pure git + external worktree in $HOME
-
fzf over dotfiles: vd
-
Neo keyboard layout
-
Vim and keybindings
-
toggle ; at end of line
-
quickly edit dotfiles with vim: vv
-
fzf for editing dotfiles
-
git alias: g
-
zsh bell after every command
-
v for fzf+vim in current git repo
-
Tiling Window Manager keybindings
-
NixOS
-
Dark and Light color scheme switching
-
Tools
-
tig
-
fzf
-
redshift
-
unclutter
-
zeal
-
Scala
-
reverse compilation errors