From 99b21dbe8e134fbb77899e218c22a69830e73e8d Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Fri, 3 Jul 2026 15:01:48 +0100 Subject: [PATCH] stores src in $HOME and more perm tweaks --- install.sh | 29 ++++++++++++++++------------- make/dyndns.mk | 23 ++++++----------------- openrc/init.d/joeac.net | 3 ++- 3 files changed, 24 insertions(+), 31 deletions(-) diff --git a/install.sh b/install.sh index 521c321..a9b7e3a 100644 --- a/install.sh +++ b/install.sh @@ -44,21 +44,26 @@ if [ -z "$(grep "\bjoeac.net\b" /etc/group)" ] then sudo adduser -D -h /home/joeac.net joeac.net sudo adduser joeac.net joeac.net - sudo adduser $(whoami) joeac.net - su -l $(whoami) +fi + +if ! ( expr "$(groups joeac.net)" wheel ) +then + sudo adduser joeac.net wheel +fi + +su -l joeac.net +if ! [ $(whoami) = "joeac.net" ] +then + echo "Could not log in to user: joeac.net. Log in manually and re-run this script as joeac.net." + exit 1 fi if ! [ -d /home/joeac.net/joeac.net/.git ] then - sudo -u joeac.net git clone https://git.joeac.net/joeac/joeac.net.git /home/joeac.net/joeac.net + git clone https://git.joeac.net/joeac/joeac.net.git /home/joeac.net/joeac.net fi sudo chown joeac.net:joeac.net /home/joeac.net/joeac.net -sudo chmod 770 /home/joeac.net/joeac.net - -if ! [ -h /usr/local/lib/joeac.net ] -then - sudo ln -s /home/joeac.net/joeac.net /usr/local/lib/joeac.net -fi +sudo chmod 770 /home/joeac.netjoeac.net if ! [ -f DIGITALOCEAN_TOKEN ] then @@ -79,8 +84,6 @@ then unset REMOTE_SMTP_PASSWORD fi -sudo -u joeac.net touch /home/joeac.net/joeac.net/.env -sudo -u joeac.net chmod 760 /home/joeac.net/joeac.net/.env while read line do if expr "${line}" : "[[:alnum:]_]\+=" 1>/dev/null @@ -106,5 +109,5 @@ do fi done crontab.tmp - echo " /usr/local/bin/dyndns.sh 4 $(*F)joeac.net" >> crontab.tmp - echo "CONN_DEVICE_NAME=eth0 /usr/local/bin/dyndns.sh 6 $(*F)joeac.net" >> crontab.tmp + echo " $(shell realpath ~)/digitalocean_dyndns/dyndns.sh 4 $(*F)joeac.net" >> crontab.tmp + echo "CONN_DEVICE_NAME=eth0 $(shell realpath ~)/digitalocean_dyndns/dyndns.sh 6 $(*F)joeac.net" >> crontab.tmp sudo mv crontab.tmp $@ sudo chmod +x $@ @@ -42,23 +42,12 @@ reinstall_dyndns: $(addprefix remove_,$(dyndns_crontabs_to_remove)) .PHONY: uninstall_dyndns uninstall_dyndns: $(foreach module,$(ALL_MODULES),$(uninstall_dyndns_$(module))) sudo rm -rf \ - /usr/local/bin/dyndns.sh \ - /usr/local/bin/get_ip_addr.sh \ - /usr/local/lib/digitalocean_dyndns/ \ + ~/digitalocean_dyndns/ \ ~/.config/dyndns \ ~/.cache/dyndns -/usr/local/bin/dyndns.sh: /usr/local/lib/digitalocean_dyndns/dyndns.sh /usr/local/bin/get_ip_addr.sh - sudo rm -f /usr/local/bin/dyndns.sh - sudo cp /usr/local/lib/digitalocean_dyndns/dyndns.sh /usr/local/bin/dyndns.sh - -/usr/local/bin/get_ip_addr.sh: /usr/local/lib/digitalocean_dyndns/get_ip_addr.sh - sudo rm -f /usr/local/bin/get_ip_addr.sh - sudo cp /usr/local/lib/digitalocean_dyndns/get_ip_addr.sh /usr/local/bin/get_ip_addr.sh - -/usr/local/lib/digitalocean_dyndns/%: - cd /usr/local/lib \ - && sudo git clone https://git.joeac.net/joeac/digitalocean_dyndns.git +~/digitalocean_dyndns/%: + git clone https://git.joeac.net/joeac/digitalocean_dyndns.git ~/digitalocean_dyndns ~/.config/dyndns/DIGITALOCEAN_TOKEN: DIGITALOCEAN_TOKEN mkdir -p ~/.config/dyndns/ diff --git a/openrc/init.d/joeac.net b/openrc/init.d/joeac.net index afe79bd..2d35363 100755 --- a/openrc/init.d/joeac.net +++ b/openrc/init.d/joeac.net @@ -3,8 +3,9 @@ # https://gist.github.com/itzwam/2069e935385193207f7e5bea7156e21d # https://github.com/0x17de/dockerservice-openrc +: ${HOME:=/home/joeac.net} : ${MODULENAME:=${RC_SVCNAME##*.}} -: ${SRCDIR:=/usr/local/lib/joeac.net} +: ${SRCDIR:=$HOME/joeac.net} DOCKER_COMPOSE_UP_ARGS=${DOCKER_COMPOSE_UP_ARGS-"--no-build --no-recreate --no-deps"} [ -z "${MODULENAME}" ] && exit 1