diff --git a/cronjob-clean-php b/cronjob-clean-php deleted file mode 100755 index b47cc39..0000000 --- a/cronjob-clean-php +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -[[ -d /var/lib/php/sessions ]] && find /var/lib/php/sessions -mmin +1440 -type f -print0 | xargs -0 rm -f -[[ -d /var/tmp/php-uploads ]] && find /var/tmp/php-uploads -mmin +1440 -type f -print0 | xargs -0 rm -f diff --git a/cronjob-dehydrated b/cronjob-dehydrated index 7afa21c..ec31e99 100755 --- a/cronjob-dehydrated +++ b/cronjob-dehydrated @@ -1,5 +1,6 @@ #!/bin/bash -# Run this job in the background. -( # Delay the run for 15 hours (from midnight) and then run at a random time within 3 hours after that. - sleep $(( 54000 + (RANDOM % 10800) )) - /opt/sbin/dehydrated -c >/dev/null ) & + +# Delay the run for 15 hours (from midnight) and then run at a random time within 3 hours after that. +sleep $(( 54000 + (RANDOM % 10800) )) + +/usr/sbin/dehydrated -c >/dev/null diff --git a/cronjob-rotate-logs-today-symlink b/cronjob-rotate-logs-today-symlink deleted file mode 100755 index f59a139..0000000 --- a/cronjob-rotate-logs-today-symlink +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash - -# Default configuration. -LOGS_DIR="/data/logs" - -# Process the directories in the $LOGS_DIR directory. -[[ -d "$LOGS_DIR" ]] && { - TODAY="$(printf "%(%Y/%m/%d)T")" - - for DIR in "$LOGS_DIR"/*/; do - cd "$DIR" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "failed to change directory to '$DIR'" >&2 - continue - } - - # Create the new days' location. - umask 0755 - # shellcheck disable=SC2174 - mkdir -p -m 0755 "$LOGS_DIR/$TODAY" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "failed to create directory '$LOGS_DIR/$TODAY'" >&2 - continue - } - - # Create the 'today' symlink to the new location. - ln -sfn "$TODAY" "today" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "updating 'today' symlink failed in '$DIR'" >&2 - continue - } - done -} - -exit 0 diff --git a/cronjob-update-packages-list b/cronjob-update-packages-list index 203c69a..7c74c26 100755 --- a/cronjob-update-packages-list +++ b/cronjob-update-packages-list @@ -7,7 +7,6 @@ } # Source system info. -# shellcheck disable=SC1091 . /etc/os-release # Create package list depending on system type. @@ -21,7 +20,7 @@ case "$ID" in 'slackware') slackpkg -batch=on -default_answer=y generate-template "$(hostname --short)" >/dev/null [[ -L /etc/pkglist ]] && rm -f /etc/pkglist - printf "%s\\n" /var/log/packages/* | rev | cut -d- -f4- | rev >/etc/pkglist + ls -1 /var/log/packages/ | rev | cut -d- -f4- | rev >/etc/pkglist ;; 'void') xbps-query -l | awk '{ print $2 }' | rev | cut -d- -f2- | rev >/etc/pkglist diff --git a/cronjob-warn-git-status b/cronjob-warn-git-status index 2147af1..641ec13 100755 --- a/cronjob-warn-git-status +++ b/cronjob-warn-git-status @@ -1,24 +1,17 @@ #!/bin/bash -# Default configuration. -CHECK_DIRS=('/') -EMAIL_TO=('sysadmin@slackware.uk') -EMAIL_FROM="\"Server: ${HOSTNAME%%.*}\" " - -# Allow /etc/default/warn-git-status to override default configuration. -[[ -e /etc/default/warn-git-status ]] && { - # shellcheck disable=SC1091 - source /etc/default/warn-git-status || { - printf "%s: %s\\n" "${0##*/}" "failed reading /etc/default/warn-git-status" >&2 - exit 1 - } -} - +CHECK_DIRS=( '/' '/etc/slackpkg/templates' ) OUTPUT_FILE="/tmp/${0##*/}-$$-$RANDOM" # Remove the OUTPUT_FILE when done. trap 'rm -f "$OUTPUT_FILE"' EXIT +# Source the mail configuration. +source /etc/mail.conf "git-status" 2>/dev/null || { + printf "%s: %s\\n" "${0##*/}" "Failed to source /etc/mail.conf" >&2 + exit 1 +} + # Loop through the list and process. for DIR in "${CHECK_DIRS[@]}"; do [[ ! -e "$DIR" ]] || [[ ! -d "$DIR" ]] && continue @@ -27,27 +20,16 @@ for DIR in "${CHECK_DIRS[@]}"; do unset TMP_OUTPUT done -# If there's no output, do nothing. [[ ! -s "$OUTPUT_FILE" ]] && { exit 0 } # Send the message. if [[ -n "${EMAIL_TO[*]}" ]]; then - if hash mailx >/dev/null 2>&1; then - mailx -S "from=$EMAIL_FROM" -s "Mail queue" "${EMAIL_TO[@]}" <"$OUTPUT_FILE" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "mailx command failed" >&2 - exit 1 - } - elif hash mail >/dev/null 2>&1; then - mail -r "$EMAIL_FROM" -s "Mail queue" "${EMAIL_TO[@]}" <"$OUTPUT_FILE" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "mail command failed" >&2 - exit 1 - } - else - printf "%s: %s\\n" "${0##*/}" "no mailer command found" >&2 + mailx "${MAILX_ARGS[@]}" -S "from=$EMAIL_FROM" -s "Git statuses" "${EMAIL_TO[@]}" <<<"$(cat "$OUTPUT_FILE")" 2>/dev/null || { + printf "%s: %s\\n" "${0##*/}" "mailx command failed" >&2 exit 1 - fi + } else printf "%s: %s\\n" "${0##*/}" "no recipient configured for mail delivery" >&2 exit 1 diff --git a/cronjob-warn-smtp-queue b/cronjob-warn-smtp-queue index f551661..150b5d0 100755 --- a/cronjob-warn-smtp-queue +++ b/cronjob-warn-smtp-queue @@ -1,22 +1,15 @@ #!/bin/bash -# Default configuration. -EMAIL_TO=('sysadmin@slackware.uk') -EMAIL_FROM="\"Server: ${HOSTNAME%%.*}\" " - -# Allow /etc/default/warn-smtp-queue to override default configuration. -[[ -e /etc/default/warn-smtp-queue ]] && { - # shellcheck disable=SC1091 - source /etc/default/warn-smtp-queue || { - printf "%s: %s\\n" "${0##*/}" "failed reading /etc/default/warn-smtp-queue" >&2 - exit 1 - } +# Source the mail configuration. +source /etc/mail.conf "mail-queue" 2>/dev/null || { + printf "%s: %s\\n" "${0##*/}" "Failed to source /etc/mail.conf" >&2 + exit 1 } # Don't do anything unless 'mailq' is installed. hash mailq 2>/dev/null && { # Prevent a race with other cron jobs that produce emails. - sleep $(( 10 + (RANDOM % 30) )) + sleep $(( RANDOM % 180 )) # Get the queue TMP_OUTPUT="$(mailq)" @@ -25,20 +18,10 @@ hash mailq 2>/dev/null && { # Send the message. if [[ -n "${EMAIL_TO[*]}" ]]; then - if hash mailx >/dev/null 2>&1; then - mailx -S "from=$EMAIL_FROM" -s "Mail queue" "${EMAIL_TO[@]}" <<<"$TMP_OUTPUT" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "mailx command failed" >&2 - exit 1 - } - elif hash mail >/dev/null 2>&1; then - mail -r "$EMAIL_FROM" -s "Mail queue" "${EMAIL_TO[@]}" <<<"$TMP_OUTPUT" 2>/dev/null || { - printf "%s: %s\\n" "${0##*/}" "mail command failed" >&2 - exit 1 - } - else - printf "%s: %s\\n" "${0##*/}" "no mailer command found" >&2 + mailx "${MAILX_ARGS[@]}" -S "from=$EMAIL_FROM" -s "Mail queue" "${EMAIL_TO[@]}" <<<"$TMP_OUTPUT" 2>/dev/null || { + printf "%s: %s\\n" "${0##*/}" "mailx command failed" >&2 exit 1 - fi + } else printf "%s: %s\\n" "${0##*/}" "no recipient configured for mail delivery" >&2 exit 1 diff --git a/terraform-http-backend b/terraform-http-backend deleted file mode 100755 index 0f3578a..0000000 Binary files a/terraform-http-backend and /dev/null differ