aboutsummaryrefslogtreecommitdiff
path: root/guix-qa-frontpage/derivation-changes.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-qa-frontpage/derivation-changes.scm')
-rw-r--r--guix-qa-frontpage/derivation-changes.scm30
1 files changed, 20 insertions, 10 deletions
diff --git a/guix-qa-frontpage/derivation-changes.scm b/guix-qa-frontpage/derivation-changes.scm
index 6953603..cda0084 100644
--- a/guix-qa-frontpage/derivation-changes.scm
+++ b/guix-qa-frontpage/derivation-changes.scm
@@ -128,16 +128,26 @@
(cons system '())))
all-systems))
(lambda (a b)
- (< (or (list-index
- (lambda (s)
- (string=? (car a) s))
- all-systems)
- 10)
- (or (list-index
- (lambda (s)
- (string=? (car b) s))
- all-systems)
- 10)))))))
+ (let ((a-key (car a))
+ (b-key (car b)))
+ (cond
+ ((and (string? a-key)
+ (string? b-key))
+ (< (or (list-index
+ (lambda (s)
+ (string=? (car a) s))
+ all-systems)
+ 10)
+ (or (list-index
+ (lambda (s)
+ (string=? (car b) s))
+ all-systems)
+ 10)))
+ ((and (pair? a-key)
+ (pair? b-key))
+ (string<? (cdr a-key)
+ (cdr b-key)))
+ (else #f))))))))
`(,@derivation-changes
(counts . ,counts)))