5e8fa266d7435c89a9b78fd520fea66926723909
Run playerctld as a dbus unit with Restart=on-failure, start it through that unit on D-Bus activation, tie mpris-proxy to it, and bind the XF86 media keys to playerctl in xmonad.
dotfiles
Configuration for my Arch Linux desktop: xmonad + xmobar on X11, kitty, fish, vim, mutt, mpd/ncmpcpp, lf and friends.
The repo is a bare git repository whose work tree is $HOME, so files are tracked in place with no symlinks or
install script. This README lives in .github/ to keep it out of the home directory.
Contents
| Area | Files |
|---|---|
| Shells | .bashrc, .bash_profile, .bash_aliases, .config/fish/, .config/starship.toml |
| X session | .xinitrc, .xserverrc, .Xresources, .config/picom/, .config/dunst/ |
| Window manager | .config/xmonad/ (built with stack), .config/xmobar/ (bar configs and helper scripts) |
| Theming | .gtkrc-2.0, .config/gtk-3.0/, .config/qt5ct/, .config/qt6ct/, kitty and btop themes |
| Terminal apps | kitty, vim, lf, vifm, btop, calcurse, mutt, fastfetch/hyfetch |
| Audio / media | mpd, ncmpcpp, mpDris2, mpv, beets, pipewire |
| Packaging | .config/aurutils-makepkg.conf, .config/aurb/, .local/bin/aurb / aurs (aurutils wrappers) |
| Services | .config/systemd/user/ (timers and overrides) |
| Scripts | .local/bin/ (screen layout, phone mount, video helpers, Library database dump) |
Note: config.fish sources ~/.bash_aliases, so the aliases apply in both shells.
Setup on a new machine
git clone --bare https://git.shouldnt.work/fuxino/dotfiles.git ~/.dotfiles
alias config 'git --git-dir=$HOME/.dotfiles --work-tree=$HOME'
config config status.showUntrackedFiles no
config checkout
If checkout refuses because some files already exist, move them out of the way (or delete them) and run it again.
Not in the repo
Some files are deliberately left out and have to be recreated by hand:
.gitconfig.config/mutt/accounts/main_gmail(account settings;muttrcsources it, so mutt won't start without it)- Credentials (
.git-credentials, the aurutils git credentials) - Generated or state files (fish variables, histories, completions)
xmonad and xmobar
Only stack.yaml, its lock file, build and xmonad.hs are tracked. The sources are expected as git checkouts
next to them:
cd ~/.config/xmonad
git clone https://github.com/xmonad/xmonad xmonad-git
git clone https://github.com/xmonad/xmonad-contrib xmonad-contrib-git
git clone https://codeberg.org/xmobar/xmobar xmobar-git
stack install
Languages
Shell
61.2%
Haskell
36.9%
Python
1.9%