Compare commits

..

No commits in common. "2b755477262130be9a57e9b5cb9a892995ba5cc1" and "8a3939bf111575f1ad3c1853fa47a6fbad157249" have entirely different histories.

View file

@ -6,14 +6,6 @@
A cron/at-like interface for systemd user timers. Create, manage, and monitor scheduled jobs without writing unit files by hand. A cron/at-like interface for systemd user timers. Create, manage, and monitor scheduled jobs without writing unit files by hand.
Because you want to use systemd, but miss the ease of ~crontab~`systab -e`!
- 🚀 create one-time or recurring jobs with one command
- ✏️ use your $EDITOR to manage `systab` timers in a single line format
- 📊 quickly see the status of your timers
- 📋 access the logs of timers
- 💪 enable and disable timers
<table> <table>
<tr> <tr>
<td width="33%"><img src="demo/quickstart.gif" alt="Quick start demo"></td> <td width="33%"><img src="demo/quickstart.gif" alt="Quick start demo"></td>
@ -201,17 +193,8 @@ After cloning, enable the pre-commit hook (runs ShellCheck + tests):
git config core.hooksPath .githooks git config core.hooksPath .githooks
``` ```
## FAQ ## FAQ
Why this wrapper?
I was missing the simplicity of `at` and `crontab` commands. `systemd` has many features and benefits that those tools do not have, but convenience for the user to set a quick timer is not one of them.
**What's the difference between `-c` and `-f`?** **What's the difference between `-c` and `-f`?**
`-f` validates that the file exists and is executable at creation time, catching typos and permission issues early. With `-c`, errors only surface when systemd runs the job later (visible via `systab -L`). Under the hood, both produce the same `ExecStart` line. `-f` validates that the file exists and is executable at creation time, catching typos and permission issues early. With `-c`, errors only surface when systemd runs the job later (visible via `systab -L`). Under the hood, both produce the same `ExecStart` line.
**Why did you mess with the crontab format?**
Originally I meant to keep it the same, but there isn't a one-to-one mapping of times supported by cron and systemd. systemd has more options. I also want the human readble strings like "in 5 minutes". Trying to force that into the crontab format with it's space delimited format meant quotes, etc. in the end I used the `|` and limit the number of fields so that the commands can also be piped.