summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2023-10-08 12:09:20 -0400
committerJesse Luehrs <doy@tozt.net>2023-10-08 12:59:10 -0400
commit49570c8dd03448240897b37b68567352b790f16f (patch)
tree6c192a52046d5d0dd1b84a838befd8e777cfeafb
parent66939c71da756c1d9e07a88a4a8ea2a018650060 (diff)
downloadconf-49570c8dd03448240897b37b68567352b790f16f.tar.gz
conf-49570c8dd03448240897b37b68567352b790f16f.zip
convert to stow
-rw-r--r--.gitignore10
-rw-r--r--.gitmodules119
-rw-r--r--.stowrc5
-rw-r--r--Makefile166
-rw-r--r--Makefile.hornet60
-rw-r--r--Makefile.include12
-rw-r--r--Makefile.mail8
-rw-r--r--Makefile.mz-doy136
-rw-r--r--Makefile.partofme8
-rw-r--r--Makefile.tozt8
-rw-r--r--abook/.abook/abookrc (renamed from abook/abookrc)0
-rw-r--r--alacritty/.config/alacritty/alacritty.yml.PL (renamed from config/alacritty/alacritty.yml.hornet)16
-rw-r--r--alacritty/.gitignore1
-rw-r--r--alacritty/Makefile6
-rw-r--r--bash/.bash_profile (renamed from bash_profile)0
-rw-r--r--bash/.bashrc (renamed from bashrc)0
-rw-r--r--bin/local/.gitignore2
-rwxr-xr-xbuild8
-rwxr-xr-xclean9
-rwxr-xr-xcompton/.services/available/compton/log/run (renamed from services/available/compton/log/run)0
-rwxr-xr-xcompton/.services/available/compton/run (renamed from services/available/compton/run)0
-rw-r--r--compton/Makefile4
-rw-r--r--config/alacritty/alacritty.yml.mz-doy1165
-rw-r--r--crawl/.crawlrc (renamed from crawlrc)0
-rw-r--r--cron/Makefile9
-rw-r--r--cron/crontab.stowskip (renamed from crontab)0
-rw-r--r--fortune-mod/.gitignore1
-rw-r--r--fortune-mod/.local/share/fortune/buffy (renamed from local/share/fortune/buffy)0
-rw-r--r--fortune-mod/.local/share/fortune/calvin (renamed from local/share/fortune/calvin)0
-rw-r--r--fortune-mod/.local/share/fortune/chapterhouse-dune (renamed from local/share/fortune/chapterhouse-dune)0
-rw-r--r--fortune-mod/.local/share/fortune/children-of-dune (renamed from local/share/fortune/children-of-dune)0
-rw-r--r--fortune-mod/.local/share/fortune/dune (renamed from local/share/fortune/dune)0
-rw-r--r--fortune-mod/.local/share/fortune/dune-messiah (renamed from local/share/fortune/dune-messiah)0
-rw-r--r--fortune-mod/.local/share/fortune/firefly (renamed from local/share/fortune/firefly)0
-rw-r--r--fortune-mod/.local/share/fortune/god-emperor (renamed from local/share/fortune/god-emperor)0
-rw-r--r--fortune-mod/.local/share/fortune/heretics-of-dune (renamed from local/share/fortune/heretics-of-dune)0
-rw-r--r--fortune-mod/.local/share/fortune/hitchhiker (renamed from local/share/fortune/hitchhiker)0
-rw-r--r--fortune-mod/.local/share/fortune/house-atreides (renamed from local/share/fortune/house-atreides)0
-rw-r--r--fortune-mod/.local/share/fortune/house-harkonnen (renamed from local/share/fortune/house-harkonnen)0
-rw-r--r--fortune-mod/.local/share/fortune/ideas (renamed from local/share/fortune/ideas)0
-rw-r--r--fortune-mod/.local/share/fortune/kernelcookies (renamed from local/share/fortune/kernelcookies)0
-rw-r--r--fortune-mod/.local/share/fortune/perl (renamed from local/share/fortune/perl)0
-rw-r--r--fortune-mod/.local/share/fortune/song-of-ice-and-fire (renamed from local/share/fortune/song-of-ice-and-fire)0
-rw-r--r--fortune-mod/.local/share/fortune/yasd-fortune (renamed from local/share/fortune/yasd-fortune)0
-rw-r--r--fortune-mod/Makefile9
-rw-r--r--gdb/.config/gdb/gdbinit (renamed from gdbinit)0
-rw-r--r--git/.config/git/config (renamed from config/git/config)0
-rw-r--r--git/.config/git/ignore (renamed from config/git/ignore)0
-rw-r--r--helix/.config/helix/config.toml (renamed from config/helix/config.toml)0
-rw-r--r--helix/.config/helix/languages.toml (renamed from config/helix/languages.toml)0
-rw-r--r--helix/.config/helix/themes/doy.toml (renamed from config/helix/themes/doy.toml)0
-rw-r--r--i3/.config/i3/browser-workspace.json (renamed from config/i3/browser-workspace.json)0
-rw-r--r--i3/.config/i3/config (renamed from config/i3/config)0
-rw-r--r--i3/.config/i3/terminal-workspace.json (renamed from config/i3/terminal-workspace.json)0
-rw-r--r--i3status/.config/i3status/config (renamed from config/i3status/config)0
-rwxr-xr-xinstall10
-rw-r--r--less/.config/lesskey (renamed from lesskey)0
l---------local/.bin/ag (renamed from bin/ag)0
-rwxr-xr-xlocal/.bin/clean-vim-undo (renamed from bin/clean-vim-undo)0
-rwxr-xr-xlocal/.bin/cryptdir (renamed from bin/cryptdir)0
-rwxr-xr-xlocal/.bin/cryptoloop (renamed from bin/cryptoloop)0
-rwxr-xr-xlocal/.bin/files-between (renamed from bin/files-between)0
-rwxr-xr-xlocal/.bin/fm22avi (renamed from bin/fm22avi)0
-rwxr-xr-xlocal/.bin/git/git-amend (renamed from bin/git/git-amend)0
-rwxr-xr-xlocal/.bin/git/git-blame-stats (renamed from bin/git/git-blame-stats)0
-rwxr-xr-xlocal/.bin/git/git-default-branch (renamed from bin/git/git-default-branch)0
-rwxr-xr-xlocal/.bin/git/git-file-size (renamed from bin/git/git-file-size)0
-rw-r--r--local/.bin/git/git-imerge (renamed from bin/git/git-imerge)0
-rwxr-xr-xlocal/.bin/git/git-pr (renamed from bin/git/git-pr)0
-rwxr-xr-xlocal/.bin/git/git-record (renamed from bin/git/git-record)0
-rwxr-xr-xlocal/.bin/git/git-root (renamed from bin/git/git-root)0
-rwxr-xr-xlocal/.bin/history-stats (renamed from bin/history-stats)0
-rwxr-xr-xlocal/.bin/hornet/backlight (renamed from bin/hornet/backlight)0
-rwxr-xr-xlocal/.bin/hornet/i3-switch-workspace (renamed from bin/hornet/i3-switch-workspace)0
-rwxr-xr-xlocal/.bin/hornet/import (renamed from bin/hornet/import)0
-rwxr-xr-xlocal/.bin/hornet/kill-focused (renamed from bin/hornet/kill-focused)0
-rwxr-xr-xlocal/.bin/hornet/numkeys (renamed from bin/hornet/numkeys)0
-rwxr-xr-xlocal/.bin/hornet/p (renamed from bin/hornet/p)0
-rwxr-xr-xlocal/.bin/hornet/sc (renamed from bin/hornet/sc)0
l---------local/.bin/hornet/scp (renamed from bin/hornet/scp)0
-rwxr-xr-xlocal/.bin/hornet/setup-inputs (renamed from bin/hornet/setup-inputs)0
l---------local/.bin/hornet/sftp (renamed from bin/hornet/sftp)0
-rwxr-xr-xlocal/.bin/hornet/ssh (renamed from bin/hornet/ssh)0
-rwxr-xr-xlocal/.bin/hornet/ssh-askpass (renamed from bin/hornet/ssh-askpass)0
-rwxr-xr-xlocal/.bin/hornet/status (renamed from bin/hornet/status)0
-rwxr-xr-xlocal/.bin/hornet/sudo (renamed from bin/hornet/sudo)0
-rwxr-xr-xlocal/.bin/hornet/sudo-askpass (renamed from bin/hornet/sudo-askpass)0
-rwxr-xr-xlocal/.bin/hornet/svdisable (renamed from bin/hornet/svdisable)0
-rwxr-xr-xlocal/.bin/hornet/svdn (renamed from bin/hornet/svdn)0
-rwxr-xr-xlocal/.bin/hornet/svget (renamed from bin/hornet/svget)0
-rwxr-xr-xlocal/.bin/hornet/svkill (renamed from bin/hornet/svkill)0
-rwxr-xr-xlocal/.bin/hornet/svlog (renamed from bin/hornet/svlog)0
-rwxr-xr-xlocal/.bin/hornet/svre (renamed from bin/hornet/svre)0
-rwxr-xr-xlocal/.bin/hornet/svst (renamed from bin/hornet/svst)0
-rwxr-xr-xlocal/.bin/hornet/svstop (renamed from bin/hornet/svstop)0
-rwxr-xr-xlocal/.bin/hornet/svup (renamed from bin/hornet/svup)0
-rwxr-xr-xlocal/.bin/hornet/tv (renamed from bin/hornet/tv)0
-rwxr-xr-xlocal/.bin/hornet/twitch (renamed from bin/hornet/twitch)0
-rwxr-xr-xlocal/.bin/hornet/update-weather (renamed from bin/hornet/update-weather)0
-rwxr-xr-xlocal/.bin/hornet/volume (renamed from bin/hornet/volume)0
-rwxr-xr-xlocal/.bin/hornet/vscreen (renamed from bin/hornet/vscreen)0
-rwxr-xr-xlocal/.bin/hornet/watch-kbd (renamed from bin/hornet/watch-kbd)0
-rwxr-xr-xlocal/.bin/hornet/weather (renamed from bin/hornet/weather)0
-rwxr-xr-xlocal/.bin/hornet/webcam (renamed from bin/hornet/webcam)0
-rwxr-xr-xlocal/.bin/hostcert (renamed from bin/hostcert)0
-rwxr-xr-xlocal/.bin/mbsyncloop (renamed from bin/mbsyncloop)0
-rwxr-xr-xlocal/.bin/mem-usage (renamed from bin/mem-usage)0
l---------local/.bin/mz-doy1/backlight (renamed from bin/mz-doy1/backlight)0
l---------local/.bin/mz-doy1/i3-switch-workspace (renamed from bin/mz-doy1/i3-switch-workspace)0
l---------local/.bin/mz-doy1/kill-focused (renamed from bin/mz-doy1/kill-focused)0
l---------local/.bin/mz-doy1/numkeys (renamed from bin/mz-doy1/numkeys)0
l---------local/.bin/mz-doy1/sc (renamed from bin/mz-doy1/sc)0
l---------local/.bin/mz-doy1/setup-inputs (renamed from bin/mz-doy1/setup-inputs)0
l---------local/.bin/mz-doy1/status (renamed from bin/mz-doy1/status)0
l---------local/.bin/mz-doy1/svdisable (renamed from bin/mz-doy1/svdisable)0
l---------local/.bin/mz-doy1/svdn (renamed from bin/mz-doy1/svdn)0
l---------local/.bin/mz-doy1/svget (renamed from bin/mz-doy1/svget)0
l---------local/.bin/mz-doy1/svkill (renamed from bin/mz-doy1/svkill)0
l---------local/.bin/mz-doy1/svlog (renamed from bin/mz-doy1/svlog)0
l---------local/.bin/mz-doy1/svre (renamed from bin/mz-doy1/svre)0
l---------local/.bin/mz-doy1/svst (renamed from bin/mz-doy1/svst)0
l---------local/.bin/mz-doy1/svstop (renamed from bin/mz-doy1/svstop)0
l---------local/.bin/mz-doy1/svup (renamed from bin/mz-doy1/svup)0
l---------local/.bin/mz-doy1/volume (renamed from bin/mz-doy1/volume)0
l---------local/.bin/mz-doy1/watch-kbd (renamed from bin/mz-doy1/watch-kbd)0
-rwxr-xr-xlocal/.bin/nopaste (renamed from bin/nopaste)0
-rwxr-xr-xlocal/.bin/on-lock (renamed from bin/on-lock)0
-rwxr-xr-xlocal/.bin/pacman-dump (renamed from bin/pacman-dump)0
-rwxr-xr-xlocal/.bin/pdfcat (renamed from bin/pdfcat)0
-rwxr-xr-xlocal/.bin/pick-music (renamed from bin/pick-music)0
-rwxr-xr-xlocal/.bin/rand-music (renamed from bin/rand-music)0
-rwxr-xr-xlocal/.bin/reply (renamed from bin/reply)0
-rwxr-xr-xlocal/.bin/rg (renamed from bin/rg)0
-rwxr-xr-xlocal/.bin/ringtone (renamed from bin/ringtone)0
-rwxr-xr-xlocal/.bin/scanpdf (renamed from bin/scanpdf)0
-rwxr-xr-xlocal/.bin/scratch (renamed from bin/scratch)0
-rwxr-xr-xlocal/.bin/set-mac (renamed from bin/set-mac)0
-rwxr-xr-xlocal/.bin/show-colors (renamed from bin/show-colors)0
-rwxr-xr-xlocal/.bin/smt (renamed from bin/smt)0
-rwxr-xr-xlocal/.bin/sum (renamed from bin/sum)0
-rwxr-xr-xlocal/.bin/tmux-clipboard (renamed from bin/tmux-clipboard)0
-rwxr-xr-xlocal/.bin/tozt/learn_spam (renamed from bin/tozt/learn_spam)0
-rwxr-xr-xlocal/.bin/update-addressbook (renamed from bin/update-addressbook)0
-rwxr-xr-xlocal/.bin/vimmanpager (renamed from bin/vimmanpager)0
-rwxr-xr-xlocal/.bin/web (renamed from bin/web)0
-rw-r--r--local/.gitignore1
-rwxr-xr-xlocal/.services/available/watch-kbd/log/run (renamed from services/available/watch-kbd/log/run)0
-rwxr-xr-xlocal/.services/available/watch-kbd/run (renamed from services/available/watch-kbd/run)0
-rw-r--r--local/Makefile4
-rw-r--r--mbsync/.mbsyncrc (renamed from mbsyncrc)0
-rw-r--r--mbsyncloop/.config/mbsyncloop/config.json (renamed from config/mbsyncloop/config.json)0
-rwxr-xr-xmbsyncloop/.services/available/mbsyncloop/log/run (renamed from services/available/mbsyncloop/log/run)0
-rwxr-xr-xmbsyncloop/.services/available/mbsyncloop/run (renamed from services/available/mbsyncloop/run)0
-rw-r--r--mbsyncloop/Makefile4
-rw-r--r--mpd/.config/mpd/mpd.conf (renamed from config/mpd/mpd.conf)0
-rwxr-xr-xmpd/.services/available/mpd/log/run (renamed from services/available/mpd/log/run)0
-rwxr-xr-xmpd/.services/available/mpd/run (renamed from services/available/mpd/run)0
-rw-r--r--mpd/Makefile6
-rw-r--r--msmtp/.config/msmtp/config (renamed from config/msmtp/config)0
-rw-r--r--msmtp/Makefile4
-rwxr-xr-xmutt/.config/mutt/choose-muttrc-type (renamed from mutt/choose-muttrc-type)4
-rw-r--r--mutt/.config/mutt/imap (renamed from mutt/imap)0
-rw-r--r--mutt/.config/mutt/local (renamed from mutt/local)0
-rw-r--r--mutt/.config/mutt/mailcap (renamed from mutt/mailcap)0
-rw-r--r--mutt/.config/mutt/muttrc (renamed from mutt/muttrc)4
-rw-r--r--mutt/Makefile5
-rw-r--r--ncmpcpp/.config/ncmpcpp/bindings (renamed from config/ncmpcpp/bindings)0
-rw-r--r--nethack/.nethackrc (renamed from nethackrc)0
-rwxr-xr-xnotmuch/.cache/notmuch/hooks/post-new (renamed from notmuch/hooks/post-new)0
-rw-r--r--notmuch/.config/notmuch/default/config (renamed from notmuch-config)0
-rw-r--r--notmuch/Makefile4
-rw-r--r--packages.hornet40
-rw-r--r--packages.mail23
-rw-r--r--packages.mz-doy128
-rw-r--r--packages.partofme23
-rw-r--r--packages.root18
-rw-r--r--packages.tozt23
-rw-r--r--readline/.inputrc (renamed from inputrc)0
-rwxr-xr-xredshift/.services/available/redshift/log/run (renamed from services/available/redshift/log/run)0
-rwxr-xr-xredshift/.services/available/redshift/run (renamed from services/available/redshift/run)0
-rw-r--r--redshift/Makefile4
-rw-r--r--reply/.replyrc (renamed from replyrc)0
-rw-r--r--screen/.screenrc (renamed from screenrc)0
-rw-r--r--sh/.config/sh/aliases (renamed from config/sh/aliases)0
-rw-r--r--sh/.config/sh/cdhist.sh (renamed from config/sh/cdhist.sh)0
-rw-r--r--sh/.config/sh/env (renamed from config/sh/env)0
-rw-r--r--sh/.config/sh/functions (renamed from config/sh/functions)0
m---------sh/.config/sh/fzf (renamed from config/sh/fzf)0
-rw-r--r--sh/.profile (renamed from profile)0
-rw-r--r--ssh/.ssh/authorized_keys (renamed from ssh/authorized_keys)0
-rw-r--r--ssh/.ssh/cao_key (renamed from ssh/cao_key)0
-rw-r--r--ssh/Makefile4
-rw-r--r--starship/.config/starship.toml.PL (renamed from config/starship.toml.PL)8
-rw-r--r--starship/.gitignore1
-rw-r--r--starship/Makefile6
-rw-r--r--tex/.config/tex/jesse.sty (renamed from config/tex/jesse.sty)0
-rw-r--r--tex/.config/tex/jesse_essay.sty (renamed from config/tex/jesse_essay.sty)0
-rw-r--r--tex/.config/tex/jesse_letter.sty (renamed from config/tex/jesse_letter.sty)0
-rw-r--r--tex/.config/tex/jesse_macros.sty (renamed from config/tex/jesse_macros.sty)0
-rw-r--r--tex/.config/tex/jesse_resume.sty (renamed from config/tex/jesse_resume.sty)0
-rw-r--r--tex/.config/tex/sarah_resume.sty (renamed from config/tex/sarah_resume.sty)0
-rw-r--r--tig/.config/tig/config (renamed from config/tig/config)0
-rw-r--r--tmux/.config/tmux/tmux.conf (renamed from tmux.conf)0
-rwxr-xr-xunclutter/.services/available/unclutter/log/run (renamed from services/available/unclutter/log/run)0
-rwxr-xr-xunclutter/.services/available/unclutter/run (renamed from services/available/unclutter/run)0
-rw-r--r--unclutter/Makefile4
-rwxr-xr-xuninstall9
-rw-r--r--vim/.gitignore1
-rw-r--r--vim/.vim/after/ftplugin/rust.vim (renamed from vim/after/ftplugin/rust.vim)0
-rw-r--r--vim/.vim/colors/local.vim (renamed from vim/colors/local.vim)0
-rw-r--r--vim/.vim/ftdetect/c.vim (renamed from vim/ftdetect/c.vim)0
-rw-r--r--vim/.vim/ftdetect/levdes.vim (renamed from vim/ftdetect/levdes.vim)0
-rw-r--r--vim/.vim/ftdetect/nhdes.vim (renamed from vim/ftdetect/nhdes.vim)0
-rw-r--r--vim/.vim/ftplugin/c.vim (renamed from vim/ftplugin/c.vim)0
-rw-r--r--vim/.vim/ftplugin/cpp.vim (renamed from vim/ftplugin/cpp.vim)0
-rw-r--r--vim/.vim/ftplugin/gitcommit.vim (renamed from vim/ftplugin/gitcommit.vim)0
-rw-r--r--vim/.vim/ftplugin/go.vim (renamed from vim/ftplugin/go.vim)0
-rw-r--r--vim/.vim/ftplugin/help.vim (renamed from vim/ftplugin/help.vim)0
-rw-r--r--vim/.vim/ftplugin/javascript.vim (renamed from vim/ftplugin/javascript.vim)0
-rw-r--r--vim/.vim/ftplugin/perl.vim (renamed from vim/ftplugin/perl.vim)0
-rw-r--r--vim/.vim/ftplugin/puppet.vim (renamed from vim/ftplugin/puppet.vim)0
-rw-r--r--vim/.vim/ftplugin/python.vim (renamed from vim/ftplugin/python.vim)0
-rw-r--r--vim/.vim/ftplugin/ruby.vim (renamed from vim/ftplugin/ruby.vim)0
-rw-r--r--vim/.vim/ftplugin/rust.vim (renamed from vim/ftplugin/rust.vim)0
-rw-r--r--vim/.vim/ftplugin/sh.vim (renamed from vim/ftplugin/sh.vim)0
-rw-r--r--vim/.vim/ftplugin/terraform.vim (renamed from vim/ftplugin/terraform.vim)0
-rw-r--r--vim/.vim/ftplugin/tex.vim (renamed from vim/ftplugin/tex.vim)0
-rw-r--r--vim/.vim/ftplugin/vim.vim (renamed from vim/ftplugin/vim.vim)0
-rw-r--r--vim/.vim/ftplugin/vimwiki.vim (renamed from vim/ftplugin/vimwiki.vim)0
-rw-r--r--vim/.vim/ftplugin/xs.vim (renamed from vim/ftplugin/xs.vim)0
m---------vim/.vim/pack/filetype/start/polyglot (renamed from vim/pack/filetype/start/polyglot)0
m---------vim/.vim/pack/plugins/start/airline (renamed from vim/pack/plugins/start/airline)0
m---------vim/.vim/pack/plugins/start/ale (renamed from vim/pack/plugins/start/ale)0
m---------vim/.vim/pack/plugins/start/autobrace (renamed from vim/pack/plugins/start/autobrace)0
m---------vim/.vim/pack/plugins/start/commentary (renamed from vim/pack/plugins/start/commentary)0
m---------vim/.vim/pack/plugins/start/diff-changes (renamed from vim/pack/plugins/start/diff-changes)0
m---------vim/.vim/pack/plugins/start/editorconfig (renamed from vim/pack/plugins/start/editorconfig)0
m---------vim/.vim/pack/plugins/start/fzf (renamed from vim/pack/plugins/start/fzf)0
m---------vim/.vim/pack/plugins/start/fzf.vim (renamed from vim/pack/plugins/start/fzf.vim)0
m---------vim/.vim/pack/plugins/start/gundo (renamed from vim/pack/plugins/start/gundo)0
m---------vim/.vim/pack/plugins/start/history-sync (renamed from vim/pack/plugins/start/history-sync)0
m---------vim/.vim/pack/plugins/start/startify (renamed from vim/pack/plugins/start/startify)0
m---------vim/.vim/pack/plugins/start/textobj (renamed from vim/pack/plugins/start/textobj)0
-rw-r--r--vim/.vim/plugin/dircreate.vim (renamed from vim/plugin/dircreate.vim)0
-rw-r--r--vim/.vim/plugin/eolws.vim (renamed from vim/plugin/eolws.vim)0
-rw-r--r--vim/.vim/plugin/keywordprg.vim (renamed from vim/plugin/keywordprg.vim)0
-rw-r--r--vim/.vim/plugin/opinionated-defaults.vim (renamed from vim/plugin/opinionated-defaults.vim)0
-rw-r--r--vim/.vim/plugin/rainbow_paren.vim (renamed from vim/plugin/rainbow_paren.vim)0
-rw-r--r--vim/.vim/spell/en.utf-8.add (renamed from vim/spell/en.utf-8.add)0
-rw-r--r--vim/.vim/syntax/levdes.vim (renamed from vim/syntax/levdes.vim)0
-rw-r--r--vim/.vim/syntax/nhdes.vim (renamed from vim/syntax/nhdes.vim)0
-rw-r--r--vim/.vim/syntax/perl.vim (renamed from vim/syntax/perl.vim)0
-rw-r--r--vim/.vimrc (renamed from vimrc)0
-rw-r--r--vim/Makefile19
-rwxr-xr-xxbindkeys/.services/available/xbindkeys/run (renamed from services/available/xbindkeys/run)0
-rw-r--r--xbindkeys/.xbindkeysrc (renamed from xbindkeysrc)0
-rw-r--r--xbindkeys/Makefile4
-rwxr-xr-xxcape/.services/available/xcape/log/run (renamed from services/available/xcape/log/run)0
-rwxr-xr-xxcape/.services/available/xcape/run (renamed from services/available/xcape/run)0
-rw-r--r--xcape/Makefile4
-rw-r--r--xorg/.Xdefaults (renamed from Xdefaults)0
-rw-r--r--xorg/.Xmodmap (renamed from Xmodmap)0
-rw-r--r--xorg/.xinitrc (renamed from xinitrc)0
-rw-r--r--xorg/.xprofile (renamed from xprofile)0
-rwxr-xr-xxss-lock/.services/available/xss-lock/log/run (renamed from services/available/xss-lock/log/run)0
-rwxr-xr-xxss-lock/.services/available/xss-lock/run (renamed from services/available/xss-lock/run)0
-rw-r--r--xss-lock/Makefile4
-rw-r--r--zsh/.config/zsh/local-completions/hornet/_sv (renamed from config/zsh/local-completions/hornet/_sv)0
m---------zsh/.config/zsh/zsh-autosuggestions (renamed from config/zsh/zsh-autosuggestions)0
m---------zsh/.config/zsh/zsh-completions (renamed from config/zsh/zsh-completions)0
m---------zsh/.config/zsh/zsh-syntax-highlighting (renamed from config/zsh/zsh-syntax-highlighting)0
-rw-r--r--zsh/.zshcomplete (renamed from zshcomplete)0
-rw-r--r--zsh/.zshinput (renamed from zshinput)0
-rw-r--r--zsh/.zshrc (renamed from zshrc)0
274 files changed, 403 insertions, 528 deletions
diff --git a/.gitignore b/.gitignore
index 79c3b35..b5173bb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1 @@
-/config/alacritty/alacritty.yml
-/config/starship.toml
-/config/darksky/api
-/hammerspoon/hs
-/local/share/fortune/*.dat
-/less
-/mbsyncloop
-/mpdscribble/mpdscribble.conf
-/vim/spell/*.spl
+supervise \ No newline at end of file
diff --git a/.gitmodules b/.gitmodules
index 587197a..e9a9972 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,84 +1,51 @@
-[submodule "vim/bundle/fuzzyfinder"]
- path = vim/bundle/fuzzyfinder
- url = https://github.com/vim-scripts/FuzzyFinder
-[submodule "vim/bundle/gundo"]
- path = vim/pack/plugins/start/gundo
- url = https://github.com/sjl/gundo.vim
-[submodule "vim/bundle/l9"]
- path = vim/bundle/l9
- url = https://github.com/vim-scripts/L9
-[submodule "vim/bundle/snipmate"]
- path = vim/bundle/snipmate
- url = https://github.com/garbas/vim-snipmate
-[submodule "vim/bundle/supertab"]
- path = vim/bundle/supertab
- url = https://github.com/ervandew/supertab
-[submodule "vim/bundle/textobj"]
- path = vim/pack/plugins/start/textobj
- url = https://github.com/doy/vim-textobj
-[submodule "zsh/zsh-syntax-highlighting"]
- path = config/zsh/zsh-syntax-highlighting
- url = https://github.com/zsh-users/zsh-syntax-highlighting
-[submodule "vim/bundle/tlib"]
- path = vim/bundle/tlib
- url = https://github.com/tomtom/tlib_vim
-[submodule "vim/bundle/addon-mw-utils"]
- path = vim/bundle/addon-mw-utils
- url = https://github.com/MarcWeber/vim-addon-mw-utils
-[submodule "vim/bundle/startify"]
- path = vim/pack/plugins/start/startify
- url = https://github.com/mhinz/vim-startify
-[submodule "vim/bundle/airline"]
- path = vim/pack/plugins/start/airline
- url = https://github.com/bling/vim-airline
-[submodule "vim/bundle/neocomplete"]
- path = vim/bundle/neocomplete
- url = https://github.com/Shougo/neocomplete.vim
-[submodule "vim/bundle/typescript"]
- path = vim/bundle/typescript
- url = https://github.com/leafgarland/typescript-vim
-[submodule "vim/bundle/julia"]
- path = vim/bundle/julia
- url = https://github.com/JuliaLang/julia-vim
-[submodule "zsh/zsh-autosuggestions"]
- path = config/zsh/zsh-autosuggestions
+[submodule "sh/.config/sh/fzf"]
+ path = sh/.config/sh/fzf
+ url = https://github.com/junegunn/fzf
+[submodule "zsh/.config/zsh/zsh-autosuggestions"]
+ path = zsh/.config/zsh/zsh-autosuggestions
url = https://github.com/zsh-users/zsh-autosuggestions
-[submodule "zsh/zsh-completions"]
- path = config/zsh/zsh-completions
+[submodule "zsh/.config/zsh/zsh-completions"]
+ path = zsh/.config/zsh/zsh-completions
url = https://github.com/zsh-users/zsh-completions
-[submodule "vim/pack/local/start/ale"]
- path = vim/pack/plugins/start/ale
+[submodule "zsh/.config/zsh/zsh-syntax-highlighting"]
+ path = zsh/.config/zsh/zsh-syntax-highlighting
+ url = https://github.com/zsh-users/zsh-syntax-highlighting
+[submodule "vim/.vim/pack/filetype/start/polyglot"]
+ path = vim/.vim/pack/filetype/start/polyglot
+ url = https://github.com/sheerun/vim-polyglot
+[submodule "vim/.vim/pack/plugins/start/airline"]
+ path = vim/.vim/pack/plugins/start/airline
+ url = https://github.com/bling/vim-airline
+[submodule "vim/.vim/pack/plugins/start/ale"]
+ path = vim/.vim/pack/plugins/start/ale
url = https://github.com/w0rp/ale
-[submodule "vim/pack/local/start/commentary"]
- path = vim/pack/plugins/start/commentary
+[submodule "vim/.vim/pack/plugins/start/autobrace"]
+ path = vim/.vim/pack/plugins/start/autobrace
+ url = https://github.com/doy/vim-autobrace
+[submodule "vim/.vim/pack/plugins/start/commentary"]
+ path = vim/.vim/pack/plugins/start/commentary
url = https://github.com/tpope/vim-commentary
-[submodule "vim/pack/plugins/start/editorconfig"]
- path = vim/pack/plugins/start/editorconfig
+[submodule "vim/.vim/pack/plugins/start/diff-changes"]
+ path = vim/.vim/pack/plugins/start/diff-changes
+ url = https://github.com/doy/vim-diff-changes
+[submodule "vim/.vim/pack/plugins/start/editorconfig"]
+ path = vim/.vim/pack/plugins/start/editorconfig
url = https://github.com/editorconfig/editorconfig-vim
-[submodule "zsh/fzf"]
- path = config/sh/fzf
+[submodule "vim/.vim/pack/plugins/start/fzf"]
+ path = vim/.vim/pack/plugins/start/fzf
url = https://github.com/junegunn/fzf
-[submodule "vim/pack/plugins/start/fzf.vim"]
- path = vim/pack/plugins/start/fzf.vim
+[submodule "vim/.vim/pack/plugins/start/fzf.vim"]
+ path = vim/.vim/pack/plugins/start/fzf.vim
url = https://github.com/junegunn/fzf.vim
-[submodule "vim/pack/plugins/start/fzf"]
- path = vim/pack/plugins/start/fzf
- url = https://github.com/junegunn/fzf
-[submodule "vim/pack/plugins/start/history-sync"]
- path = vim/pack/plugins/start/history-sync
+[submodule "vim/.vim/pack/plugins/start/gundo"]
+ path = vim/.vim/pack/plugins/start/gundo
+ url = https://github.com/sjl/gundo.vim
+[submodule "vim/.vim/pack/plugins/start/history-sync"]
+ path = vim/.vim/pack/plugins/start/history-sync
url = https://github.com/doy/vim-history-sync
-[submodule "vim/pack/plugins/start/diff-changes"]
- path = vim/pack/plugins/start/diff-changes
- url = https://github.com/doy/vim-diff-changes
-[submodule "vim/pack/plugins/start/autobrace"]
- path = vim/pack/plugins/start/autobrace
- url = https://github.com/doy/vim-autobrace
-[submodule "vim/pack/filetype/start/polyglot"]
- path = vim/pack/filetype/start/polyglot
- url = https://github.com/sheerun/vim-polyglot
-[submodule "vim/pack/filetype/start/terraform"]
- path = vim/pack/filetype/start/terraform
- url = https://github.com/hashivim/vim-terraform
-[submodule "hammerspoon/src/spaces"]
- path = hammerspoon/src/spaces
- url = https://github.com/asmagill/hs._asm.undocumented.spaces
+[submodule "vim/.vim/pack/plugins/start/startify"]
+ path = vim/.vim/pack/plugins/start/startify
+ url = https://github.com/mhinz/vim-startify
+[submodule "vim/.vim/pack/plugins/start/textobj"]
+ path = vim/.vim/pack/plugins/start/textobj
+ url = https://github.com/doy/vim-textobj
diff --git a/.stowrc b/.stowrc
new file mode 100644
index 0000000..a8b39ca
--- /dev/null
+++ b/.stowrc
@@ -0,0 +1,5 @@
+-t ~
+--ignore=Makefile
+--ignore=.gitignore
+--ignore=.PL
+--ignore=.stowskip
diff --git a/Makefile b/Makefile
index ad84719..af40754 100644
--- a/Makefile
+++ b/Makefile
@@ -1,157 +1,25 @@
-INTO := $(HOME)
-
-all : build
-
-ifneq ($(USER),root)
-include Makefile.$(shell hostname | cut -d. -f1)
+ifeq ($(USER),root)
+PACKAGES=$(shell cat packages.root)
+else
+PACKAGES=$(shell cat packages.$$(hostname))
endif
-INSTALL := \
- $(INSTALL) \
- .abook/abookrc \
- .bash_profile \
- .bashrc \
- .config/git/config \
- .config/git/ignore \
- .config/helix/config.toml \
- .config/helix/languages.toml \
- .config/helix/themes/doy.toml \
- .config/mpd/mpd.conf \
- .config/ncmpcpp/bindings \
- .config/sh/aliases \
- .config/sh/cdhist.sh \
- .config/sh/env \
- .config/sh/functions \
- .config/sh/fzf \
- .config/starship.toml \
- .config/tex/jesse_essay.sty \
- .config/tex/jesse_letter.sty \
- .config/tex/jesse_macros.sty \
- .config/tex/jesse_resume.sty \
- .config/tex/jesse.sty \
- .config/tex/sarah_resume.sty \
- .config/tig/config \
- .config/zsh/local-completions \
- .config/zsh/zsh-autosuggestions \
- .config/zsh/zsh-completions \
- .config/zsh/zsh-syntax-highlighting \
- .crawlrc \
- .gdbinit \
- .inputrc \
- .less \
- .local/share/fortune \
- .mutt/choose-muttrc-type \
- .mutt/imap \
- .mutt/mailcap \
- .mutt/muttrc \
- .mutt/local \
- .nethackrc \
- .profile \
- .replyrc \
- .screenrc \
- .ssh/cao_key \
- .tmux.conf \
- .vimrc \
- .zshcomplete \
- .zshinput \
- .zshrc \
- .bin \
- .vim \
-
-EMPTYDIRS := \
- $(EMPTYDIRS) \
- .cache/mutt/headers \
- .cache/mutt/bodies \
- .cache/vim/hist \
- .cache/vim/undo \
-
-INSTALL_CUSTOM := \
- $(INSTALL_CUSTOM)
-
-BUILD := \
- $(BUILD) \
- $(addsuffix .dat,$(filter-out %.dat,$(wildcard local/share/fortune/*))) \
- $(addsuffix tags,$(wildcard vim/pack/*/start/*/doc/)) \
- vim/spell/en.utf-8.add.spl \
- less \
- config/starship.toml
-
-INSTALLED_SYMLINKS := \
- $(patsubst %,$(INTO)/%,$(INSTALL)) \
- $(INSTALL_CUSTOM)
-
-INSTALLED_DIRS := \
- $(patsubst %,$(INTO)/%,$(EMPTYDIRS))
-
-INSTALLED := \
- $(INSTALLED_SYMLINKS) \
- $(INSTALLED_DIRS)
-
-ECHO = @echo
-LN = @ln -sf
-MKDIR = @mkdir -p
-RM = @rm -f
-RMDIR = @rmdir -p --ignore-fail-on-non-empty
-
-# force shell instead of exec to work around
-# https://savannah.gnu.org/bugs/?57962 since i have ~/.bin/git as a directory
-GIT = @:; git
-
-# named targets
-
-build : submodules $(BUILD)
-
-submodules :
- $(GIT) submodule update --init --recursive
-
-install :: all $(INSTALLED)
- @chmod 600 ssh/cao_key
- $(ECHO) Installed into $(INTO)
-
-clean ::
- $(ECHO) Cleaning from $(INTO)
- $(RM) $(BUILD)
- $(RM) $(INSTALLED_SYMLINKS)
- $(RMDIR) $(INSTALLED_DIRS)
-
-update :
- $(GIT) submodule foreach '(if [ $$path == "vim/pack/filetype/start/perl" ]; then git checkout dev; else git checkout master; fi) && git pull'
-
-versions :
- $(GIT) submodule foreach -q 'printf "%-53s" " $$path" && GIT_PAGER=cat git show -s --format=format:%cI%n $$sha1'
-
-updates :
- $(GIT) submodule foreach -q 'if [ $$path == "vim/pack/filetype/start/perl" ]; then if [ $$(git rev-parse dev) != $$sha1 ]; then git lg dev...$$sha1; fi; else if [ $$(git rev-parse master) != $$sha1 ]; then git lg master...$$sha1; fi; fi'
-
-shfmt :
- rg --files-without-match shfmt:skip $$(rg --files-with-matches '[#]!.*sh\b|[v]im:.*ft=.*sh\b') | grep -v "$$(echo $$(git submodule foreach -q 'echo $$sm_path') | sed 's/ /\\|/g')" | xargs shfmt -w -i 4
-
-.PHONY: submodules build install clean update versions updates shfmt
-
-# installation targets
-
-$(patsubst %,$(INTO)/%,$(EMPTYDIRS)) :
- $(MKDIR) $@
-
-$(patsubst %,$(INTO)/%,$(INSTALL)) : $(INTO)/.% : %
- @[ ! -e $@ ] || [ -h $@ ] || mv -f $@ $@.bak
- $(MKDIR) $(dir $@)
- $(LN) $(PWD)/$< $@
+build: submodules
+ @for package in $(PACKAGES); do ./build $${package}; done
-# build targets
+install: submodules
+ @for package in $(PACKAGES); do ./install $${package}; done
-local/share/fortune/%.dat : local/share/fortune/%
- $(ECHO) "Compiling $@"
- @strfile -s $(basename $@)
+uninstall:
+ @for package in $(PACKAGES); do ./uninstall $${package}; done
-%/doc/tags: %/doc
- @vim -u NONE -c':helptags $< | :q'
+clean:
+ @for package in $(PACKAGES); do ./clean $${package}; done
-%.spl : %
- @vim -u NONE -c':mkspell! $< | :q'
+submodules:
+ @git submodule update --init --recursive
-less : lesskey
- @lesskey -o $@ $<
+update:
+ @git submodule foreach '(if [ $$sm_path == "vim/.vim/pack/filetype/start/perl" ]; then git checkout dev; else git checkout master; fi) && git pull'
-config/starship.toml : config/starship.toml.PL
- @perl $< $$USER $$(hostname) > $@
+.PHONY: build install uninstall clean submodules update
diff --git a/Makefile.hornet b/Makefile.hornet
deleted file mode 100644
index 200c85f..0000000
--- a/Makefile.hornet
+++ /dev/null
@@ -1,60 +0,0 @@
-INSTALL := \
- .config/alacritty/alacritty.yml \
- .config/i3/browser-workspace.json \
- .config/i3/config \
- .config/i3/terminal-workspace.json \
- .config/i3status/config \
- .config/mbsyncloop/config.json \
- .config/msmtp/config \
- .mbsyncrc \
- .notmuch-config \
- .ssh/authorized_keys \
- .xbindkeysrc \
- .Xdefaults \
- .xinitrc \
- .xprofile \
- .Xmodmap \
- $(patsubst %,.%,$(wildcard services/available/*/run)) \
- $(patsubst %,.%,$(wildcard services/available/*/log/run))
-
-EMPTYDIRS := \
- $(patsubst services/available/%,.log/%,$(wildcard services/available/*)) \
- Maildir \
- .cache/mpd \
- .cache/notmuch \
- .config/mpd/playlists
-
-INSTALL_CUSTOM := \
- $(patsubst services/available/%,$(INTO)/.services/enabled/%,$(wildcard services/available/*)) \
- /var/spool/cron/$(USER) \
- $(INTO)/.cache/notmuch/hooks/post-new
-
-BUILD := \
- config/alacritty/alacritty.yml
-
-install ::
- @chmod 600 config/msmtp/config
-
-clean ::
- @crontab -r
-
-/var/spool/cron/$(USER) : crontab
- @crontab $<
-
-$(INTO)/.cache/notmuch/hooks/post-new: notmuch/hooks/post-new
- @[ ! -e $@ ] || [ -h $@ ] || mv -f $@ $@.bak
- $(MKDIR) $(INTO)/.cache/notmuch/hooks
- $(LN) $(PWD)/$< $@
-
-$(INTO)/.services/enabled :
- $(MKDIR) $@
-
-$(INTO)/.services/enabled/% : services/available/% $(INTO)/.services/enabled
- $(MKDIR) $(dir $<)
- $(LN) ../available/$(notdir $<) $@
-
-config/alacritty/alacritty.yml : config/alacritty/alacritty.yml.hornet
- $(LN) $(notdir $<) $@
-
-config/weather :
- $(MKDIR) $@
diff --git a/Makefile.include b/Makefile.include
new file mode 100644
index 0000000..8a2a3fd
--- /dev/null
+++ b/Makefile.include
@@ -0,0 +1,12 @@
+build:
+install:
+uninstall:
+clean:
+.PHONY: build install uninstall clean
+
+% : %.PL
+ @perl $< > $@
+
+$(HOME)/.services/enabled/% : $(HOME)/.services/available/%
+ @mkdir -p $(dir $<)
+ @ln -sf ../available/$(notdir $<) $@
diff --git a/Makefile.mail b/Makefile.mail
deleted file mode 100644
index 94da815..0000000
--- a/Makefile.mail
+++ /dev/null
@@ -1,8 +0,0 @@
-INSTALL := \
- .ssh/authorized_keys
-
-EMPTYDIRS := \
-
-INSTALL_CUSTOM := \
-
-BUILD := \
diff --git a/Makefile.mz-doy1 b/Makefile.mz-doy1
deleted file mode 100644
index dcf63f8..0000000
--- a/Makefile.mz-doy1
+++ /dev/null
@@ -1,36 +0,0 @@
-SKIP_SERVICES := \
- mbsyncloop \
- mpd
-
-INSTALL := \
- .config/alacritty/alacritty.yml \
- .config/i3/browser-workspace.json \
- .config/i3/config \
- .config/i3/terminal-workspace.json \
- .config/i3status/config \
- .xbindkeysrc \
- .Xdefaults \
- .xinitrc \
- .xprofile \
- .Xmodmap \
- $(patsubst %,.%,$(wildcard services/available/*/run)) \
- $(patsubst %,.%,$(wildcard services/available/*/log/run))
-
-EMPTYDIRS := \
- $(patsubst services/available/%,.log/%,$(filter-out $(patsubst %,\%/%,$(SKIP_SERVICES)),$(wildcard services/available/*)))
-
-INSTALL_CUSTOM := \
- $(patsubst services/available/%,$(INTO)/.services/enabled/%,$(filter-out $(patsubst %,\%/%,$(SKIP_SERVICES)),$(wildcard services/available/*)))
-
-BUILD := \
- config/alacritty/alacritty.yml
-
-$(INTO)/.services/enabled :
- $(MKDIR) $@
-
-$(INTO)/.services/enabled/% : services/available/% $(INTO)/.services/enabled
- $(MKDIR) $(dir $<)
- $(LN) ../available/$(notdir $<) $@
-
-config/alacritty/alacritty.yml : config/alacritty/alacritty.yml.mz-doy1
- $(LN) $(notdir $<) $@
diff --git a/Makefile.partofme b/Makefile.partofme
deleted file mode 100644
index 94da815..0000000
--- a/Makefile.partofme
+++ /dev/null
@@ -1,8 +0,0 @@
-INSTALL := \
- .ssh/authorized_keys
-
-EMPTYDIRS := \
-
-INSTALL_CUSTOM := \
-
-BUILD := \
diff --git a/Makefile.tozt b/Makefile.tozt
deleted file mode 100644
index 94da815..0000000
--- a/Makefile.tozt
+++ /dev/null
@@ -1,8 +0,0 @@
-INSTALL := \
- .ssh/authorized_keys
-
-EMPTYDIRS := \
-
-INSTALL_CUSTOM := \
-
-BUILD := \
diff --git a/abook/abookrc b/abook/.abook/abookrc
index 671efa9..671efa9 100644
--- a/abook/abookrc
+++ b/abook/.abook/abookrc
diff --git a/config/alacritty/alacritty.yml.hornet b/alacritty/.config/alacritty/alacritty.yml.PL
index 4cd3bc9..3fe98d0 100644
--- a/config/alacritty/alacritty.yml.hornet
+++ b/alacritty/.config/alacritty/alacritty.yml.PL
@@ -1,3 +1,19 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use 5.016;
+
+chomp(my $hostname = `hostname`);
+
+while (<DATA>) {
+ if ($hostname eq 'mz-doy1') {
+ s/family: .*/family: Fixed/;
+ s/size: .*/size: 10.5/;
+ }
+ print;
+}
+
+__DATA__
---
env:
TERM: alacritty-direct
diff --git a/alacritty/.gitignore b/alacritty/.gitignore
new file mode 100644
index 0000000..153e26f
--- /dev/null
+++ b/alacritty/.gitignore
@@ -0,0 +1 @@
+/.config/alacritty/alacritty.yml
diff --git a/alacritty/Makefile b/alacritty/Makefile
new file mode 100644
index 0000000..89df287
--- /dev/null
+++ b/alacritty/Makefile
@@ -0,0 +1,6 @@
+include ../Makefile.include
+
+build: .config/alacritty/alacritty.yml
+
+clean:
+ @rm -f .config/alacritty/alacritty.yml
diff --git a/bash_profile b/bash/.bash_profile
index b200eb1..b200eb1 100644
--- a/bash_profile
+++ b/bash/.bash_profile
diff --git a/bashrc b/bash/.bashrc
index 9341497..9341497 100644
--- a/bashrc
+++ b/bash/.bashrc
diff --git a/bin/local/.gitignore b/bin/local/.gitignore
deleted file mode 100644
index 120f485..0000000
--- a/bin/local/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!/.gitignore
diff --git a/build b/build
new file mode 100755
index 0000000..7b227c4
--- /dev/null
+++ b/build
@@ -0,0 +1,8 @@
+#!/bin/sh
+set -eu
+
+[ -d "$1" ] || (echo "package $1 not found" >&2; exit 1)
+
+[ -f "$1/Makefile" ] && (cd "$1" && make -s build)
+
+true
diff --git a/clean b/clean
new file mode 100755
index 0000000..10f63dd
--- /dev/null
+++ b/clean
@@ -0,0 +1,9 @@
+#!/bin/sh
+set -eu
+
+[ -d "$1" ] || (echo "package $1 not found" >&2; exit 1)
+
+./uninstall "$1"
+[ -f "$1/Makefile" ] && (cd "$1" && make -s clean)
+
+true
diff --git a/services/available/compton/log/run b/compton/.services/available/compton/log/run
index 38568be..38568be 100755
--- a/services/available/compton/log/run
+++ b/compton/.services/available/compton/log/run
diff --git a/services/available/compton/run b/compton/.services/available/compton/run
index 8c67cec..8c67cec 100755
--- a/services/available/compton/run
+++ b/compton/.services/available/compton/run
diff --git a/compton/Makefile b/compton/Makefile
new file mode 100644
index 0000000..5282c6a
--- /dev/null
+++ b/compton/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/compton
+ @mkdir -p $(HOME)/.log/compton
diff --git a/config/alacritty/alacritty.yml.mz-doy1 b/config/alacritty/alacritty.yml.mz-doy1
deleted file mode 100644
index 35b48c9..0000000
--- a/config/alacritty/alacritty.yml.mz-doy1
+++ /dev/null
@@ -1,165 +0,0 @@
----
-env:
- TERM: alacritty-direct
-
-window:
- dimensions:
- columns: 80
- lines: 24
- padding:
- x: 2
- y: 2
- decorations: full
-
-draw_bold_text_with_bright_colors: true
-
-font:
- normal:
- family: Fixed
- bold:
- family: Fixed
- style: Regular
- italic:
- family: Fixed
- size: 10.5
-
-colors:
- primary:
- background: '0x000000'
- foreground: '0xc1c9d2'
- cursor:
- text: '0x000000'
- cursor: '0x00ff00'
- normal:
- black: '0x000000'
- red: '0xed5f74'
- green: '0x1ea672'
- yellow: '0xd97917'
- blue: '0x688ef1'
- magenta: '0xc96ed0'
- cyan: '0x3a97d4'
- white: '0xe3e8ee'
- bright:
- black: '0x697386'
- red: '0xfbb5b2'
- green: '0x85d996'
- yellow: '0xefc078'
- blue: '0x9fcdff'
- magenta: '0xf0b4e4'
- cyan: '0x7fd3ed'
- white: '0xffffff'
-
-mouse_bindings:
- - { mouse: Middle, action: PasteSelection }
-
-mouse:
- double_click: { threshold: 300 }
- triple_click: { threshold: 300 }
-
-selection:
- semantic_escape_chars: " "
-
-key_bindings:
- - { key: V, mods: Control|Shift, action: Paste }
- - { key: C, mods: Control|Shift, action: Copy }
- - { key: Q, mods: Command, action: Quit }
- - { key: W, mods: Command, action: Quit }
- - { key: Insert, mods: Shift, action: PasteSelection }
- - { key: Key0, mods: Control, action: ResetFontSize }
- - { key: Equals, mods: Control, action: IncreaseFontSize }
- - { key: Minus, mods: Control, action: DecreaseFontSize }
- - { key: Home, chars: "\x1bOH", mode: AppCursor }
- - { key: Home, chars: "\x1b[H", mode: ~AppCursor }
- - { key: End, chars: "\x1bOF", mode: AppCursor }
- - { key: End, chars: "\x1b[F", mode: ~AppCursor }
- - { key: PageUp, mods: Shift, chars: "\x1b[5;2~" }
- - { key: PageUp, mods: Control, chars: "\x1b[5;5~" }
- - { key: PageUp, chars: "\x1b[5~" }
- - { key: PageDown, mods: Shift, chars: "\x1b[6;2~" }
- - { key: PageDown, mods: Control, chars: "\x1b[6;5~" }
- - { key: PageDown, chars: "\x1b[6~" }
- - { key: Tab, mods: Shift, chars: "\x1b[Z" }
- - { key: Back, chars: "\x7f" }
- - { key: Back, mods: Alt, chars: "\x1b\x7f" }
- - { key: Insert, chars: "\x1b[2~" }
- - { key: Delete, chars: "\x1b[3~" }
- - { key: Left, mods: Shift, chars: "\x1b[1;2D" }
- - { key: Left, mods: Control, chars: "\x1b[1;5D" }
- - { key: Left, mods: Alt, chars: "\x1b[1;3D" }
- - { key: Left, chars: "\x1b[D", mode: ~AppCursor }
- - { key: Left, chars: "\x1bOD", mode: AppCursor }
- - { key: Right, mods: Shift, chars: "\x1b[1;2C" }
- - { key: Right, mods: Control, chars: "\x1b[1;5C" }
- - { key: Right, mods: Alt, chars: "\x1b[1;3C" }
- - { key: Right, chars: "\x1b[C", mode: ~AppCursor }
- - { key: Right, chars: "\x1bOC", mode: AppCursor }
- - { key: Up, mods: Shift, chars: "\x1b[1;2A" }
- - { key: Up, mods: Control, chars: "\x1b[1;5A" }
- - { key: Up, mods: Alt, chars: "\x1b[1;3A" }
- - { key: Up, chars: "\x1b[A", mode: ~AppCursor }
- - { key: Up, chars: "\x1bOA", mode: AppCursor }
- - { key: Down, mods: Shift, chars: "\x1b[1;2B" }
- - { key: Down, mods: Control, chars: "\x1b[1;5B" }
- - { key: Down, mods: Alt, chars: "\x1b[1;3B" }
- - { key: Down, chars: "\x1b[B", mode: ~AppCursor }
- - { key: Down, chars: "\x1bOB", mode: AppCursor }
- - { key: F1, chars: "\x1bOP" }
- - { key: F2, chars: "\x1bOQ" }
- - { key: F3, chars: "\x1bOR" }
- - { key: F4, chars: "\x1bOS" }
- - { key: F5, chars: "\x1b[15~" }
- - { key: F6, chars: "\x1b[17~" }
- - { key: F7, chars: "\x1b[18~" }
- - { key: F8, chars: "\x1b[19~" }
- - { key: F9, chars: "\x1b[20~" }
- - { key: F10, chars: "\x1b[21~" }
- - { key: F11, chars: "\x1b[23~" }
- - { key: F12, chars: "\x1b[24~" }
- - { key: F1, mods: Shift, chars: "\x1b[1;2P" }
- - { key: F2, mods: Shift, chars: "\x1b[1;2Q" }
- - { key: F3, mods: Shift, chars: "\x1b[1;2R" }
- - { key: F4, mods: Shift, chars: "\x1b[1;2S" }
- - { key: F5, mods: Shift, chars: "\x1b[15;2~" }
- - { key: F6, mods: Shift, chars: "\x1b[17;2~" }
- - { key: F7, mods: Shift, chars: "\x1b[18;2~" }
- - { key: F8, mods: Shift, chars: "\x1b[19;2~" }
- - { key: F9, mods: Shift, chars: "\x1b[20;2~" }
- - { key: F10, mods: Shift, chars: "\x1b[21;2~" }
- - { key: F11, mods: Shift, chars: "\x1b[23;2~" }
- - { key: F12, mods: Shift, chars: "\x1b[24;2~" }
- - { key: F1, mods: Control, chars: "\x1b[1;5P" }
- - { key: F2, mods: Control, chars: "\x1b[1;5Q" }
- - { key: F3, mods: Control, chars: "\x1b[1;5R" }
- - { key: F4, mods: Control, chars: "\x1b[1;5S" }
- - { key: F5, mods: Control, chars: "\x1b[15;5~" }
- - { key: F6, mods: Control, chars: "\x1b[17;5~" }
- - { key: F7, mods: Control, chars: "\x1b[18;5~" }
- - { key: F8, mods: Control, chars: "\x1b[19;5~" }
- - { key: F9, mods: Control, chars: "\x1b[20;5~" }
- - { key: F10, mods: Control, chars: "\x1b[21;5~" }
- - { key: F11, mods: Control, chars: "\x1b[23;5~" }
- - { key: F12, mods: Control, chars: "\x1b[24;5~" }
- - { key: F1, mods: Alt, chars: "\x1b[1;6P" }
- - { key: F2, mods: Alt, chars: "\x1b[1;6Q" }
- - { key: F3, mods: Alt, chars: "\x1b[1;6R" }
- - { key: F4, mods: Alt, chars: "\x1b[1;6S" }
- - { key: F5, mods: Alt, chars: "\x1b[15;6~" }
- - { key: F6, mods: Alt, chars: "\x1b[17;6~" }
- - { key: F7, mods: Alt, chars: "\x1b[18;6~" }
- - { key: F8, mods: Alt, chars: "\x1b[19;6~" }
- - { key: F9, mods: Alt, chars: "\x1b[20;6~" }
- - { key: F10, mods: Alt, chars: "\x1b[21;6~" }
- - { key: F11, mods: Alt, chars: "\x1b[23;6~" }
- - { key: F12, mods: Alt, chars: "\x1b[24;6~" }
- - { key: F1, mods: Super, chars: "\x1b[1;3P" }
- - { key: F2, mods: Super, chars: "\x1b[1;3Q" }
- - { key: F3, mods: Super, chars: "\x1b[1;3R" }
- - { key: F4, mods: Super, chars: "\x1b[1;3S" }
- - { key: F5, mods: Super, chars: "\x1b[15;3~" }
- - { key: F6, mods: Super, chars: "\x1b[17;3~" }
- - { key: F7, mods: Super, chars: "\x1b[18;3~" }
- - { key: F8, mods: Super, chars: "\x1b[19;3~" }
- - { key: F9, mods: Super, chars: "\x1b[20;3~" }
- - { key: F10, mods: Super, chars: "\x1b[21;3~" }
- - { key: F11, mods: Super, chars: "\x1b[23;3~" }
- - { key: F12, mods: Super, chars: "\x1b[24;3~" }
diff --git a/crawlrc b/crawl/.crawlrc
index 3ad3629..3ad3629 100644
--- a/crawlrc
+++ b/crawl/.crawlrc
diff --git a/cron/Makefile b/cron/Makefile
new file mode 100644
index 0000000..22cd971
--- /dev/null
+++ b/cron/Makefile
@@ -0,0 +1,9 @@
+include ../Makefile.include
+
+install: /var/spool/cron/$(USER)
+
+uninstall:
+ @crontab -r
+
+/var/spool/cron/$(USER) : crontab.stowskip
+ @crontab $<
diff --git a/crontab b/cron/crontab.stowskip
index dc6eebc..dc6eebc 100644
--- a/crontab
+++ b/cron/crontab.stowskip
diff --git a/fortune-mod/.gitignore b/fortune-mod/.gitignore
new file mode 100644
index 0000000..773a6df
--- /dev/null
+++ b/fortune-mod/.gitignore
@@ -0,0 +1 @@
+*.dat
diff --git a/local/share/fortune/buffy b/fortune-mod/.local/share/fortune/buffy
index ff98c9b..ff98c9b 100644
--- a/local/share/fortune/buffy
+++ b/fortune-mod/.local/share/fortune/buffy
diff --git a/local/share/fortune/calvin b/fortune-mod/.local/share/fortune/calvin
index 914631e..914631e 100644
--- a/local/share/fortune/calvin
+++ b/fortune-mod/.local/share/fortune/calvin
diff --git a/local/share/fortune/chapterhouse-dune b/fortune-mod/.local/share/fortune/chapterhouse-dune
index b0d83e7..b0d83e7 100644
--- a/local/share/fortune/chapterhouse-dune
+++ b/fortune-mod/.local/share/fortune/chapterhouse-dune
diff --git a/local/share/fortune/children-of-dune b/fortune-mod/.local/share/fortune/children-of-dune
index a543071..a543071 100644
--- a/local/share/fortune/children-of-dune
+++ b/fortune-mod/.local/share/fortune/children-of-dune
diff --git a/local/share/fortune/dune b/fortune-mod/.local/share/fortune/dune
index d44028b..d44028b 100644
--- a/local/share/fortune/dune
+++ b/fortune-mod/.local/share/fortune/dune
diff --git a/local/share/fortune/dune-messiah b/fortune-mod/.local/share/fortune/dune-messiah
index ce51993..ce51993 100644
--- a/local/share/fortune/dune-messiah
+++ b/fortune-mod/.local/share/fortune/dune-messiah
diff --git a/local/share/fortune/firefly b/fortune-mod/.local/share/fortune/firefly
index 8c5906a..8c5906a 100644
--- a/local/share/fortune/firefly
+++ b/fortune-mod/.local/share/fortune/firefly
diff --git a/local/share/fortune/god-emperor b/fortune-mod/.local/share/fortune/god-emperor
index 6cc7a1e..6cc7a1e 100644
--- a/local/share/fortune/god-emperor
+++ b/fortune-mod/.local/share/fortune/god-emperor
diff --git a/local/share/fortune/heretics-of-dune b/fortune-mod/.local/share/fortune/heretics-of-dune
index f75bcff..f75bcff 100644
--- a/local/share/fortune/heretics-of-dune
+++ b/fortune-mod/.local/share/fortune/heretics-of-dune
diff --git a/local/share/fortune/hitchhiker b/fortune-mod/.local/share/fortune/hitchhiker
index 0ea3338..0ea3338 100644
--- a/local/share/fortune/hitchhiker
+++ b/fortune-mod/.local/share/fortune/hitchhiker
diff --git a/local/share/fortune/house-atreides b/fortune-mod/.local/share/fortune/house-atreides
index 3792818..3792818 100644
--- a/local/share/fortune/house-atreides
+++ b/fortune-mod/.local/share/fortune/house-atreides
diff --git a/local/share/fortune/house-harkonnen b/fortune-mod/.local/share/fortune/house-harkonnen
index 090df36..090df36 100644
--- a/local/share/fortune/house-harkonnen
+++ b/fortune-mod/.local/share/fortune/house-harkonnen
diff --git a/local/share/fortune/ideas b/fortune-mod/.local/share/fortune/ideas
index 4733e08..4733e08 100644
--- a/local/share/fortune/ideas
+++ b/fortune-mod/.local/share/fortune/ideas
diff --git a/local/share/fortune/kernelcookies b/fortune-mod/.local/share/fortune/kernelcookies
index 3dcb616..3dcb616 100644
--- a/local/share/fortune/kernelcookies
+++ b/fortune-mod/.local/share/fortune/kernelcookies
diff --git a/local/share/fortune/perl b/fortune-mod/.local/share/fortune/perl
index e283cb0..e283cb0 100644
--- a/local/share/fortune/perl
+++ b/fortune-mod/.local/share/fortune/perl
diff --git a/local/share/fortune/song-of-ice-and-fire b/fortune-mod/.local/share/fortune/song-of-ice-and-fire
index b892ff4..b892ff4 100644
--- a/local/share/fortune/song-of-ice-and-fire
+++ b/fortune-mod/.local/share/fortune/song-of-ice-and-fire
diff --git a/local/share/fortune/yasd-fortune b/fortune-mod/.local/share/fortune/yasd-fortune
index a19ba71..a19ba71 100644
--- a/local/share/fortune/yasd-fortune
+++ b/fortune-mod/.local/share/fortune/yasd-fortune
diff --git a/fortune-mod/Makefile b/fortune-mod/Makefile
new file mode 100644
index 0000000..9c6a228
--- /dev/null
+++ b/fortune-mod/Makefile
@@ -0,0 +1,9 @@
+include ../Makefile.include
+
+build: $(addsuffix .dat,$(filter-out %.dat,$(wildcard .local/share/fortune/*)))
+
+clean:
+ @rm -f .local/share/fortune/*.dat
+
+%.dat : %
+ @strfile -s $(basename $@)
diff --git a/gdbinit b/gdb/.config/gdb/gdbinit
index a9b6f34..a9b6f34 100644
--- a/gdbinit
+++ b/gdb/.config/gdb/gdbinit
diff --git a/config/git/config b/git/.config/git/config
index b8092d8..b8092d8 100644
--- a/config/git/config
+++ b/git/.config/git/config
diff --git a/config/git/ignore b/git/.config/git/ignore
index 336895e..336895e 100644
--- a/config/git/ignore
+++ b/git/.config/git/ignore
diff --git a/config/helix/config.toml b/helix/.config/helix/config.toml
index 879b51f..879b51f 100644
--- a/config/helix/config.toml
+++ b/helix/.config/helix/config.toml
diff --git a/config/helix/languages.toml b/helix/.config/helix/languages.toml
index 6624a1a..6624a1a 100644
--- a/config/helix/languages.toml
+++ b/helix/.config/helix/languages.toml
diff --git a/config/helix/themes/doy.toml b/helix/.config/helix/themes/doy.toml
index ecd6942..ecd6942 100644
--- a/config/helix/themes/doy.toml
+++ b/helix/.config/helix/themes/doy.toml
diff --git a/config/i3/browser-workspace.json b/i3/.config/i3/browser-workspace.json
index a11fba6..a11fba6 100644
--- a/config/i3/browser-workspace.json
+++ b/i3/.config/i3/browser-workspace.json
diff --git a/config/i3/config b/i3/.config/i3/config
index 4c9de2a..4c9de2a 100644
--- a/config/i3/config
+++ b/i3/.config/i3/config
diff --git a/config/i3/terminal-workspace.json b/i3/.config/i3/terminal-workspace.json
index d957bc1..d957bc1 100644
--- a/config/i3/terminal-workspace.json
+++ b/i3/.config/i3/terminal-workspace.json
diff --git a/config/i3status/config b/i3status/.config/i3status/config
index e7ff076..e7ff076 100644
--- a/config/i3status/config
+++ b/i3status/.config/i3status/config
diff --git a/install b/install
new file mode 100755
index 0000000..2216e66
--- /dev/null
+++ b/install
@@ -0,0 +1,10 @@
+#!/bin/sh
+set -eu
+
+[ -d "$1" ] || (echo "package $1 not found" >&2; exit 1)
+
+./build "$1"
+stow "$1"
+[ -f "$1/Makefile" ] && (cd "$1" && make -s install)
+
+true
diff --git a/lesskey b/less/.config/lesskey
index 5b831e1..5b831e1 100644
--- a/lesskey
+++ b/less/.config/lesskey
diff --git a/bin/ag b/local/.bin/ag
index 5b2ddf3..5b2ddf3 120000
--- a/bin/ag
+++ b/local/.bin/ag
diff --git a/bin/clean-vim-undo b/local/.bin/clean-vim-undo
index efcd3aa..efcd3aa 100755
--- a/bin/clean-vim-undo
+++ b/local/.bin/clean-vim-undo
diff --git a/bin/cryptdir b/local/.bin/cryptdir
index eb63300..eb63300 100755
--- a/bin/cryptdir
+++ b/local/.bin/cryptdir
diff --git a/bin/cryptoloop b/local/.bin/cryptoloop
index 493c74e..493c74e 100755
--- a/bin/cryptoloop
+++ b/local/.bin/cryptoloop
diff --git a/bin/files-between b/local/.bin/files-between
index 634b61c..634b61c 100755
--- a/bin/files-between
+++ b/local/.bin/files-between
diff --git a/bin/fm22avi b/local/.bin/fm22avi
index eebfb4f..eebfb4f 100755
--- a/bin/fm22avi
+++ b/local/.bin/fm22avi
diff --git a/bin/git/git-amend b/local/.bin/git/git-amend
index 3b937ec..3b937ec 100755
--- a/bin/git/git-amend
+++ b/local/.bin/git/git-amend
diff --git a/bin/git/git-blame-stats b/local/.bin/git/git-blame-stats
index 320d755..320d755 100755
--- a/bin/git/git-blame-stats
+++ b/local/.bin/git/git-blame-stats
diff --git a/bin/git/git-default-branch b/local/.bin/git/git-default-branch
index 90e225f..90e225f 100755
--- a/bin/git/git-default-branch
+++ b/local/.bin/git/git-default-branch
diff --git a/bin/git/git-file-size b/local/.bin/git/git-file-size
index 0e7d00d..0e7d00d 100755
--- a/bin/git/git-file-size
+++ b/local/.bin/git/git-file-size
diff --git a/bin/git/git-imerge b/local/.bin/git/git-imerge
index b903539..b903539 100644
--- a/bin/git/git-imerge
+++ b/local/.bin/git/git-imerge
diff --git a/bin/git/git-pr b/local/.bin/git/git-pr
index 61346bc..61346bc 100755
--- a/bin/git/git-pr
+++ b/local/.bin/git/git-pr
diff --git a/bin/git/git-record b/local/.bin/git/git-record
index eaa36c9..eaa36c9 100755
--- a/bin/git/git-record
+++ b/local/.bin/git/git-record
diff --git a/bin/git/git-root b/local/.bin/git/git-root
index 96fb395..96fb395 100755
--- a/bin/git/git-root
+++ b/local/.bin/git/git-root
diff --git a/bin/history-stats b/local/.bin/history-stats
index 0fead1f..0fead1f 100755
--- a/bin/history-stats
+++ b/local/.bin/history-stats
diff --git a/bin/hornet/backlight b/local/.bin/hornet/backlight
index 314e874..314e874 100755
--- a/bin/hornet/backlight
+++ b/local/.bin/hornet/backlight
diff --git a/bin/hornet/i3-switch-workspace b/local/.bin/hornet/i3-switch-workspace
index b54afa1..b54afa1 100755
--- a/bin/hornet/i3-switch-workspace
+++ b/local/.bin/hornet/i3-switch-workspace
diff --git a/bin/hornet/import b/local/.bin/hornet/import
index 307d56b..307d56b 100755
--- a/bin/hornet/import
+++ b/local/.bin/hornet/import
diff --git a/bin/hornet/kill-focused b/local/.bin/hornet/kill-focused
index 37271ac..37271ac 100755
--- a/bin/hornet/kill-focused
+++ b/local/.bin/hornet/kill-focused
diff --git a/bin/hornet/numkeys b/local/.bin/hornet/numkeys
index 9b284bb..9b284bb 100755
--- a/bin/hornet/numkeys
+++ b/local/.bin/hornet/numkeys
diff --git a/bin/hornet/p b/local/.bin/hornet/p
index cbf15c4..cbf15c4 100755
--- a/bin/hornet/p
+++ b/local/.bin/hornet/p
diff --git a/bin/hornet/sc b/local/.bin/hornet/sc
index 614a1bc..614a1bc 100755
--- a/bin/hornet/sc
+++ b/local/.bin/hornet/sc
diff --git a/bin/hornet/scp b/local/.bin/hornet/scp
index ffd8d03..ffd8d03 120000
--- a/bin/hornet/scp
+++ b/local/.bin/hornet/scp
diff --git a/bin/hornet/setup-inputs b/local/.bin/hornet/setup-inputs
index 572feb1..572feb1 100755
--- a/bin/hornet/setup-inputs
+++ b/local/.bin/hornet/setup-inputs
diff --git a/bin/hornet/sftp b/local/.bin/hornet/sftp
index ffd8d03..ffd8d03 120000
--- a/bin/hornet/sftp
+++ b/local/.bin/hornet/sftp
diff --git a/bin/hornet/ssh b/local/.bin/hornet/ssh
index bbacdf9..bbacdf9 100755
--- a/bin/hornet/ssh
+++ b/local/.bin/hornet/ssh
diff --git a/bin/hornet/ssh-askpass b/local/.bin/hornet/ssh-askpass
index ace037c..ace037c 100755
--- a/bin/hornet/ssh-askpass
+++ b/local/.bin/hornet/ssh-askpass
diff --git a/bin/hornet/status b/local/.bin/hornet/status
index 5674876..5674876 100755
--- a/bin/hornet/status
+++ b/local/.bin/hornet/status
diff --git a/bin/hornet/sudo b/local/.bin/hornet/sudo
index 1ff8b23..1ff8b23 100755
--- a/bin/hornet/sudo
+++ b/local/.bin/hornet/sudo
diff --git a/bin/hornet/sudo-askpass b/local/.bin/hornet/sudo-askpass
index 2f928ed..2f928ed 100755
--- a/bin/hornet/sudo-askpass
+++ b/local/.bin/hornet/sudo-askpass
diff --git a/bin/hornet/svdisable b/local/.bin/hornet/svdisable
index 24f779f..24f779f 100755
--- a/bin/hornet/svdisable
+++ b/local/.bin/hornet/svdisable
diff --git a/bin/hornet/svdn b/local/.bin/hornet/svdn
index 6687879..6687879 100755
--- a/bin/hornet/svdn
+++ b/local/.bin/hornet/svdn
diff --git a/bin/hornet/svget b/local/.bin/hornet/svget
index 0eab9bf..0eab9bf 100755
--- a/bin/hornet/svget
+++ b/local/.bin/hornet/svget
diff --git a/bin/hornet/svkill b/local/.bin/hornet/svkill
index a84e1a2..a84e1a2 100755
--- a/bin/hornet/svkill
+++ b/local/.bin/hornet/svkill
diff --git a/bin/hornet/svlog b/local/.bin/hornet/svlog
index 201ce9b..201ce9b 100755
--- a/bin/hornet/svlog
+++ b/local/.bin/hornet/svlog
diff --git a/bin/hornet/svre b/local/.bin/hornet/svre
index 159b017..159b017 100755
--- a/bin/hornet/svre
+++ b/local/.bin/hornet/svre
diff --git a/bin/hornet/svst b/local/.bin/hornet/svst
index 4d0c6ce..4d0c6ce 100755
--- a/bin/hornet/svst
+++ b/local/.bin/hornet/svst
diff --git a/bin/hornet/svstop b/local/.bin/hornet/svstop
index 649ec26..649ec26 100755
--- a/bin/hornet/svstop
+++ b/local/.bin/hornet/svstop
diff --git a/bin/hornet/svup b/local/.bin/hornet/svup
index 3772fdb..3772fdb 100755
--- a/bin/hornet/svup
+++ b/local/.bin/hornet/svup
diff --git a/bin/hornet/tv b/local/.bin/hornet/tv
index 1c99e2e..1c99e2e 100755
--- a/bin/hornet/tv
+++ b/local/.bin/hornet/tv
diff --git a/bin/hornet/twitch b/local/.bin/hornet/twitch
index 5b691ab..5b691ab 100755
--- a/bin/hornet/twitch
+++ b/local/.bin/hornet/twitch
diff --git a/bin/hornet/update-weather b/local/.bin/hornet/update-weather
index fad6ff7..fad6ff7 100755
--- a/bin/hornet/update-weather
+++ b/local/.bin/hornet/update-weather
diff --git a/bin/hornet/volume b/local/.bin/hornet/volume
index 668c1b1..668c1b1 100755
--- a/bin/hornet/volume
+++ b/local/.bin/hornet/volume
diff --git a/bin/hornet/vscreen b/local/.bin/hornet/vscreen
index 52fc5cc..52fc5cc 100755
--- a/bin/hornet/vscreen
+++ b/local/.bin/hornet/vscreen
diff --git a/bin/hornet/watch-kbd b/local/.bin/hornet/watch-kbd
index a4d504e..a4d504e 100755
--- a/bin/hornet/watch-kbd
+++ b/local/.bin/hornet/watch-kbd
diff --git a/bin/hornet/weather b/local/.bin/hornet/weather
index 1cbbffb..1cbbffb 100755
--- a/bin/hornet/weather
+++ b/local/.bin/hornet/weather
diff --git a/bin/hornet/webcam b/local/.bin/hornet/webcam
index fdac5f8..fdac5f8 100755
--- a/bin/hornet/webcam
+++ b/local/.bin/hornet/webcam
diff --git a/bin/hostcert b/local/.bin/hostcert
index 61f519d..61f519d 100755
--- a/bin/hostcert
+++ b/local/.bin/hostcert
diff --git a/bin/mbsyncloop b/local/.bin/mbsyncloop
index a1cf181..a1cf181 100755
--- a/bin/mbsyncloop
+++ b/local/.bin/mbsyncloop
diff --git a/bin/mem-usage b/local/.bin/mem-usage
index 19e8c32..19e8c32 100755
--- a/bin/mem-usage
+++ b/local/.bin/mem-usage
diff --git a/bin/mz-doy1/backlight b/local/.bin/mz-doy1/backlight
index 41f9edb..41f9edb 120000
--- a/bin/mz-doy1/backlight
+++ b/local/.bin/mz-doy1/backlight
diff --git a/bin/mz-doy1/i3-switch-workspace b/local/.bin/mz-doy1/i3-switch-workspace
index 9a8b81d..9a8b81d 120000
--- a/bin/mz-doy1/i3-switch-workspace
+++ b/local/.bin/mz-doy1/i3-switch-workspace
diff --git a/bin/mz-doy1/kill-focused b/local/.bin/mz-doy1/kill-focused
index bd9959b..bd9959b 120000
--- a/bin/mz-doy1/kill-focused
+++ b/local/.bin/mz-doy1/kill-focused
diff --git a/bin/mz-doy1/numkeys b/local/.bin/mz-doy1/numkeys
index 2e7ec6c..2e7ec6c 120000
--- a/bin/mz-doy1/numkeys
+++ b/local/.bin/mz-doy1/numkeys
diff --git a/bin/mz-doy1/sc b/local/.bin/mz-doy1/sc
index 634301f..634301f 120000
--- a/bin/mz-doy1/sc
+++ b/local/.bin/mz-doy1/sc
diff --git a/bin/mz-doy1/setup-inputs b/local/.bin/mz-doy1/setup-inputs
index 7bec592..7bec592 120000
--- a/bin/mz-doy1/setup-inputs
+++ b/local/.bin/mz-doy1/setup-inputs
diff --git a/bin/mz-doy1/status b/local/.bin/mz-doy1/status
index f9356c4..f9356c4 120000
--- a/bin/mz-doy1/status
+++ b/local/.bin/mz-doy1/status
diff --git a/bin/mz-doy1/svdisable b/local/.bin/mz-doy1/svdisable
index 2fc2baa..2fc2baa 120000
--- a/bin/mz-doy1/svdisable
+++ b/local/.bin/mz-doy1/svdisable
diff --git a/bin/mz-doy1/svdn b/local/.bin/mz-doy1/svdn
index 74b07c4..74b07c4 120000
--- a/bin/mz-doy1/svdn
+++ b/local/.bin/mz-doy1/svdn
diff --git a/bin/mz-doy1/svget b/local/.bin/mz-doy1/svget
index b873a71..b873a71 120000
--- a/bin/mz-doy1/svget
+++ b/local/.bin/mz-doy1/svget
diff --git a/bin/mz-doy1/svkill b/local/.bin/mz-doy1/svkill
index d0d1fd7..d0d1fd7 120000
--- a/bin/mz-doy1/svkill
+++ b/local/.bin/mz-doy1/svkill
diff --git a/bin/mz-doy1/svlog b/local/.bin/mz-doy1/svlog
index 105b765..105b765 120000
--- a/bin/mz-doy1/svlog
+++ b/local/.bin/mz-doy1/svlog
diff --git a/bin/mz-doy1/svre b/local/.bin/mz-doy1/svre
index e9591c3..e9591c3 120000
--- a/bin/mz-doy1/svre
+++ b/local/.bin/mz-doy1/svre
diff --git a/bin/mz-doy1/svst b/local/.bin/mz-doy1/svst
index 39c2f2a..39c2f2a 120000
--- a/bin/mz-doy1/svst
+++ b/local/.bin/mz-doy1/svst
diff --git a/bin/mz-doy1/svstop b/local/.bin/mz-doy1/svstop
index ab107f9..ab107f9 120000
--- a/bin/mz-doy1/svstop
+++ b/local/.bin/mz-doy1/svstop
diff --git a/bin/mz-doy1/svup b/local/.bin/mz-doy1/svup
index 9adc623..9adc623 120000
--- a/bin/mz-doy1/svup
+++ b/local/.bin/mz-doy1/svup
diff --git a/bin/mz-doy1/volume b/local/.bin/mz-doy1/volume
index 3c17399..3c17399 120000
--- a/bin/mz-doy1/volume
+++ b/local/.bin/mz-doy1/volume
diff --git a/bin/mz-doy1/watch-kbd b/local/.bin/mz-doy1/watch-kbd
index 0db9975..0db9975 120000
--- a/bin/mz-doy1/watch-kbd
+++ b/local/.bin/mz-doy1/watch-kbd
diff --git a/bin/nopaste b/local/.bin/nopaste
index 573af2e..573af2e 100755
--- a/bin/nopaste
+++ b/local/.bin/nopaste
diff --git a/bin/on-lock b/local/.bin/on-lock
index 3de3724..3de3724 100755
--- a/bin/on-lock
+++ b/local/.bin/on-lock
diff --git a/bin/pacman-dump b/local/.bin/pacman-dump
index b32ed16..b32ed16 100755
--- a/bin/pacman-dump
+++ b/local/.bin/pacman-dump
diff --git a/bin/pdfcat b/local/.bin/pdfcat
index ff4edaa..ff4edaa 100755
--- a/bin/pdfcat
+++ b/local/.bin/pdfcat
diff --git a/bin/pick-music b/local/.bin/pick-music
index 8c406f7..8c406f7 100755
--- a/bin/pick-music
+++ b/local/.bin/pick-music
diff --git a/bin/rand-music b/local/.bin/rand-music
index 6e9bccc..6e9bccc 100755
--- a/bin/rand-music
+++ b/local/.bin/rand-music
diff --git a/bin/reply b/local/.bin/reply
index 250a93b..250a93b 100755
--- a/bin/reply
+++ b/local/.bin/reply
diff --git a/bin/rg b/local/.bin/rg
index ea88361..ea88361 100755
--- a/bin/rg
+++ b/local/.bin/rg
diff --git a/bin/ringtone b/local/.bin/ringtone
index 19dddb6..19dddb6 100755
--- a/bin/ringtone
+++ b/local/.bin/ringtone
diff --git a/bin/scanpdf b/local/.bin/scanpdf
index 31ebb14..31ebb14 100755
--- a/bin/scanpdf
+++ b/local/.bin/scanpdf
diff --git a/bin/scratch b/local/.bin/scratch
index 0cca01c..0cca01c 100755
--- a/bin/scratch
+++ b/local/.bin/scratch
diff --git a/bin/set-mac b/local/.bin/set-mac
index 986d333..986d333 100755
--- a/bin/set-mac
+++ b/local/.bin/set-mac
diff --git a/bin/show-colors b/local/.bin/show-colors
index 47e0d32..47e0d32 100755
--- a/bin/show-colors
+++ b/local/.bin/show-colors
diff --git a/bin/smt b/local/.bin/smt
index ad3f459..ad3f459 100755
--- a/bin/smt
+++ b/local/.bin/smt
diff --git a/bin/sum b/local/.bin/sum
index cf21bfd..cf21bfd 100755
--- a/bin/sum
+++ b/local/.bin/sum
diff --git a/bin/tmux-clipboard b/local/.bin/tmux-clipboard
index dae796b..dae796b 100755
--- a/bin/tmux-clipboard
+++ b/local/.bin/tmux-clipboard
diff --git a/bin/tozt/learn_spam b/local/.bin/tozt/learn_spam
index 75e500a..75e500a 100755
--- a/bin/tozt/learn_spam
+++ b/local/.bin/tozt/learn_spam
diff --git a/bin/update-addressbook b/local/.bin/update-addressbook
index 4683e86..4683e86 100755
--- a/bin/update-addressbook
+++ b/local/.bin/update-addressbook
diff --git a/bin/vimmanpager b/local/.bin/vimmanpager
index dfd36f3..dfd36f3 100755
--- a/bin/vimmanpager
+++ b/local/.bin/vimmanpager
diff --git a/bin/web b/local/.bin/web
index f8484c0..f8484c0 100755
--- a/bin/web
+++ b/local/.bin/web
diff --git a/local/.gitignore b/local/.gitignore
new file mode 100644
index 0000000..550df27
--- /dev/null
+++ b/local/.gitignore
@@ -0,0 +1 @@
+/.bin/local/*
diff --git a/services/available/watch-kbd/log/run b/local/.services/available/watch-kbd/log/run
index 8b56264..8b56264 100755
--- a/services/available/watch-kbd/log/run
+++ b/local/.services/available/watch-kbd/log/run
diff --git a/services/available/watch-kbd/run b/local/.services/available/watch-kbd/run
index f964c1a..f964c1a 100755
--- a/services/available/watch-kbd/run
+++ b/local/.services/available/watch-kbd/run
diff --git a/local/Makefile b/local/Makefile
new file mode 100644
index 0000000..6684014
--- /dev/null
+++ b/local/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/watch-kbd
+ @mkdir -p $(HOME)/.log/watch-kbd
diff --git a/mbsyncrc b/mbsync/.mbsyncrc
index 6530eb9..6530eb9 100644
--- a/mbsyncrc
+++ b/mbsync/.mbsyncrc
diff --git a/config/mbsyncloop/config.json b/mbsyncloop/.config/mbsyncloop/config.json
index 879665f..879665f 100644
--- a/config/mbsyncloop/config.json
+++ b/mbsyncloop/.config/mbsyncloop/config.json
diff --git a/services/available/mbsyncloop/log/run b/mbsyncloop/.services/available/mbsyncloop/log/run
index 5930eda..5930eda 100755
--- a/services/available/mbsyncloop/log/run
+++ b/mbsyncloop/.services/available/mbsyncloop/log/run
diff --git a/services/available/mbsyncloop/run b/mbsyncloop/.services/available/mbsyncloop/run
index ac7e636..ac7e636 100755
--- a/services/available/mbsyncloop/run
+++ b/mbsyncloop/.services/available/mbsyncloop/run
diff --git a/mbsyncloop/Makefile b/mbsyncloop/Makefile
new file mode 100644
index 0000000..5997d23
--- /dev/null
+++ b/mbsyncloop/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/mbsyncloop
+ @mkdir -p $(HOME)/.log/mbsyncloop
diff --git a/config/mpd/mpd.conf b/mpd/.config/mpd/mpd.conf
index e30c2fc..e30c2fc 100644
--- a/config/mpd/mpd.conf
+++ b/mpd/.config/mpd/mpd.conf
diff --git a/services/available/mpd/log/run b/mpd/.services/available/mpd/log/run
index 072bb30..072bb30 100755
--- a/services/available/mpd/log/run
+++ b/mpd/.services/available/mpd/log/run
diff --git a/services/available/mpd/run b/mpd/.services/available/mpd/run
index 186baef..186baef 100755
--- a/services/available/mpd/run
+++ b/mpd/.services/available/mpd/run
diff --git a/mpd/Makefile b/mpd/Makefile
new file mode 100644
index 0000000..b251d30
--- /dev/null
+++ b/mpd/Makefile
@@ -0,0 +1,6 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/mpd
+ @mkdir -p $(HOME)/.log/mpd
+ @mkdir -p $(HOME)/.cache/mpd
+ @mkdir -p $(HOME)/.config/mpd/playlists
diff --git a/config/msmtp/config b/msmtp/.config/msmtp/config
index 6ceebb5..6ceebb5 100644
--- a/config/msmtp/config
+++ b/msmtp/.config/msmtp/config
diff --git a/msmtp/Makefile b/msmtp/Makefile
new file mode 100644
index 0000000..e0d5b4b
--- /dev/null
+++ b/msmtp/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+build:
+ @chmod 600 .config/msmtp/config
diff --git a/mutt/choose-muttrc-type b/mutt/.config/mutt/choose-muttrc-type
index 363a64c..ddadb70 100755
--- a/mutt/choose-muttrc-type
+++ b/mutt/.config/mutt/choose-muttrc-type
@@ -4,9 +4,9 @@ set -o pipefail
case "$(hostname)" in
hornet)
- echo 'source ~/.mutt/local'
+ echo 'source ~/.config/mutt/local'
;;
*)
- echo 'source ~/.mutt/imap'
+ echo 'source ~/.config/mutt/imap'
;;
esac
diff --git a/mutt/imap b/mutt/.config/mutt/imap
index 13ed472..13ed472 100644
--- a/mutt/imap
+++ b/mutt/.config/mutt/imap
diff --git a/mutt/local b/mutt/.config/mutt/local
index a4fea33..a4fea33 100644
--- a/mutt/local
+++ b/mutt/.config/mutt/local
diff --git a/mutt/mailcap b/mutt/.config/mutt/mailcap
index a791985..a791985 100644
--- a/mutt/mailcap
+++ b/mutt/.config/mutt/mailcap
diff --git a/mutt/muttrc b/mutt/.config/mutt/muttrc
index f4c9af1..8321ba1 100644
--- a/mutt/muttrc
+++ b/mutt/.config/mutt/muttrc
@@ -1,10 +1,10 @@
-source '~/.mutt/choose-muttrc-type|'
+source '~/.config/mutt/choose-muttrc-type|'
# folders {{{
set record="=Sent"
set postponed="=Drafts"
set header_cache="~/.cache/mutt/headers"
set message_cachedir="~/.cache/mutt/bodies"
-set mailcap_path="~/.mutt/mailcap"
+set mailcap_path="~/.config/mutt/mailcap"
set nm_default_url="notmuch://$HOME/.cache/notmuch"
# }}}
# identity {{{
diff --git a/mutt/Makefile b/mutt/Makefile
new file mode 100644
index 0000000..2caf3fd
--- /dev/null
+++ b/mutt/Makefile
@@ -0,0 +1,5 @@
+include ../Makefile.include
+
+install:
+ @mkdir -p $(HOME)/.cache/mutt/headers
+ @mkdir -p $(HOME)/.cache/mutt/bodies
diff --git a/config/ncmpcpp/bindings b/ncmpcpp/.config/ncmpcpp/bindings
index 20a0259..20a0259 100644
--- a/config/ncmpcpp/bindings
+++ b/ncmpcpp/.config/ncmpcpp/bindings
diff --git a/nethackrc b/nethack/.nethackrc
index f351c32..f351c32 100644
--- a/nethackrc
+++ b/nethack/.nethackrc
diff --git a/notmuch/hooks/post-new b/notmuch/.cache/notmuch/hooks/post-new
index 8809f91..8809f91 100755
--- a/notmuch/hooks/post-new
+++ b/notmuch/.cache/notmuch/hooks/post-new
diff --git a/notmuch-config b/notmuch/.config/notmuch/default/config
index 35b5547..35b5547 100644
--- a/notmuch-config
+++ b/notmuch/.config/notmuch/default/config
diff --git a/notmuch/Makefile b/notmuch/Makefile
new file mode 100644
index 0000000..d1f30eb
--- /dev/null
+++ b/notmuch/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install:
+ @mkdir -p $(HOME)/.cache/notmuch
diff --git a/packages.hornet b/packages.hornet
new file mode 100644
index 0000000..77a92be
--- /dev/null
+++ b/packages.hornet
@@ -0,0 +1,40 @@
+abook
+alacritty
+bash
+compton
+crawl
+cron
+fortune-mod
+gdb
+git
+helix
+i3
+i3status
+less
+local
+mbsync
+mbsyncloop
+mpd
+msmtp
+mutt
+ncmpcpp
+nethack
+notmuch
+readline
+redshift
+reply
+screen
+sh
+ssh
+starship
+tex
+tig
+tmux
+unclutter
+vim
+xbindkeys
+xcape
+xorg
+xss-lock
+zsh
+
diff --git a/packages.mail b/packages.mail
new file mode 100644
index 0000000..e4cae92
--- /dev/null
+++ b/packages.mail
@@ -0,0 +1,23 @@
+abook
+bash
+crawl
+fortune-mod
+gdb
+git
+helix
+less
+local
+mutt
+nethack
+readline
+reply
+screen
+sh
+ssh
+starship
+tex
+tig
+tmux
+vim
+zsh
+
diff --git a/packages.mz-doy1 b/packages.mz-doy1
new file mode 100644
index 0000000..4f276e0
--- /dev/null
+++ b/packages.mz-doy1
@@ -0,0 +1,28 @@
+alacritty
+bash
+compton
+cron
+fortune-mod
+gdb
+git
+helix
+i3
+i3status
+less
+local
+readline
+redshift
+reply
+screen
+sh
+starship
+tig
+tmux
+unclutter
+vim
+xbindkeys
+xcape
+xorg
+xss-lock
+zsh
+
diff --git a/packages.partofme b/packages.partofme
new file mode 100644
index 0000000..e4cae92
--- /dev/null
+++ b/packages.partofme
@@ -0,0 +1,23 @@
+abook
+bash
+crawl
+fortune-mod
+gdb
+git
+helix
+less
+local
+mutt
+nethack
+readline
+reply
+screen
+sh
+ssh
+starship
+tex
+tig
+tmux
+vim
+zsh
+
diff --git a/packages.root b/packages.root
new file mode 100644
index 0000000..d049884
--- /dev/null
+++ b/packages.root
@@ -0,0 +1,18 @@
+bash
+fortune-mod
+gdb
+git
+helix
+less
+local
+readline
+reply
+screen
+sh
+ssh
+starship
+tig
+tmux
+vim
+zsh
+
diff --git a/packages.tozt b/packages.tozt
new file mode 100644
index 0000000..e4cae92
--- /dev/null
+++ b/packages.tozt
@@ -0,0 +1,23 @@
+abook
+bash
+crawl
+fortune-mod
+gdb
+git
+helix
+less
+local
+mutt
+nethack
+readline
+reply
+screen
+sh
+ssh
+starship
+tex
+tig
+tmux
+vim
+zsh
+
diff --git a/inputrc b/readline/.inputrc
index 87a7701..87a7701 100644
--- a/inputrc
+++ b/readline/.inputrc
diff --git a/services/available/redshift/log/run b/redshift/.services/available/redshift/log/run
index 396b489..396b489 100755
--- a/services/available/redshift/log/run
+++ b/redshift/.services/available/redshift/log/run
diff --git a/services/available/redshift/run b/redshift/.services/available/redshift/run
index 2bf746b..2bf746b 100755
--- a/services/available/redshift/run
+++ b/redshift/.services/available/redshift/run
diff --git a/redshift/Makefile b/redshift/Makefile
new file mode 100644
index 0000000..a5fb60e
--- /dev/null
+++ b/redshift/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/redshift
+ @mkdir -p $(HOME)/.log/redshift
diff --git a/replyrc b/reply/.replyrc
index f1e57ae..f1e57ae 100644
--- a/replyrc
+++ b/reply/.replyrc
diff --git a/screenrc b/screen/.screenrc
index 414b4c9..414b4c9 100644
--- a/screenrc
+++ b/screen/.screenrc
diff --git a/config/sh/aliases b/sh/.config/sh/aliases
index 2afadbb..2afadbb 100644
--- a/config/sh/aliases
+++ b/sh/.config/sh/aliases
diff --git a/config/sh/cdhist.sh b/sh/.config/sh/cdhist.sh
index d67d2e9..d67d2e9 100644
--- a/config/sh/cdhist.sh
+++ b/sh/.config/sh/cdhist.sh
diff --git a/config/sh/env b/sh/.config/sh/env
index 33b33ec..33b33ec 100644
--- a/config/sh/env
+++ b/sh/.config/sh/env
diff --git a/config/sh/functions b/sh/.config/sh/functions
index b64c4cf..b64c4cf 100644
--- a/config/sh/functions
+++ b/sh/.config/sh/functions
diff --git a/config/sh/fzf b/sh/.config/sh/fzf
-Subproject 352ea072269dfe2a3c429785a95a2f22887ccda
+Subproject 352ea072269dfe2a3c429785a95a2f22887ccda
diff --git a/profile b/sh/.profile
index 76e64da..76e64da 100644
--- a/profile
+++ b/sh/.profile
diff --git a/ssh/authorized_keys b/ssh/.ssh/authorized_keys
index 8399421..8399421 100644
--- a/ssh/authorized_keys
+++ b/ssh/.ssh/authorized_keys
diff --git a/ssh/cao_key b/ssh/.ssh/cao_key
index 59af0f8..59af0f8 100644
--- a/ssh/cao_key
+++ b/ssh/.ssh/cao_key
diff --git a/ssh/Makefile b/ssh/Makefile
new file mode 100644
index 0000000..d0eb8d6
--- /dev/null
+++ b/ssh/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+build:
+ @chmod 600 .ssh/cao_key
diff --git a/config/starship.toml.PL b/starship/.config/starship.toml.PL
index 8f71dc9..0b0efe9 100644
--- a/config/starship.toml.PL
+++ b/starship/.config/starship.toml.PL
@@ -2,15 +2,17 @@
use 5.014;
use warnings;
-my $char = $ARGV[0] eq 'root' ? '#' : '\\\\$';
-my $user = $ARGV[0] eq 'root' ? 'bright-red' : 'bright-blue';
+chomp(my $hostname = `hostname`);
+
+my $char = $ENV{USER} eq 'root' ? '#' : '\\\\$';
+my $user = $ENV{USER} eq 'root' ? 'bright-red' : 'bright-blue';
my $host = {
'mz-doy1' => 'bright-white',
'tozt' => 'bright-yellow',
'partofme' => 'purple',
'mail' => 'green',
'hornet' => 'red',
-}->{$ARGV[1]} // 'yellow';
+}->{$hostname} // 'yellow';
while (<DATA>) {
s/\@\@CHAR\@\@/$char/;
diff --git a/starship/.gitignore b/starship/.gitignore
new file mode 100644
index 0000000..9e5ee9a
--- /dev/null
+++ b/starship/.gitignore
@@ -0,0 +1 @@
+.config/starship.toml
diff --git a/starship/Makefile b/starship/Makefile
new file mode 100644
index 0000000..bec31d4
--- /dev/null
+++ b/starship/Makefile
@@ -0,0 +1,6 @@
+include ../Makefile.include
+
+build: .config/starship.toml
+
+clean:
+ @rm -f .config/starship.toml
diff --git a/config/tex/jesse.sty b/tex/.config/tex/jesse.sty
index 189938e..189938e 100644
--- a/config/tex/jesse.sty
+++ b/tex/.config/tex/jesse.sty
diff --git a/config/tex/jesse_essay.sty b/tex/.config/tex/jesse_essay.sty
index 3fb34f2..3fb34f2 100644
--- a/config/tex/jesse_essay.sty
+++ b/tex/.config/tex/jesse_essay.sty
diff --git a/config/tex/jesse_letter.sty b/tex/.config/tex/jesse_letter.sty
index 734021f..734021f 100644
--- a/config/tex/jesse_letter.sty
+++ b/tex/.config/tex/jesse_letter.sty
diff --git a/config/tex/jesse_macros.sty b/tex/.config/tex/jesse_macros.sty
index e27fa25..e27fa25 100644
--- a/config/tex/jesse_macros.sty
+++ b/tex/.config/tex/jesse_macros.sty
diff --git a/config/tex/jesse_resume.sty b/tex/.config/tex/jesse_resume.sty
index 05580d9..05580d9 100644
--- a/config/tex/jesse_resume.sty
+++ b/tex/.config/tex/jesse_resume.sty
diff --git a/config/tex/sarah_resume.sty b/tex/.config/tex/sarah_resume.sty
index 2dadb30..2dadb30 100644
--- a/config/tex/sarah_resume.sty
+++ b/tex/.config/tex/sarah_resume.sty
diff --git a/config/tig/config b/tig/.config/tig/config
index 8eb4aa5..8eb4aa5 100644
--- a/config/tig/config
+++ b/tig/.config/tig/config
diff --git a/tmux.conf b/tmux/.config/tmux/tmux.conf
index a1ea5ec..a1ea5ec 100644
--- a/tmux.conf
+++ b/tmux/.config/tmux/tmux.conf
diff --git a/services/available/unclutter/log/run b/unclutter/.services/available/unclutter/log/run
index bf43700..bf43700 100755
--- a/services/available/unclutter/log/run
+++ b/unclutter/.services/available/unclutter/log/run
diff --git a/services/available/unclutter/run b/unclutter/.services/available/unclutter/run
index 2cc69fa..2cc69fa 100755
--- a/services/available/unclutter/run
+++ b/unclutter/.services/available/unclutter/run
diff --git a/unclutter/Makefile b/unclutter/Makefile
new file mode 100644
index 0000000..9dc4b1f
--- /dev/null
+++ b/unclutter/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/unclutter
+ @mkdir -p $(HOME)/.log/unclutter
diff --git a/uninstall b/uninstall
new file mode 100755
index 0000000..456e656
--- /dev/null
+++ b/uninstall
@@ -0,0 +1,9 @@
+#!/bin/sh
+set -eu
+
+[ -d "$1" ] || (echo "package $1 not found" >&2; exit 1)
+
+[ -f "$1/Makefile" ] && (cd "$1" && make -s uninstall)
+stow -D "$1"
+
+true
diff --git a/vim/.gitignore b/vim/.gitignore
new file mode 100644
index 0000000..fce23eb
--- /dev/null
+++ b/vim/.gitignore
@@ -0,0 +1 @@
+/.vim/spell/*.spl
diff --git a/vim/after/ftplugin/rust.vim b/vim/.vim/after/ftplugin/rust.vim
index f30a884..f30a884 100644
--- a/vim/after/ftplugin/rust.vim
+++ b/vim/.vim/after/ftplugin/rust.vim
diff --git a/vim/colors/local.vim b/vim/.vim/colors/local.vim
index 7e22c18..7e22c18 100644
--- a/vim/colors/local.vim
+++ b/vim/.vim/colors/local.vim
diff --git a/vim/ftdetect/c.vim b/vim/.vim/ftdetect/c.vim
index 8dac68b..8dac68b 100644
--- a/vim/ftdetect/c.vim
+++ b/vim/.vim/ftdetect/c.vim
diff --git a/vim/ftdetect/levdes.vim b/vim/.vim/ftdetect/levdes.vim
index c016fd8..c016fd8 100644
--- a/vim/ftdetect/levdes.vim
+++ b/vim/.vim/ftdetect/levdes.vim
diff --git a/vim/ftdetect/nhdes.vim b/vim/.vim/ftdetect/nhdes.vim
index 5886d51..5886d51 100644
--- a/vim/ftdetect/nhdes.vim
+++ b/vim/.vim/ftdetect/nhdes.vim
diff --git a/vim/ftplugin/c.vim b/vim/.vim/ftplugin/c.vim
index 13c7d4a..13c7d4a 100644
--- a/vim/ftplugin/c.vim
+++ b/vim/.vim/ftplugin/c.vim
diff --git a/vim/ftplugin/cpp.vim b/vim/.vim/ftplugin/cpp.vim
index 83d7802..83d7802 100644
--- a/vim/ftplugin/cpp.vim
+++ b/vim/.vim/ftplugin/cpp.vim
diff --git a/vim/ftplugin/gitcommit.vim b/vim/.vim/ftplugin/gitcommit.vim
index b1c1450..b1c1450 100644
--- a/vim/ftplugin/gitcommit.vim
+++ b/vim/.vim/ftplugin/gitcommit.vim
diff --git a/vim/ftplugin/go.vim b/vim/.vim/ftplugin/go.vim
index c4c065b..c4c065b 100644
--- a/vim/ftplugin/go.vim
+++ b/vim/.vim/ftplugin/go.vim
diff --git a/vim/ftplugin/help.vim b/vim/.vim/ftplugin/help.vim
index 475e0a7..475e0a7 100644
--- a/vim/ftplugin/help.vim
+++ b/vim/.vim/ftplugin/help.vim
diff --git a/vim/ftplugin/javascript.vim b/vim/.vim/ftplugin/javascript.vim
index e5b284f..e5b284f 100644
--- a/vim/ftplugin/javascript.vim
+++ b/vim/.vim/ftplugin/javascript.vim
diff --git a/vim/ftplugin/perl.vim b/vim/.vim/ftplugin/perl.vim
index 3571e98..3571e98 100644
--- a/vim/ftplugin/perl.vim
+++ b/vim/.vim/ftplugin/perl.vim
diff --git a/vim/ftplugin/puppet.vim b/vim/.vim/ftplugin/puppet.vim
index d1652a3..d1652a3 100644
--- a/vim/ftplugin/puppet.vim
+++ b/vim/.vim/ftplugin/puppet.vim
diff --git a/vim/ftplugin/python.vim b/vim/.vim/ftplugin/python.vim
index 5bf8dba..5bf8dba 100644
--- a/vim/ftplugin/python.vim
+++ b/vim/.vim/ftplugin/python.vim
diff --git a/vim/ftplugin/ruby.vim b/vim/.vim/ftplugin/ruby.vim
index 035f432..035f432 100644
--- a/vim/ftplugin/ruby.vim
+++ b/vim/.vim/ftplugin/ruby.vim
diff --git a/vim/ftplugin/rust.vim b/vim/.vim/ftplugin/rust.vim
index 2b9606e..2b9606e 100644
--- a/vim/ftplugin/rust.vim
+++ b/vim/.vim/ftplugin/rust.vim
diff --git a/vim/ftplugin/sh.vim b/vim/.vim/ftplugin/sh.vim
index 728eb70..728eb70 100644
--- a/vim/ftplugin/sh.vim
+++ b/vim/.vim/ftplugin/sh.vim
diff --git a/vim/ftplugin/terraform.vim b/vim/.vim/ftplugin/terraform.vim
index 5764f2e..5764f2e 100644
--- a/vim/ftplugin/terraform.vim
+++ b/vim/.vim/ftplugin/terraform.vim
diff --git a/vim/ftplugin/tex.vim b/vim/.vim/ftplugin/tex.vim
index 03c0821..03c0821 100644
--- a/vim/ftplugin/tex.vim
+++ b/vim/.vim/ftplugin/tex.vim
diff --git a/vim/ftplugin/vim.vim b/vim/.vim/ftplugin/vim.vim
index 475e0a7..475e0a7 100644
--- a/vim/ftplugin/vim.vim
+++ b/vim/.vim/ftplugin/vim.vim
diff --git a/vim/ftplugin/vimwiki.vim b/vim/.vim/ftplugin/vimwiki.vim
index aac5bcb..aac5bcb 100644
--- a/vim/ftplugin/vimwiki.vim
+++ b/vim/.vim/ftplugin/vimwiki.vim
diff --git a/vim/ftplugin/xs.vim b/vim/.vim/ftplugin/xs.vim
index 8dc989f..8dc989f 100644
--- a/vim/ftplugin/xs.vim
+++ b/vim/.vim/ftplugin/xs.vim
diff --git a/vim/pack/filetype/start/polyglot b/vim/.vim/pack/filetype/start/polyglot
-Subproject bc8a81d3592dab86334f27d1d43c080ebf680d4
+Subproject bc8a81d3592dab86334f27d1d43c080ebf680d4
diff --git a/vim/pack/plugins/start/airline b/vim/.vim/pack/plugins/start/airline
-Subproject 038e3a6ca59f11b3bb6a94087c1792322d1a1d5
+Subproject 038e3a6ca59f11b3bb6a94087c1792322d1a1d5
diff --git a/vim/pack/plugins/start/ale b/vim/.vim/pack/plugins/start/ale
-Subproject c3f9bccb8c04b01d5d0712b8691658af0b0ddb1
+Subproject c3f9bccb8c04b01d5d0712b8691658af0b0ddb1
diff --git a/vim/pack/plugins/start/autobrace b/vim/.vim/pack/plugins/start/autobrace
-Subproject e51de9e6265ade6195c8983edf58c462695acfe
+Subproject e51de9e6265ade6195c8983edf58c462695acfe
diff --git a/vim/pack/plugins/start/commentary b/vim/.vim/pack/plugins/start/commentary
-Subproject e87cd90dc09c2a203e13af9704bd0ef79303d75
+Subproject e87cd90dc09c2a203e13af9704bd0ef79303d75
diff --git a/vim/pack/plugins/start/diff-changes b/vim/.vim/pack/plugins/start/diff-changes
-Subproject 97cf3bc8b51f27452b4174e4f770758d42162d0
+Subproject 97cf3bc8b51f27452b4174e4f770758d42162d0
diff --git a/vim/pack/plugins/start/editorconfig b/vim/.vim/pack/plugins/start/editorconfig
-Subproject 1d54632f7fcad38df8e428f349bc58b15af4b20
+Subproject 1d54632f7fcad38df8e428f349bc58b15af4b20
diff --git a/vim/pack/plugins/start/fzf b/vim/.vim/pack/plugins/start/fzf
-Subproject 352ea072269dfe2a3c429785a95a2f22887ccda
+Subproject 352ea072269dfe2a3c429785a95a2f22887ccda
diff --git a/vim/pack/plugins/start/fzf.vim b/vim/.vim/pack/plugins/start/fzf.vim
-Subproject dc71692255b62d1f67dc55c8e51ab1aa467b1d4
+Subproject dc71692255b62d1f67dc55c8e51ab1aa467b1d4
diff --git a/vim/pack/plugins/start/gundo b/vim/.vim/pack/plugins/start/gundo
-Subproject c5efef192b975b8e7d5fa3c6db932648d3b7632
+Subproject c5efef192b975b8e7d5fa3c6db932648d3b7632
diff --git a/vim/pack/plugins/start/history-sync b/vim/.vim/pack/plugins/start/history-sync
-Subproject 279aa756157ab818df67e854e953f6e05809b4a
+Subproject 279aa756157ab818df67e854e953f6e05809b4a
diff --git a/vim/pack/plugins/start/startify b/vim/.vim/pack/plugins/start/startify
-Subproject 81e36c352a8deea54df5ec1e2f4348685569bed
+Subproject 81e36c352a8deea54df5ec1e2f4348685569bed
diff --git a/vim/pack/plugins/start/textobj b/vim/.vim/pack/plugins/start/textobj
-Subproject fd84055046d38c7e850fdbf13f92ab2898f8114
+Subproject fd84055046d38c7e850fdbf13f92ab2898f8114
diff --git a/vim/plugin/dircreate.vim b/vim/.vim/plugin/dircreate.vim
index 11da7f9..11da7f9 100644
--- a/vim/plugin/dircreate.vim
+++ b/vim/.vim/plugin/dircreate.vim
diff --git a/vim/plugin/eolws.vim b/vim/.vim/plugin/eolws.vim
index 1f1a003..1f1a003 100644
--- a/vim/plugin/eolws.vim
+++ b/vim/.vim/plugin/eolws.vim
diff --git a/vim/plugin/keywordprg.vim b/vim/.vim/plugin/keywordprg.vim
index dfedd80..dfedd80 100644
--- a/vim/plugin/keywordprg.vim
+++ b/vim/.vim/plugin/keywordprg.vim
diff --git a/vim/plugin/opinionated-defaults.vim b/vim/.vim/plugin/opinionated-defaults.vim
index 6ce034b..6ce034b 100644
--- a/vim/plugin/opinionated-defaults.vim
+++ b/vim/.vim/plugin/opinionated-defaults.vim
diff --git a/vim/plugin/rainbow_paren.vim b/vim/.vim/plugin/rainbow_paren.vim
index 9c26134..9c26134 100644
--- a/vim/plugin/rainbow_paren.vim
+++ b/vim/.vim/plugin/rainbow_paren.vim
diff --git a/vim/spell/en.utf-8.add b/vim/.vim/spell/en.utf-8.add
index 14fe17c..14fe17c 100644
--- a/vim/spell/en.utf-8.add
+++ b/vim/.vim/spell/en.utf-8.add
diff --git a/vim/syntax/levdes.vim b/vim/.vim/syntax/levdes.vim
index a4f1982..a4f1982 100644
--- a/vim/syntax/levdes.vim
+++ b/vim/.vim/syntax/levdes.vim
diff --git a/vim/syntax/nhdes.vim b/vim/.vim/syntax/nhdes.vim
index dcafdf3..dcafdf3 100644
--- a/vim/syntax/nhdes.vim
+++ b/vim/.vim/syntax/nhdes.vim
diff --git a/vim/syntax/perl.vim b/vim/.vim/syntax/perl.vim
index c70fa27..c70fa27 100644
--- a/vim/syntax/perl.vim
+++ b/vim/.vim/syntax/perl.vim
diff --git a/vimrc b/vim/.vimrc
index f8d9886..f8d9886 100644
--- a/vimrc
+++ b/vim/.vimrc
diff --git a/vim/Makefile b/vim/Makefile
new file mode 100644
index 0000000..857e003
--- /dev/null
+++ b/vim/Makefile
@@ -0,0 +1,19 @@
+include ../Makefile.include
+
+TAGFILES=$(addsuffix tags,$(wildcard .vim/pack/*/start/*/doc/))
+SPELLFILES=.vim/spell/en.utf-8.add.spl
+
+build: $(TAGFILES) $(SPELLFILES)
+
+install:
+ @mkdir -p $(HOME)/.cache/vim/hist
+ @mkdir -p $(HOME)/.cache/vim/undo
+
+clean:
+ @rm -f $(TAGFILES) $(SPELLFILES)
+
+%/doc/tags : %/doc
+ @vim -u NONE -c':helptags $< | :q'
+
+%.spl : %
+ @vim -u NONE -c':mkspell! $< | :q' \ No newline at end of file
diff --git a/services/available/xbindkeys/run b/xbindkeys/.services/available/xbindkeys/run
index 7b16f48..7b16f48 100755
--- a/services/available/xbindkeys/run
+++ b/xbindkeys/.services/available/xbindkeys/run
diff --git a/xbindkeysrc b/xbindkeys/.xbindkeysrc
index caaac4b..caaac4b 100644
--- a/xbindkeysrc
+++ b/xbindkeys/.xbindkeysrc
diff --git a/xbindkeys/Makefile b/xbindkeys/Makefile
new file mode 100644
index 0000000..c2c5611
--- /dev/null
+++ b/xbindkeys/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/xbindkeys
+ @mkdir -p $(HOME)/.log/xbindkeys
diff --git a/services/available/xcape/log/run b/xcape/.services/available/xcape/log/run
index 06a11f4..06a11f4 100755
--- a/services/available/xcape/log/run
+++ b/xcape/.services/available/xcape/log/run
diff --git a/services/available/xcape/run b/xcape/.services/available/xcape/run
index 42b65b5..42b65b5 100755
--- a/services/available/xcape/run
+++ b/xcape/.services/available/xcape/run
diff --git a/xcape/Makefile b/xcape/Makefile
new file mode 100644
index 0000000..2a3718f
--- /dev/null
+++ b/xcape/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/xcape
+ @mkdir -p $(HOME)/.log/xcape
diff --git a/Xdefaults b/xorg/.Xdefaults
index 71e1a51..71e1a51 100644
--- a/Xdefaults
+++ b/xorg/.Xdefaults
diff --git a/Xmodmap b/xorg/.Xmodmap
index 8225271..8225271 100644
--- a/Xmodmap
+++ b/xorg/.Xmodmap
diff --git a/xinitrc b/xorg/.xinitrc
index 8d6d364..8d6d364 100644
--- a/xinitrc
+++ b/xorg/.xinitrc
diff --git a/xprofile b/xorg/.xprofile
index cc5d759..cc5d759 100644
--- a/xprofile
+++ b/xorg/.xprofile
diff --git a/services/available/xss-lock/log/run b/xss-lock/.services/available/xss-lock/log/run
index 7de9075..7de9075 100755
--- a/services/available/xss-lock/log/run
+++ b/xss-lock/.services/available/xss-lock/log/run
diff --git a/services/available/xss-lock/run b/xss-lock/.services/available/xss-lock/run
index c95ac8b..c95ac8b 100755
--- a/services/available/xss-lock/run
+++ b/xss-lock/.services/available/xss-lock/run
diff --git a/xss-lock/Makefile b/xss-lock/Makefile
new file mode 100644
index 0000000..6952633
--- /dev/null
+++ b/xss-lock/Makefile
@@ -0,0 +1,4 @@
+include ../Makefile.include
+
+install: $(HOME)/.services/enabled/xss-lock
+ @mkdir -p $(HOME)/.log/xss-lock
diff --git a/config/zsh/local-completions/hornet/_sv b/zsh/.config/zsh/local-completions/hornet/_sv
index 218e95f..218e95f 100644
--- a/config/zsh/local-completions/hornet/_sv
+++ b/zsh/.config/zsh/local-completions/hornet/_sv
diff --git a/config/zsh/zsh-autosuggestions b/zsh/.config/zsh/zsh-autosuggestions
-Subproject a411ef3e0992d4839f0732ebeb9823024afaaaa
+Subproject a411ef3e0992d4839f0732ebeb9823024afaaaa
diff --git a/config/zsh/zsh-completions b/zsh/.config/zsh/zsh-completions
-Subproject 86d55972f5cb65d545389fe0306e617b6832898
+Subproject 86d55972f5cb65d545389fe0306e617b6832898
diff --git a/config/zsh/zsh-syntax-highlighting b/zsh/.config/zsh/zsh-syntax-highlighting
-Subproject 754cefe0181a7acd42fdcb357a67d0217291ac4
+Subproject 754cefe0181a7acd42fdcb357a67d0217291ac4
diff --git a/zshcomplete b/zsh/.zshcomplete
index 0198f58..0198f58 100644
--- a/zshcomplete
+++ b/zsh/.zshcomplete
diff --git a/zshinput b/zsh/.zshinput
index 3ab9ac4..3ab9ac4 100644
--- a/zshinput
+++ b/zsh/.zshinput
diff --git a/zshrc b/zsh/.zshrc
index 2fa8d52..2fa8d52 100644
--- a/zshrc
+++ b/zsh/.zshrc