diff --git a/guix/scripts/style.scm b/guix/scripts/style.scm index 4b704ddfb7e..6f07f6c3b9e 100644 --- a/guix/scripts/style.scm +++ b/guix/scripts/style.scm @@ -503,13 +503,14 @@ top-level package definitions in alphabetical order. Packages which share a name are placed with versions in descending order." (define (package-fields pkg) (match pkg - ((('define-public _ expr) _ ...) + ((('define-public pkg _ ... (or ('let _ expr) expr)) _ ...) (match expr - ((or ('package _ ('name name) ('version version) _ ...) - ('package ('name name) ('version version) _ ...)) - (values name version)) - (_ (values #f #f)))) - (_ (values #f #f)))) + (((or 'package 'package/inherit) fields ...) + (let ((name (and=> (assoc-ref fields 'name) first)) + (version (and=> (assoc-ref fields 'version) first))) + (values name version))) + (_ (and (values #f #f))))) + (_ (and (values #f #f))))) (define (package>? lst1 lst2) (let-values (((name1 version1) (package-fields lst1)) diff --git a/tests/guix-style.sh b/tests/guix-style.sh index 93331394353..703e148b699 100644 --- a/tests/guix-style.sh +++ b/tests/guix-style.sh @@ -65,10 +65,16 @@ cat > "$tmpfile" <