summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/shepherd-herd-status-sorted.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/shepherd-herd-status-sorted.patch')
-rw-r--r--gnu/packages/patches/shepherd-herd-status-sorted.patch79
1 files changed, 0 insertions, 79 deletions
diff --git a/gnu/packages/patches/shepherd-herd-status-sorted.patch b/gnu/packages/patches/shepherd-herd-status-sorted.patch
deleted file mode 100644
index c6b9d870eb..0000000000
--- a/gnu/packages/patches/shepherd-herd-status-sorted.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From cc9564586729a5bb90dd5d2722b543fdde9ab821 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
-Date: Sun, 4 Feb 2018 21:56:36 +0100
-Subject: [PATCH] herd: 'herd status' now sorts the result.
-
-Partly fixes <https://bugs.gnu.org/30299>.
-Reported by Mark H Weaver <mhw@netris.org>.
-
-Previously 'tests/basic.sh' could occasionally fail on:
-
- test "`$herd status`" == "$pristine_status"
-
-because the order of stopped services were not always the same. Indeed,
-those services come from 'service-list' on the shepherd side, which uses
-'hash-fold' to traverse the service hash table, and the traversal order
-of 'hash-fold' is undefined.
-
-* modules/shepherd/scripts/herd.scm (display-status-summary)[service<?]:
-New procedure.
-[display-services]: Call 'sort' and use the above.
----
- modules/shepherd/scripts/herd.scm | 8 ++++++--
- modules/shepherd/service.scm | 5 +++--
- 2 files changed, 9 insertions(+), 4 deletions(-)
-
-diff --git a/modules/shepherd/scripts/herd.scm b/modules/shepherd/scripts/herd.scm
-index ebcd1e1..697446c 100644
---- a/modules/shepherd/scripts/herd.scm
-+++ b/modules/shepherd/scripts/herd.scm
-@@ -1,5 +1,5 @@
- ;; herd.scm -- The program to herd the Shepherd.
--;; Copyright (C) 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
-+;; Copyright (C) 2013, 2014, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
- ;; Copyright (C) 2002, 2003 Wolfgang Jährling <wolfgang@pro-linux.de>
- ;;
- ;; This file is part of the GNU Shepherd.
-@@ -46,13 +46,17 @@ of pairs."
-
- (define (display-status-summary services)
- "Display a summary of the status of all of SERVICES."
-+ (define (service<? service1 service2)
-+ (string<? (symbol->string (service-canonical-name service1))
-+ (symbol->string (service-canonical-name service2))))
-+
- (define (display-services header bullet services)
- (unless (null? services)
- (display header)
- (for-each (lambda (service)
- (format #t " ~a ~a~%" bullet
- (service-canonical-name service)))
-- services)))
-+ (sort services service<?)))) ;get deterministic output
- (call-with-values
- (lambda ()
- (partition (match-lambda
-diff --git a/modules/shepherd/service.scm b/modules/shepherd/service.scm
-index 0ad28a0..83600e4 100644
---- a/modules/shepherd/service.scm
-+++ b/modules/shepherd/service.scm
-@@ -1,5 +1,5 @@
- ;; service.scm -- Representation of services.
--;; Copyright (C) 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-+;; Copyright (C) 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
- ;; Copyright (C) 2002, 2003 Wolfgang Järling <wolfgang@pro-linux.de>
- ;; Copyright (C) 2014 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
- ;; Copyright (C) 2016 Alex Kost <alezost@gmail.com>
-@@ -949,7 +949,8 @@ Return #f if service is not found."
- %services))
-
- (define (service-list)
-- "Return the list of services currently defined."
-+ "Return the list of services currently defined. Note: The order of the list
-+returned in unspecified."
- (hash-fold (lambda (name services result)
- (let ((service (lookup-canonical-service name services)))
- (if service
---
-2.16.1
-