Max P. 10060db8cb
All checks were successful
Auto Changelog & Release / detect-version-change (push) Successful in 3s
Auto Changelog & Release / changelog-only (push) Has been skipped
Auto Changelog & Release / release (push) Successful in 6s
chore(version): add initial version file
- Introduces a VERSION file to track the project's version
- Sets the initial version to 0.1.0
2025-05-21 03:48:39 +02:00
2025-05-21 03:09:40 +02:00

systemd-timer

Ein einfaches CLI-Tool zum schnellen Erzeugen von systemd .service und .timer Units – als Ersatz oder moderne Ergänzung zu klassischen cron-Jobs.


🚀 Features

  • Erzeugt .service und .timer Dateien per CLI
  • Unterstützt --user Timer (für ~/.config/systemd/user/)
  • Optionales Logging (StandardOutput/StandardError)
  • Unterstützt:
    • --calendar
    • --exec
    • --after
    • --environment
    • --output
    • --dry-run
  • Getestet und typisiert mit Deno + Cliffy

🛠️ Installation

git clone https://git.0xmax42.io/maxp/systemd-timer.git
cd systemd-timer
deno task build

# Binary liegt nun unter ./systemd-timer
./systemd-timer --help

📦 Beispiel

./systemd-timer create \
  --exec "/usr/local/bin/backup.sh" \
  --calendar "Mon..Fri 02:00" \
  --description "Backup Job" \
  --user \
  --logfile "/var/log/backup.log"

Erzeugt:

  • ~/.config/systemd/user/backup.service
  • ~/.config/systemd/user/backup.timer

Anschließend aktivieren:

systemctl --user daemon-reload
systemctl --user enable --now backup.timer

🧪 Tests ausführen

deno task test

🧰 Entwickeln

deno task start create --exec "/bin/true" --calendar "daily" --dry-run

🔒 Rechte / Flags

Das Tool benötigt beim Ausführen bzw. Kompilieren:

  • --allow-env (für $HOME)
  • --allow-write (zum Schreiben von .service/.timer)

Beim Entwickeln wird meist -A (allow all) verwendet.


📝 Lizenz

MIT License

Description
A simple CLI tool for quickly generating systemd .service and .timer units — as a replacement or modern supplement to classic cron jobs.
Readme MIT 221 KiB
2025-06-15 16:52:14 +02:00
Languages
TypeScript 86%
Shell 14%