[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Shepherd timers
From: |
Felix Lechner |
Subject: |
Re: Shepherd timers |
Date: |
Sun, 14 Apr 2024 12:47:15 -0700 |
Hi Ludo'
On Wed, Apr 10 2024, Ludovic Courtès wrote:
> Could you share this service or at least the (calendar-event …) bit?
It was my error. The iota in
(calendar-event #:minutes '(iota 12 3 5))
should not have been quoted. The service definition was part of the
message to which you responded. [1] My apologies.
> Feedback & suggestions welcome!
As a feature request, it would be nice to run timers as users other than
root.
The situation is somewhat aggravated because 'runuser' is not being
built or shipped in 'util-linux' in order to avoid a dependency on
linux-pam. The natural replacement su from the same package, which does
nearly the same thing except it is setuid root, can only be found---as a
working program---in the non-reproducible path /run/setuid-programs/su.
The only other way may be to resort to the fork/wait functionality in
GNU Guile.
* * *
To encourage adoption of these timers among Guix user, I'll also share
some of my timers:
Btrbk Snapshot [2]
Mdadm Resync service [3]
Guix Garbage Collector service [4]
Debbugs Config Sync service [5]
Debbugs Bug Data Sync service [6]
Borg Backup service [7]
A variation of the Mdadm Resync service should probably run on all Guix
systems. It prevents bitrot on MD arrays from cosmic rays or heat by
writing good copies of all sectors to all array elements once a month.
The Borg Backup service currently requires a modified version of Guix to
find SSH. Alternatives are the environment variable BORG_RSH or the
command line variable --rsh, but I believe our version should be
modified to find ssh for automated use.
Kind regards
Felix
[1] https://lists.gnu.org/archive/html/guix-devel/2024-03/msg00256.html
[2]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L664-L714
[3]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L716-L755
[4]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L757-L778
[5]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L780-L827
[6]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L829-L956
[7]
https://codeberg.org/lechner/system-config/src/commit/db9edb46caf36fe15bc6f8abc5d1df184b6d5c5f/host/wallace-server/operating-system.scm#L556-L662