aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNigko Yerden <nigko.yerden@gmail.com>2025-04-08 11:30:24 +0500
committerLudovic Courtès <ludo@gnu.org>2025-04-08 17:06:58 +0200
commitaccb75c33bc1446551bc039a030c5c00757d0351 (patch)
tree94b39e40d01a4e31467324c314d11a9d9f777c67
parent1187020066079bfd2ccdecc18625c97a5b0baf04 (diff)
downloadguix-accb75c33bc1446551bc039a030c5c00757d0351.tar.gz
guix-accb75c33bc1446551bc039a030c5c00757d0351.zip
services: tlp: Make destructor return #f on success.
* gnu/services/pm.scm (tlp-shepherd-service): Make destructor return #f on success. Destructor "should return #f if it is now possible again to start the service at a later point" (shepherd manual). Change-Id: Ic0d21d32af158da1ae940d9c32c05a3471767764 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/services/pm.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/services/pm.scm b/gnu/services/pm.scm
index e022437748..12f05b4b33 100644
--- a/gnu/services/pm.scm
+++ b/gnu/services/pm.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
;;; Copyright © 2024 Ian Eure <ian@retrospec.tv>
+;;; Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -459,15 +460,17 @@ performance, balance_performance, default, balance_power and power."))
(define (tlp-shepherd-service config)
(let* ((tlp-bin (file-append
(tlp-configuration-tlp config) "/sbin/tlp"))
- (tlp-action (lambda args
+ (tlp-action (lambda (return-value-on-success . args)
#~(lambda _
- (zero? (system* #$tlp-bin #$@args))))))
+ (if (zero? (system* #$tlp-bin #$@args))
+ #$return-value-on-success
+ (not #$return-value-on-success))))))
(list (shepherd-service
(documentation "Run TLP script.")
(provision '(tlp))
(requirement '(user-processes))
- (start (tlp-action "init" "start"))
- (stop (tlp-action "init" "stop"))))))
+ (start (tlp-action #t "init" "start"))
+ (stop (tlp-action #f "init" "stop"))))))
(define (tlp-activation config)
(let* ((config-str (with-output-to-string