diff options
Diffstat (limited to 'etc/guix-daemon.service.in')
| -rw-r--r-- | etc/guix-daemon.service.in | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/etc/guix-daemon.service.in b/etc/guix-daemon.service.in index 17b54eaeb0..9dbc3b5678 100644 --- a/etc/guix-daemon.service.in +++ b/etc/guix-daemon.service.in @@ -9,10 +9,16 @@ Description=Build daemon for GNU Guix ExecStart=@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon \ --build-users-group=guixbuild --discover=no Environment='GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8 -RemainAfterExit=yes StandardOutput=syslog StandardError=syslog +# Work around a nasty systemd ‘feature’ that kills the entire process tree +# (including the daemon!) if any child, such as cc1plus, runs out of memory. +OOMPolicy=continue + +# Despite the name, this is rate-limited: a broken daemon will eventually fail. +Restart=always + # See <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00608.html>. # Some package builds (for example, go@1.8.1) may require even more than # 1024 tasks. |
