40 lines
1.3 KiB
Makefile
40 lines
1.3 KiB
Makefile
# -*- mode: makefile-gmake; -*-
|
|
SRC := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
|
|
|
include ../lib/shared.mk
|
|
TARGET := $(XDG_DIR)/mbsync
|
|
RC_TARGET := ~/.mbsyncrc
|
|
TRANSIENT_DIR := $(SRC)/transient
|
|
|
|
up:
|
|
if (( $$+commands[mbsync] )) ; then
|
|
$(report) header "Setting up mbsync"
|
|
$(mk_link) $(SRC) $(TARGET)
|
|
$(mk_link) $(SRC)/mbsyncrc $(RC_TARGET)
|
|
$(MAKE) -C $(SRC) update_cert
|
|
[[ ! -e ~/.authinfo.gpg ]] \
|
|
&& $(report) "warn" "You need to setup the authinfo.gpg run \n > $(SRC)/mk_authinfo" \
|
|
|| $(report) "debug" "authinfo.gpg already installed"
|
|
else
|
|
$(report) debug "mbsync not installed. Skipping."
|
|
fi
|
|
|
|
update_cert:
|
|
if [[ ! -e $(TRANSIENT_DIR) ]] ; then
|
|
$(report) debug "$(TRANSIENT_DIR) didn't exist. Creating one."
|
|
mkdir $(TRANSIENT_DIR)
|
|
fi
|
|
echo "" \
|
|
| openssl s_client -starttls imap --connect 127.0.0.1:1143 -showcerts 2>/dev/null \
|
|
| sed -n -e '/BEGIN\ CERTIFICATE/,/END\ CERTIFICATE/ p' \
|
|
> $(TRANSIENT_DIR)/bridge.crt \
|
|
&& $(report) pass "Cert from proton bridge downloaded." \
|
|
|| $(report) error "Error while fetching cert. Is bridge running?"
|
|
|
|
down:
|
|
$(report) header "Removing mbsync"
|
|
$(rm_link) $(TARGET)
|
|
rm -rf $(TRANSIENT_DIR) ; $(report) "Deleting $(TRANSIENT_DIR)"
|
|
$(rm_link) $(RC_TARGET)
|
|
rm ~/.authinfo.gpg ; $(report) "Deleting authinfo"
|