aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2026-09-18docs: point the Sounds section at variables that take effectDanilo M.1-3/+4
SOUND_DIR is expanded into SYS_SOUND_* before breaktimer.conf is sourced, so setting it in the config file does nothing. Name the variables that actually take effect, and correct the claim that a config syntax error aborts the start: bash reports it and carries on with the defaults.
2026-09-18docs: document breaktimer.confDanilo M.1-10/+39
The Sounds section told the reader to edit the script, which is what put a home directory in a tracked file in the first place.
2026-09-18test: cover the config file pathDanilo M.1-0/+85
Two cases carry the weight: an override takes effect, and a missing config still yields the built-in defaults. The second is what every user without a config file runs, so it is the regression worth pinning. No daemon is started. Every assertion goes through the config verb, which exits immediately, so the check is instant and cannot leave a stray process.
2026-09-18feat: add a config verb printing effective settingsDanilo M.1-1/+11
Durations were unobservable at runtime: status reports phase and seconds left, not the configuration those came from, so 'did my config take effect' could only be answered by reading the script. It also gives the config test something to assert against without running a thirty minute work block.
2026-09-18feat: read overrides from breaktimer.confDanilo M.1-0/+8
Every tunable was a variable in a tracked script, so a personal value could only live as an uncommittable edit. The repository copy and the installed copy had already drifted over three sound paths pointing into a home directory, which is the argument in one line. Bash sources files natively: no format, no parser, and a syntax error is a bash error at start rather than a silent fallback to a default.
2026-06-29Document idempotent start (noclobber PID claim) in READMEDanilo M.1-1/+4
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29Fix duplicate daemon spawn on login via atomic PID claimDanilo M.2-7/+29
Replace the check-then-write singleton guard in run_loop with an atomic noclobber PID-file claim. The old guard read the PID file then wrote it in two steps; two starts racing (e.g. a fast double-login) could both read a stale PID and spawn duplicate daemons. With noclobber only the first writer creates the file; the loser aborts, and a stale PID from a previous session is taken over rather than duplicated. Also document install (~/bin copy) and autostart in CLAUDE.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23Add GPLv2 license and per-script noticesDanilo M.4-0/+370
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23Initial commit: breaktimer break-reminder daemon with Waybar moduleDanilo M.6-0/+530
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>