[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
03/03: Revert "services: syslog: Simplify 'start' method."
From: |
guix-commits |
Subject: |
03/03: Revert "services: syslog: Simplify 'start' method." |
Date: |
Thu, 7 May 2020 06:55:30 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit 5aa4d2dcf2f4f8786358feb45338893ed08a4cd9
Author: Ludovic Courtès <address@hidden>
AuthorDate: Thu May 7 12:45:43 2020 +0200
Revert "services: syslog: Simplify 'start' method."
This reverts commit 4c0cc7bed3de2c0e2d3a6e95b88693941e839eec.
Fixes <https://bugs.gnu.org/41116>.
Reported by Alex Sassmannshausen <address@hidden>.
The problem is that reconfiguring on a system running Shepherd < 0.8.0
would lead to an error, due to #:file-creation-mask not being supported.
The error is rather harmless: it prevents service upgrade but the system
itself is upgraded.
We can reinstate that commit eventually, once #:file-creation-mask has
become widespread.
---
gnu/services/base.scm | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index a031ccc..b14bbcc 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1316,13 +1316,17 @@ Service Switch}, for an example."
(documentation "Run the syslog daemon (syslogd).")
(provision '(syslogd))
(requirement '(user-processes))
- (start #~(make-forkexec-constructor
- (list #$(syslog-configuration-syslogd config)
- "--rcfile"
- #$(syslog-configuration-config-file config))
- ;; Set the umask such that file permissions are #o640.
- #:file-creation-mask #o137
- #:pid-file "/var/run/syslog.pid"))
+ (start #~(let ((spawn (make-forkexec-constructor
+ (list #$(syslog-configuration-syslogd config)
+ "--rcfile"
+ #$(syslog-configuration-config-file config))
+ #:pid-file "/var/run/syslog.pid")))
+ (lambda ()
+ ;; Set the umask such that file permissions are #o640.
+ (let ((mask (umask #o137))
+ (pid (spawn)))
+ (umask mask)
+ pid))))
(stop #~(make-kill-destructor))))))
;; Snippet adapted from the GNU inetutils manual.