40 lines
1015 B
Makefile
40 lines
1015 B
Makefile
# -*- mode: makefile-gmake; -*-
|
|
SRC_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
|
|
|
CONFIG_SRC := $(SRC_DIR)/config
|
|
CONFIG_TRGT := ~/.ssh/config
|
|
GIT_KEY := ~/.ssh/git.jpatrick.io
|
|
|
|
include ../lib/shared.mk
|
|
|
|
install: | init update
|
|
|
|
init:
|
|
$(report) header "Setting up ssh"
|
|
$(mk_link) $(CONFIG_SRC) $(CONFIG_TRGT)
|
|
$(mk_link) $(SRC_DIR)/public_keys ~/.ssh/public_keys
|
|
$(MAKE) -C $(SRC_DIR) init_git_key
|
|
|
|
update:
|
|
mkdir -p public_keys/`hostname`
|
|
cd ~/.ssh
|
|
$(report) header "Copying public keys"
|
|
for i in *.pub ; do
|
|
cp $$i public_keys/`hostname`/$$i
|
|
$(report) pass "Copied $$i"
|
|
done
|
|
|
|
remove:
|
|
$(report) header "Removing ssh sym-links"
|
|
$(rm_link) $(CONFIG_TRGT)
|
|
$(report) warn "NOTE: All keys still remain."
|
|
|
|
init_git_key:
|
|
if [[ -e $(GIT_KEY) ]] ; then
|
|
$(report) debug "$(GIT_KEY) already installed."
|
|
else
|
|
$(report) info "Setting up key for git.jpatrick.io"
|
|
ssh-keygen -t ed25519 -C "`hostname`: `date`" -f $(GIT_KEY) -N "" \
|
|
; $(report) info "git.jpatrick.io key created"
|
|
fi
|