diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 248 |
1 files changed, 135 insertions, 113 deletions
@@ -14,7 +14,6 @@ install-cpanm \ install-curl \ install-dillo \ - install-dunst \ install-emacs \ install-ex \ install-finger \ @@ -22,8 +21,8 @@ install-games-man \ install-git \ install-gnupg \ - install-gtk \ install-i3 \ + install-init \ install-ksh \ install-less \ install-login-shell \ @@ -32,7 +31,9 @@ install-mpv \ install-mutt \ install-mysql \ + install-ncmpcpp \ install-newsboat \ + install-parcellite \ install-perlcritic \ install-perltidy \ install-plenv \ @@ -40,19 +41,21 @@ install-pyenv \ install-rbenv \ install-readline \ + install-redshift \ + install-rofi \ + install-scrot \ install-sh \ install-subversion \ + install-sxhkd \ install-systemd \ - install-terminfo \ install-tidy \ install-tmux \ - install-urxvt \ install-vim \ install-vim-gui \ install-vint \ install-wget \ install-x \ - install-youtube-dl \ + install-xsession \ install-zsh \ check \ check-bash \ @@ -63,8 +66,8 @@ check-login-shell \ check-man \ check-sh \ - check-urxvt \ - check-xinit \ + check-x \ + check-xsession \ check-zsh \ lint \ lint-bash \ @@ -73,9 +76,9 @@ lint-git-template-hooks \ lint-ksh \ lint-sh \ - lint-urxvt \ lint-vim \ - lint-xinit + lint-x \ + lint-xsession .SUFFIXES: .SUFFIXES: .awk .bash .m4 .mi5 .pl .sed .sh @@ -111,7 +114,6 @@ BINS = bin/ap \ bin/ddup \ bin/defang \ bin/dfv \ - bin/dmp \ bin/dub \ bin/edda \ bin/eds \ @@ -222,7 +224,8 @@ BINS = bin/ap \ bin/xgo \ bin/xgoc \ bin/xrbg \ - bin/xrq + bin/xrq \ + bin/xsnap BINS_M4 = bin/chn.m4 \ bin/dfv.m4 \ @@ -273,7 +276,9 @@ all: $(BINS) \ $(GIT_TEMPLATE_HOOKS) \ git/config \ gnupg/profile.d/gnupg.sh \ - less/less + less/less \ + tmux/bin/tmux \ + x/xsession clean distclean: rm -f -- \ @@ -291,8 +296,9 @@ clean distclean: include/mktd.m4 \ less/less \ mutt/filters/markdown-to-html \ - urxvt/ext/select \ - vim/dist/* + mutt/muttrc.d/src \ + tmux/bin/tmux \ + x/xsession .awk: sh bin/shb.sh awk -f < $< > $@ @@ -342,7 +348,7 @@ git/config: git/config.m4 -D NAME=$(NAME) \ -D EMAIL=$(EMAIL) \ -D GPG_KEYID=$(GPG_KEYID) \ - -D XDG_CONFIG_HOME=$(XDG_CONFIG_HOME) \ + -D XDG_DATA_HOME=$(XDG_DATA_HOME) \ git/config.m4 > $@ less/less: less/lesskey @@ -360,6 +366,7 @@ install: install-bin \ install-ex \ install-git \ install-gnupg \ + install-init \ install-less \ install-login-shell \ install-man \ @@ -373,7 +380,7 @@ install-abook: mkdir -p -- $(HOME)/.abook cp -p -- abook/abookrc $(HOME)/.abook -install-bash: check-bash install-sh bin/han +install-bash: check-bash install-sh bin/han mkdir -p -- $(HOME)/.bashrc.d $(HOME)/.local/bin cp -p -- bash/bashrc $(HOME)/.bashrc cp -p -- bash/bashrc.d/*.bash $(HOME)/.bashrc.d @@ -396,25 +403,21 @@ install-bin-man: cp -p -- man/man8/*.8df $(XDG_DATA_HOME)/man/man8 install-cabal: - cp -p -- cabal/profile.d/*.sh $(HOME)/.profile.d + cp -p -- cabal/profile.d/cabal.sh $(HOME)/.profile.d install-cargo: - cp -p -- cargo/profile.d/*.sh $(HOME)/.profile.d + cp -p -- cargo/profile.d/cargo.sh $(HOME)/.profile.d install-cpanm: - cp -p -- cpanm/profile.d/*.sh $(HOME)/.profile.d + cp -p -- cpanm/profile.d/cpanm.sh $(HOME)/.profile.d install-curl: cp -p -- curl/curlrc $(HOME)/.curlrc -install-dillo: dillo/dillorc install-x +install-dillo: dillo/dillorc mkdir -p -- $(HOME)/.dillo cp -p -- dillo/dillorc $(HOME)/.dillo/dillorc -install-dunst: install-x - mkdir -p -- $(XDG_CONFIG_HOME)/dunst - cp -p -- dunst/dunstrc $(XDG_CONFIG_HOME)/dunst - install-emacs: emacs/bin/emacsm install-sh mkdir -p -- $(HOME)/.local/bin cp -p -- emacs/emacs $(HOME)/.emacs @@ -440,35 +443,39 @@ install-games-man: install-git: git/config $(GIT_TEMPLATE_HOOKS) mkdir -p -- $(XDG_CONFIG_HOME)/git cp -p -- git/config $(XDG_CONFIG_HOME)/git/config - mkdir -p -- $(XDG_CONFIG_HOME)/git/template + mkdir -p -- $(XDG_DATA_HOME)/git/template cp -pR -- git/template/description \ - $(XDG_CONFIG_HOME)/git/template/description - mkdir -p -- $(XDG_CONFIG_HOME)/git/template/hooks + $(XDG_DATA_HOME)/git/template/description + mkdir -p -- $(XDG_DATA_HOME)/git/template/hooks cp -pR -- $(GIT_TEMPLATE_HOOKS) \ - $(XDG_CONFIG_HOME)/git/template/hooks + $(XDG_DATA_HOME)/git/template/hooks install-gnupg: gnupg/profile.d/gnupg.sh install-sh - cp -p -- gnupg/profile.d/*.sh $(HOME)/.profile.d - -install-gtk: - mkdir -p -- $(XDG_CONFIG_HOME)/gtk-3.0 - cp -p -- gtk/gtkrc-2.0 $(HOME)/.gtkrc-2.0 - cp -p -- gtk/gtk-3.0/settings.ini $(XDG_CONFIG_HOME)/gtk-3.0 + cp -p -- gnupg/profile.d/gnupg.sh $(HOME)/.profile.d install-i3: install-x mkdir -p -- $(XDG_CONFIG_HOME)/i3 - cp -p -- i3/* $(XDG_CONFIG_HOME)/i3 + cp -p -- i3/config $(XDG_CONFIG_HOME)/i3 + mkdir -p -- $(XDG_CONFIG_HOME)/i3status + cp -p -- i3/status $(XDG_CONFIG_HOME)/i3status/config -install-keychain: install-sh - cp -p -- keychain/profile.d/*.sh $(HOME)/.profile.d - cp -p -- keychain/shrc.d/*.sh $(HOME)/.shrc.d +install-init: + if test -d /run/systemd/system ; then make install-systemd ; fi install-less: less/less mkdir -p -- $(HOME)/.profile.d - cp -- less/profile.d/*.sh $(HOME)/.profile.d + cp -p -- less/profile.d/less.sh $(HOME)/.profile.d mkdir -p -- $(XDG_CONFIG_HOME)/less cp -p -- less/less $(XDG_CONFIG_HOME)/less/key +install-logrotate: install-systemd + mkdir -p -- $(XDG_CONFIG_HOME)/logrotate \ + $(XDG_CONFIG_HOME)/logrotate/config.d + cp -p -- logrotate/config $(XDG_CONFIG_HOME)/logrotate + cp -p -- logrotate/systemd/user/logrotate.service \ + logrotate/systemd/user/logrotate.timer \ + $(XDG_DATA_HOME)/systemd/user + install-mail: cp -p -- mail/signature $(HOME)/.signature @@ -477,10 +484,12 @@ install-man: cp -p -- man/man7/dotfiles.7df $(XDG_DATA_HOME)/man/man7 install-mpv: - mkdir -p -- $(XDG_CONFIG_HOME)/mpv - cp -p -- mpv/* $(XDG_CONFIG_HOME)/mpv + mkdir -p -- \ + $(XDG_CONFIG_HOME)/mpv \ + $(XDG_DATA_HOME)/mpv/screenshots + cp -p -- mpv/mpv.conf $(XDG_CONFIG_HOME)/mpv -install-mutt: install-gnupg install-mail mutt/filters/markdown-to-html +install-mutt: install-gnupg install-mail mutt/filters/markdown-to-html mutt/muttrc.d/src mkdir -p -- \ $(XDG_CONFIG_HOME)/mutt \ $(XDG_CONFIG_HOME)/mutt/muttrc.d \ @@ -496,97 +505,117 @@ install-mutt: install-gnupg install-mail mutt/filters/markdown-to-html cp -p -- mutt/filters/markdown-to-html \ $(HOME)/.local/libexec/mutt/filters +install-ncmpcpp: + mkdir -p -- $(XDG_CONFIG_HOME)/ncmpcpp + cp -p -- ncmpcpp/config $(XDG_CONFIG_HOME)/ncmpcpp + install-newsboat: install-systemd - mkdir -p -- $(XDG_CONFIG_HOME)/newsboat $(XDG_DATA_HOME)/newsboat - cp -p -- newsboat/config $(XDG_CONFIG_HOME)/newsboat - -command -v systemctl >/dev/null 2>&1 \ - && mkdir -p -- $(XDG_CONFIG_HOME)/systemd/user \ - && cp -p -- newsboat/systemd/user/* $(XDG_CONFIG_HOME)/systemd/user \ - && systemctl --user daemon-reload \ - && systemctl --user start reload-newsboat.timer \ - && systemctl --user enable reload-newsboat.timer + mkdir -p -- $(XDG_CONFIG_HOME)/newsboat \ + $(XDG_DATA_HOME)/newsboat + cp -p -- newsboat/config \ + $(XDG_CONFIG_HOME)/newsboat + cp -p -- newsboat/systemd/user/newsboat.service \ + $(XDG_DATA_HOME)/systemd/user install-mysql: cp -p -- mysql/my.cnf $(HOME)/.my.cnf install-ksh: check-ksh install-sh mkdir -p -- $(HOME)/.kshrc.d - cp -p -- ksh/shrc.d/*.sh $(HOME)/.shrc.d + cp -p -- ksh/shrc.d/ksh.sh $(HOME)/.shrc.d cp -p -- ksh/kshrc $(HOME)/.kshrc cp -p -- ksh/kshrc.d/*.ksh $(HOME)/.kshrc.d install-login-shell: check-login-shell sh install/login-shell.sh +install-parcellite: install-x + cp -p -- parcellite/parcelliterc $(XDG_CONFIG_HOME) + cp -p -- parcellite/xsession.d/parcellite.sh $(HOME)/.xsession.d + install-perlcritic: install-sh - cp -p -- perlcritic/profile.d/*.sh $(HOME)/.profile.d + cp -p -- perlcritic/profile.d/perlcritic.sh $(HOME)/.profile.d mkdir -p -- $(XDG_CONFIG_HOME)/perlcritic cp -p -- perlcritic/perlcriticrc $(XDG_CONFIG_HOME)/perlcritic/perlcriticrc install-perltidy: install-sh - cp -p -- perltidy/profile.d/*.sh $(HOME)/.profile.d + cp -p -- perltidy/profile.d/perltidy.sh $(HOME)/.profile.d mkdir -p -- $(XDG_CONFIG_HOME)/perltidy cp -p -- perltidy/perltidyrc $(XDG_CONFIG_HOME)/perltidy/perltidyrc install-plenv: install-sh install-cpanm - cp -p -- plenv/profile.d/*.sh $(HOME)/.profile.d - cp -p -- plenv/shrc.d/*.sh $(HOME)/.shrc.d + cp -p -- plenv/profile.d/plenv.sh $(HOME)/.profile.d + cp -p -- plenv/shrc.d/plenv.sh $(HOME)/.shrc.d install-psql: cp -p -- psql/psqlrc $(HOME)/.psqlrc install-pyenv: install-sh - cp -p -- pyenv/profile.d/*.sh $(HOME)/.profile.d - cp -p -- pyenv/shrc.d/*.sh $(HOME)/.shrc.d + cp -p -- pyenv/profile.d/pyenv.sh $(HOME)/.profile.d + cp -p -- pyenv/shrc.d/pyenv.sh $(HOME)/.shrc.d install-rbenv: install-sh - cp -p -- rbenv/profile.d/*.sh $(HOME)/.profile.d - cp -p -- rbenv/shrc.d/*.sh $(HOME)/.shrc.d + cp -p -- rbenv/profile.d/rbenv.sh $(HOME)/.profile.d + cp -p -- rbenv/shrc.d/rbenv.sh $(HOME)/.shrc.d install-readline: cp -p -- readline/inputrc $(HOME)/.inputrc +install-redshift: install-x + cp -p -- redshift/redshift.conf $(XDG_CONFIG_HOME) + cp -p -- redshift/xsession.d/redshift.sh $(HOME)/.xsession.d + +install-rofi: rofi/bin/rofi_pass + mkdir -p -- $(HOME)/.local/bin + cp -p -- rofi/bin/rofi_pass $(HOME)/.local/bin + +install-scrot: + mkdir -p -- $(XDG_DATA_HOME)/scrot/screenshots + install-sh: check-sh - mkdir -p -- $(HOME)/.profile.d $(HOME)/.shrc.d cp -p -- sh/profile $(HOME)/.profile + mkdir -p -- $(HOME)/.profile.d cp -p -- sh/profile.d/*.sh $(HOME)/.profile.d cp -p -- sh/shinit $(HOME)/.shinit cp -p -- sh/shrc $(HOME)/.shrc + mkdir -p -- $(HOME)/.shrc.d cp -p -- sh/shrc.d/*.sh $(HOME)/.shrc.d install-subversion: mkdir -p -- $(HOME)/.subversion cp -p -- subversion/config $(HOME)/.subversion -install-systemd: - -command -v systemctl >/dev/null 2>&1 \ - && mkdir -p -- $(XDG_CONFIG_HOME)/systemd/user \ - && cp -p -- systemd/user/* $(XDG_CONFIG_HOME)/systemd/user \ - && systemctl --user daemon-reload \ - -# Need to install these in appropriate order to meet dependencies; could trust -# the system glob, but a fixed list is just more straightforward -install-terminfo: - tic terminfo/putty.ti - tic terminfo/putty-256color.ti - tic terminfo/rxvt.ti - tic terminfo/rxvt-256color.ti - tic terminfo/rxvt-unicode.ti - tic terminfo/rxvt-unicode-256color.ti - tic terminfo/screen.ti - tic terminfo/screen-256color.ti +install-sxhkd: install-scrot install-x + mkdir -p -- $(XDG_CONFIG_HOME)/sxhkd + cp -p -- sxhkd/sxhkdrc $(XDG_CONFIG_HOME)/sxhkd + cp -p -- sxhkd/xsession.d/sxhkd.sh $(HOME)/.xsession.d + +install-systemd: install-sh + cp -p -- systemd/profile.d/systemd.sh $(HOME)/.profile.d + mkdir -p -- $(XDG_DATA_HOME)/systemd/user + cp -p -- systemd/user/notify-email@.service \ + $(XDG_DATA_HOME)/systemd/user + mkdir -p -- $(XDG_DATA_HOME)/systemd/user/service.d + cp -p -- systemd/user/service.d/50-notify-email.conf \ + $(XDG_DATA_HOME)/systemd/user/service.d + mkdir -p -- $(XDG_DATA_HOME)/systemd/user/notify-email@.service.d + cp -p -- systemd/user/notify-email@.service.d/50-notify-email.conf \ + $(XDG_DATA_HOME)/systemd/user/notify-email@.service.d + mkdir -p -- $(XDG_DATA_HOME)/systemd/user/run-.service.d + cp -p -- systemd/user/run-.service.d/50-notify-email.conf \ + $(XDG_DATA_HOME)/systemd/user/run-.service.d install-tidy: install-sh - cp -p -- tidy/profile.d/*.sh $(HOME)/.profile.d + cp -p -- tidy/profile.d/tidy.sh $(HOME)/.profile.d mkdir -p -- $(XDG_CONFIG_HOME)/tidy cp -p -- tidy/tidyrc $(XDG_CONFIG_HOME)/tidy/tidyrc -install-tmux: tmux/tmux.conf install-terminfo +install-tmux: tmux/bin/tmux tmux/tmux.conf install-systemd + cp -p -- tmux/bin/tmux $(HOME)/.local/bin + cp -p -- tmux/profile.d/tmux.sh $(HOME)/.profile.d cp -p -- tmux/tmux.conf $(HOME)/.tmux.conf - -install-urxvt: urxvt/ext/select - mkdir -p -- $(HOME)/.urxvt/ext - cp -- urxvt/ext/select $(HOME)/.urxvt/ext + cp -p -- tmux/systemd/user/tmux.service \ + $(XDG_DATA_HOME)/systemd/user VIM = vim VIMDIR = $(HOME)/.vim @@ -615,35 +644,29 @@ install-vim: GVIMRC = $(HOME)/.gvimrc install-vim-gui: install-vim - cp -- vim/gvimrc $(GVIMRC) + cp -p -- vim/gvimrc $(GVIMRC) install-vint: cp -p -- vint/vintrc.yaml $(HOME)/.vintrc.yaml install-wget: install-sh - cp -p -- wget/profile.d/*.sh $(HOME)/.profile.d + cp -p -- wget/profile.d/wget.sh $(HOME)/.profile.d mkdir -p -- $(XDG_CACHE_HOME)/wget $(XDG_CONFIG_HOME)/wget cp -p -- wget/wgetrc $(XDG_CONFIG_HOME)/wget/wgetrc -install-x: check-xinit - mkdir -p -- \ - $(XDG_CONFIG_HOME)/sxhkd \ - $(HOME)/.xinitrc.d \ - $(HOME)/.Xresources.d - cp -p -- X/redshift.conf $(XDG_CONFIG_HOME) - cp -p -- X/sxhkdrc $(XDG_CONFIG_HOME)/sxhkd - cp -p -- X/xinitrc $(HOME)/.xinitrc - cp -p -- X/xinitrc.d/*.sh $(HOME)/.xinitrc.d - cp -p -- X/Xresources $(HOME)/.Xresources - cp -p -- X/Xresources.d/* $(HOME)/.Xresources.d - -install-youtube-dl: - mkdir -p -- $(XDG_CONFIG_HOME)/youtube-dl - cp -p -- youtube-dl/config $(XDG_CONFIG_HOME)/youtube-dl +install-x: check-x install-logrotate install-sh + cp -p -- x/Xresources $(HOME)/.Xresources + cp -p -- x/shrc.d/x.sh $(HOME)/.shrc.d + mkdir -p -- $(HOME)/.xsession.d + +install-xsession: x/xsession check-xsession install-x + cp -p -- x/xsession $(HOME)/.xsession + mkdir -p -- $(XDG_CONFIG_HOME)/log/xsession + cp -p -- x/logrotate/config.d/xsession $(XDG_CONFIG_HOME)/logrotate/config.d install-zsh: check-zsh install-sh mkdir -p -- $(HOME)/.zshrc.d - cp -p -- zsh/profile.d/*.sh $(HOME)/.profile.d + cp -p -- zsh/profile.d/zsh.sh $(HOME)/.profile.d cp -p -- zsh/zprofile $(HOME)/.zprofile cp -p -- zsh/zshrc $(HOME)/.zshrc cp -p -- zsh/zshrc.d/*.zsh $(HOME)/.zshrc.d @@ -654,7 +677,7 @@ check: check-bin \ check-man \ check-sh -check-bash: +check-bash: bin/han sh check/bash.sh check-bin: $(BINS) @@ -678,11 +701,11 @@ check-login-shell: check-sh: sh check/sh.sh -check-urxvt: urxvt/ext/select - sh check/urxvt.sh +check-x: + sh check/x.sh -check-xinit: - sh check/xinit.sh +check-xsession: x/xsession + sh check/xsession.sh check-zsh: sh check/zsh.sh @@ -693,9 +716,8 @@ lint: lint-bash \ lint-git-template-hooks \ lint-ksh \ lint-sh \ - lint-urxvt \ lint-vim \ - lint-xinit + lint-x lint-bash: check-bash sh lint/bash.sh @@ -715,11 +737,11 @@ lint-ksh: check-ksh lint-sh: check-sh sh lint/sh.sh -lint-urxvt: check-urxvt - sh lint/urxvt.sh - lint-vim: sh lint/vim.sh -lint-xinit: check-xinit - sh lint/xinit.sh +lint-x: check-x + sh lint/x.sh + +lint-xsession: x/xsession check-xsession + sh lint/xsession.sh |