diff options
author | Luke Smith <luke@lukesmith.xyz> | 2020-02-09 08:57:52 -0500 |
---|---|---|
committer | Luke Smith <luke@lukesmith.xyz> | 2020-02-09 08:57:52 -0500 |
commit | 4cb726546f679bdbab95a7e81937fe6d278578c0 (patch) | |
tree | a9dfd9c46424c01b01bba3cfbf8653c4855c20cb /bin | |
parent | 39a8fb3f46b910e6822fc2e46571706eaf38722b (diff) |
cron fixes and simplifications
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/mailsync | 16 | ||||
-rwxr-xr-x | bin/mw | 2 |
2 files changed, 10 insertions, 8 deletions
diff --git a/bin/mailsync b/bin/mailsync index 2d82690..419848d 100755 --- a/bin/mailsync +++ b/bin/mailsync @@ -1,12 +1,6 @@ -#!/usr/bin/env sh +#!/bin/sh # Sync mail and give notification if there is new mail. -export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin -DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus -export DBUS_SESSION_BUS_ADDRESS -export DISPLAY=:0.0 -[ -d "$HOME/.local/share/password-store" ] && export PASSWORD_STORE_DIR="$HOME/.local/share/password-store" - # Run only if user logged in (prevent cron errors) pgrep -u "${USER:=$LOGNAME}" >/dev/null || { echo "$USER not logged in; sync will not run."; exit ;} # Run only if not already running in other instance @@ -16,6 +10,14 @@ pgrep -x mbsync >/dev/null && { echo "mbsync is already running." ; exit ;} ping -q -c 1 1.1.1.1 > /dev/null || { echo "No internet connection detected."; exit ;} command -v notify-send >/dev/null || echo "Note that \`libnotify\` or \`libnotify-send\` should be installed for pop-up mail notifications with this script." +# Required to display notifications if run as a cronjob: +DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus +export DISPLAY=:0.0 + +# For individual configurations: +[ -d "$HOME/.local/share/password-store" ] && export PASSWORD_STORE_DIR="$HOME/.local/share/password-store" +pgrep i3blocks >/dev/null && STATUSBAR="i3blocks" || STATUSBAR="dwmblocks" + # Settings are different for MacOS (Darwin) systems. if [ "$(uname)" = "Darwin" ]; then notify() { osascript -e "display notification \"$2 in $1\" with title \"You've got Mail\" subtitle \"Account: $account\"" && sleep 2 ;} @@ -290,7 +290,7 @@ choosecron() { ! pgrep cron >/dev/null && echo "No cron manager running. Install read -r minnum printf "\033[0m" done - (crontab -l; echo "*/$minnum * * * * export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus; export DISPLAY=:0; . \$HOME/.profile; $(type mailsync | cut -d' ' -f3)") | crontab - && + (crontab -l; echo "*/$minnum * * * * $(type mailsync | cut -d' ' -f3)") | crontab - && echo "Cronjob added. Mail will sync every $minnum minutes. Be sure you have your cron manager running." fi ;} |