services: Disable systemd service linking
I have not used (most) of these services in a long time. This makes the unlinking more official. Also paves the way for setting up simple runit-managed user services.
This commit is contained in:
parent
1568ca0534
commit
aca7b60855
18 changed files with 2 additions and 0 deletions
111
services/systemd/.local/share/services/git-sync
Executable file
111
services/systemd/.local/share/services/git-sync
Executable file
|
|
@ -0,0 +1,111 @@
|
|||
#!/usr/bin/env sh
|
||||
#
|
||||
# Keeps a git directory synced by automatically committing every x seconds.
|
||||
# After y number of runs without changes automatically pushes the directory to a remote.
|
||||
|
||||
# time in seconds to check for changes to commit
|
||||
TIME_TO_COMMIT=${GS_TIME_TO_COMMIT:-120}
|
||||
# amount of times to check for changes *without changes occurring* to push to origin
|
||||
UNCHANGED_RUNS_TO_PUSH=${GS_UNCHANGED_RUNS_TO_PUSH:-30}
|
||||
|
||||
# logging verbosity level -- 0=error, 1=info, 2=debug
|
||||
VERBOSITY=${GS_LOG_VERBOSITY:-1}
|
||||
|
||||
set_target() {
|
||||
[ -z "$GS_TARGETDIR" ] && [ -z "$1" ] && {
|
||||
msg "ERROR: git-sync requires a target directory to keep in sync to be passed in." 0
|
||||
exit 1
|
||||
}
|
||||
DIR="${GS_TARGETDIR:-$1}"
|
||||
}
|
||||
|
||||
pull() {
|
||||
msg "Pulling upstream changes into $DIR"
|
||||
run_git pull --ff-only --ff
|
||||
}
|
||||
|
||||
commit() {
|
||||
msg "Committing changes to $DIR"
|
||||
run_git add .
|
||||
# shellcheck disable=2039
|
||||
run_git commit --no-gpg-sign -m "Git sync: $(date +%F_%R) from ${HOSTNAME:-"${HOST:-undefined}"}"
|
||||
}
|
||||
|
||||
push() {
|
||||
msg "No changes for $((UNCHANGED_RUNS_TO_PUSH * TIME_TO_COMMIT)) seconds, pushing to origin"
|
||||
run_git push
|
||||
}
|
||||
|
||||
should_commit() {
|
||||
if [ "$(run_git diff-files --name-only | wc -l)" -eq 0 ]; then
|
||||
msg "No changes to commit in $DIR" 2
|
||||
false
|
||||
else
|
||||
msg "Found changes to commit in $DIR" 2
|
||||
true
|
||||
fi
|
||||
}
|
||||
|
||||
should_push() {
|
||||
if [ "$no_change_cycle" -ge "$UNCHANGED_RUNS_TO_PUSH" ]; then
|
||||
true
|
||||
else
|
||||
false
|
||||
fi
|
||||
}
|
||||
|
||||
should_pull() {
|
||||
run_git fetch
|
||||
# shellcheck disable=1083
|
||||
if [ "$(run_git rev-parse HEAD)" = "$(run_git rev-parse @{u})" ]; then
|
||||
false
|
||||
else
|
||||
true
|
||||
fi
|
||||
}
|
||||
|
||||
run_git() {
|
||||
git -C "$DIR" "$@"
|
||||
}
|
||||
|
||||
# echos its first argument
|
||||
# verbosity level optionally set through second argument
|
||||
# default verbosity 1 (info), can be set to 2 (debug), or 0 (error)
|
||||
msg() {
|
||||
lvl=${2:-1}
|
||||
[ "$lvl" -gt "$VERBOSITY" ] && return 0
|
||||
|
||||
echo "$1"
|
||||
}
|
||||
|
||||
watch_changes() {
|
||||
no_change_cycle=0
|
||||
while true; do
|
||||
if should_pull; then
|
||||
pull
|
||||
fi
|
||||
|
||||
if should_commit; then
|
||||
commit
|
||||
no_change_cycle=0
|
||||
fi
|
||||
|
||||
if should_push; then
|
||||
push
|
||||
no_change_cycle=-9999
|
||||
fi
|
||||
|
||||
msg "No changes for $((no_change_cycle * TIME_TO_COMMIT)) of $((UNCHANGED_RUNS_TO_PUSH * TIME_TO_COMMIT)) seconds, going back to sleep for $((TIME_TO_COMMIT)) seconds." 2
|
||||
|
||||
no_change_cycle=$((no_change_cycle + 1))
|
||||
sleep "$TIME_TO_COMMIT"
|
||||
done
|
||||
}
|
||||
|
||||
main() {
|
||||
set_target "$1"
|
||||
|
||||
watch_changes
|
||||
}
|
||||
|
||||
main "$1"
|
||||
20
services/systemd/.local/share/services/x-started-confirm.sh
Executable file
20
services/systemd/.local/share/services/x-started-confirm.sh
Executable file
|
|
@ -0,0 +1,20 @@
|
|||
#!/usr/bin/env bash
|
||||
# from: https://superuser.com/questions/759759/writing-a-service-that-depends-on-xorg/1351489#1351489
|
||||
|
||||
COUNTER=0
|
||||
|
||||
while true; do
|
||||
# Check whether or not socket exists
|
||||
if [ -S /tmp/.X11-unix/X0 ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
((++COUNTER))
|
||||
|
||||
if [ "$COUNTER" -gt 20 ]; then
|
||||
printf "X did not start in time\n"
|
||||
exit 1
|
||||
fi
|
||||
printf "X not yet started, counter at %s\n" "$COUNTER"
|
||||
sleep 1
|
||||
done
|
||||
Loading…
Add table
Add a link
Reference in a new issue