From e93cee56264c7e1d07b422d66430d996fd8b0c40 Mon Sep 17 00:00:00 2001 From: Robert Günzler Date: Thu, 3 Dec 2020 12:55:19 +0100 Subject: Add bin/pomo; simplistic pomodoro timer --- bin/pomo | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100755 bin/pomo (limited to 'bin/pomo') diff --git a/bin/pomo b/bin/pomo new file mode 100755 index 0000000..b14ffed --- /dev/null +++ b/bin/pomo @@ -0,0 +1,52 @@ +#!/bin/sh + +WORK=15m +BREAK=3m +PAUSE=5m + +WORK_BELL=/home/robert/Music/sounds/215415__unfa__ping.wav +BREAK_BELL=/home/robert/Music/sounds/320655__rhodesmas__level-up-01.wav +PAUSE_BELL=/home/robert/Music/sounds/32304__acclivity__shipsbell.wav +END_BELL=/home/robert/Music/sounds/105228__chimerical__old-fashion-radio-jingle-2.wav + +log() { + echo "$@" + notify-send -a pomo "pomo" "$@" +} +play() { + pw-play --media-role=Event --volume=0.4 "$@" +} +nag() { + swaynag --type=warning --dismiss-button=ok "$@" +} + +_work() { + log "[$(date +%k:%M:%S)] work for ${WORK}" + play "${WORK_BELL}" 1>&2 2>/dev/null & + sleep "${WORK}" +} + +_break() { + log "[$(date +%k:%M:%S)] take a ${BREAK} break" + play "${BREAK_BELL}" 1>&2 2>/dev/null & + nag -m "pomo: take a ${BREAK} break" + sleep "${BREAK}" +} + +_pause() { + log "[$(date +%k:%M:%S)] pause for ${PAUSE}" + play "${PAUSE_BELL}" 1>&2 2>/dev/null & + nag -m "pomo: pause for ${PAUSE}" + sleep "${PAUSE}" +} + +trap '{ printf "\n"; log "[$(date +%k:%M:%S)] goodbye"; exit 0; }' INT + +while true; do + _work && _break + _work && _break + _work && _break + _work && _pause + aplay "${END_BELL}" 1>&2 2>/dev/null & + nag -m "[$(date +%k:%M:%S)] the end" +done -- cgit 1.4.1