.POSIX: DYNAMIC_ADDRESSES != \ for f in ../.secrets/ssh/hostfetch/* ../.work/ssh/hostfetch/* hostfetch/*; do \ test ! -x "$$f" || printf '%s\n' "$$f"; \ done | sort -u | sed -n 's|^.*/\([^/]*[^/~]\)$$|\1|p' install: -rm -f -- .ssh-config test ! -e .ssh-config && test ! -L .ssh-config printf '# %s\n' 'THIS FILE IS GENERATED from ~/.dotfiles/ssh/Makefile' \ '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' > .ssh-config chmod -- 600 .ssh-config if test -f config; then \ ../cat-with-head -- config >> .ssh-config; \ fi set config.d/* && if test -f "$$1"; then \ ../cat-nonbackups-with-head -- "$$@" >> .ssh-config; \ fi if test -f ../.secrets/ssh/config; then \ ../cat-with-head -- ../.secrets/ssh/config >> .ssh-config; \ fi set ../.secrets/ssh/config.d/* && if test -f "$$1"; then \ ../cat-nonbackups-with-head -- "$$@" >> .ssh-config; \ fi if test -f ../.work/ssh/config; then \ ../cat-with-head -- ../.work/ssh/config >> .ssh-config; \ fi set ../.work/ssh/config.d/* && if test -f "$$1"; then \ ../cat-nonbackups-with-head -- "$$@" >> .ssh-config; \ fi set -e; \ for name in $(DYNAMIC_ADDRESSES); do \ if test -x "../.secrets/ssh/hostfetch/$$name"; then \ addr="$$("../.secrets/ssh/hostfetch/$$name")"; \ elif test -x "../.work/ssh/hostfetch/$$name"; then \ addr="$$("../.work/ssh/hostfetch/$$name")"; \ else \ addr="$$("hostfetch/$$name")"; \ fi; \ test -n "$$addr"; \ sed "s/%$${name}%/$${addr}/g" -- "$$@" < .ssh-config > .ssh-config~; \ mv -- .ssh-config~ .ssh-config; \ done mkdir -p -- ~/.ssh test ! -e ~/.ssh/config || test -L ~/.ssh/config test ! -e ~/.ssh/config || test -f ~/.ssh/config ln -sf -- ~/.dotfiles/ssh/.ssh-config ~/.ssh/config set ~/.dotfiles/.secrets/ssh/keys/* && if test -f "$$1"; then \ ln -sf -- "$$@" ~/.ssh/; \ fi set ~/.dotfiles/.work/ssh/keys/* && if test -f "$$1"; then \ ln -sf -- "$$@" ~/.ssh/; \ fi mkdir -p -- ~/.config/bash/aliases.d test ! -e ~/.config/bash/aliases.d/openssh || test -L ~/.config/bash/aliases.d/openssh ln -sf -- ~/.dotfiles/openssh/bash-aliases ~/.config/bash/aliases.d/openssh uninstall: +! ../check-installed ssh +! ../check-installed openssh -unlink -- ~/.ssh/config -unlink -- ~/.ssh/known_hosts -unlink -- ~/.ssh/known_hosts.old -cd ../.work/ssh/keys/ && set * && if test -f "$$1"; then \ cd ~/.ssh/ && \ rm -f -- "$$@"; \ fi -rmdir -- ~/.ssh -rm -f -- .ssh-config -unlink -- ~/.config/bash/aliases.d/openssh -rmdir -- ~/.config/bash/aliases.d