summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2024-02-19 11:44:47 +0100
committerRicardo Wurmus <rekado@elephly.net>2024-02-19 11:44:47 +0100
commit00c8a9275c67c08b6fb9058617d3ad7d55fa4fad (patch)
tree15736524504a2113f529a0709d067d0822aae688
parent9ce548a26e59d85ad9341c0212fef38392d49ff4 (diff)
downloadguix-00c8a9275c67c08b6fb9058617d3ad7d55fa4fad.tar.gz
upstream: update-package-inputs: Sort extra inputs.
Ensure that extra inputs end up in the correct order.

* guix/upstream.scm (update-package-inputs)[filtered-inputs]: Sort new list of
inputs.

Change-Id: Ia5fddd8103a33c79426995057fcce61c2e9e5a72
-rw-r--r--guix/upstream.scm28
1 files changed, 16 insertions, 12 deletions
diff --git a/guix/upstream.scm b/guix/upstream.scm
index e28ae12f3f..180ae21dcf 100644
--- a/guix/upstream.scm
+++ b/guix/upstream.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2010-2023 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
-;;; Copyright © 2019, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2019, 2022-2024 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;; Copyright © 2021, 2022 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2022 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -566,17 +566,21 @@ specified in SOURCE, an <upstream-source>."
              (properties (package-properties package))
              (ignore (or (assoc-ref properties ignore-property) '()))
              (extra (or (assoc-ref properties extra-property) '())))
-        (append (if (null? ignore)
-                    inputs
-                    (remove (lambda (input)
-                              (member (upstream-input-downstream-name input)
-                                      ignore))
-                            inputs))
-                (map (lambda (name)
-                       (upstream-input
-                        (name name)
-                        (downstream-name name)))
-                     extra)))))
+        (sort
+         (append (if (null? ignore)
+                     inputs
+                     (remove (lambda (input)
+                               (member (upstream-input-downstream-name input)
+                                       ignore))
+                             inputs))
+                 (map (lambda (name)
+                        (upstream-input
+                         (name name)
+                         (downstream-name name)))
+                      extra))
+         (lambda (a b)
+           (string-ci<? (upstream-input-downstream-name a)
+                        (upstream-input-downstream-name b)))))))
 
   (define regular-inputs
     (filtered-inputs upstream-source-regular-inputs