summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-11-21 12:14:04 +0100
committerLudovic Courtès <ludo@gnu.org>2020-11-21 12:39:14 +0100
commite79ecff045094a75226439a6284306475a2f907e (patch)
treed1f06c70eaf447932837fb138bad208b6821a747
parentac435c14a627f620bf6719efbdd214a12b33716e (diff)
downloadguix-e79ecff045094a75226439a6284306475a2f907e.tar.gz
transformations: Show '--help-transform' only where applicable.
Fixes <https://bugs.gnu.org/44773>.
Reported by Florian Pelz <pelzflorian@pelzflorian.de>.

This fixes a regression introduced in
6701f64f7329cdbeda70bcaf38523c9098e5a938.

* guix/transformations.scm (%transformation-options): Add
"--help-transform".
(show-transformation-options-help): Rename to...
(show-transformation-options-help/detailed): ... this.
(show-transformation-options-help): New public procedure.
* guix/scripts/build.scm (show-build-options-help): Remove
"--help-transform".
(%standard-build-options): Likewise.
(show-help): Call 'show-transformation-options-help'.
* guix/scripts/environment.scm (show-help): Likewise.
* guix/scripts/graph.scm (show-help): Likewise.
* guix/scripts/install.scm (show-help): Likewise.
* guix/scripts/pack.scm (show-help): Likewise.
* guix/scripts/package.scm (show-help): Likewise.
* guix/scripts/upgrade.scm (show-help): Likewise.
-rw-r--r--guix/scripts/build.scm13
-rw-r--r--guix/scripts/environment.scm2
-rw-r--r--guix/scripts/graph.scm5
-rw-r--r--guix/scripts/install.scm2
-rw-r--r--guix/scripts/pack.scm2
-rw-r--r--guix/scripts/package.scm2
-rw-r--r--guix/scripts/upgrade.scm2
-rw-r--r--guix/transformations.scm16
8 files changed, 31 insertions, 13 deletions
diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm
index cc020632af..a959cb827d 100644
--- a/guix/scripts/build.scm
+++ b/guix/scripts/build.scm
@@ -182,8 +182,6 @@ options handled by 'set-build-options-from-command-line', and listed in
   (display (G_ "
   -M, --max-jobs=N       allow at most N build jobs"))
   (display (G_ "
-      --help-transform   list package transformation options not shown here"))
-  (display (G_ "
       --debug=LEVEL      produce debugging output at LEVEL")))
 
 (define (set-build-options-from-command-line store opts)
@@ -319,14 +317,7 @@ use '--no-offload' instead~%")))
                     (if c
                         (apply values (alist-cons 'max-jobs c result) rest)
                         (leave (G_ "not a number: '~a' option argument: ~a~%")
-                               name arg)))))
-        (option '("help-transform") #f #f
-                (lambda _
-                  (format #t
-                          (G_ "Available package transformation options:~%"))
-                  (show-transformation-options-help)
-                  (newline)
-                  (exit 0)))))
+                               name arg)))))))
 
 
 ;;;
@@ -383,6 +374,8 @@ Build the given PACKAGE-OR-DERIVATION and return their output paths.\n"))
   (newline)
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index 2328df98b8..e435bf0ce4 100644
--- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -180,6 +180,8 @@ COMMAND or an interactive shell in that environment.\n"))
   (newline)
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/scripts/graph.scm b/guix/scripts/graph.scm
index 6874904deb..ddfc6ba497 100644
--- a/guix/scripts/graph.scm
+++ b/guix/scripts/graph.scm
@@ -35,7 +35,8 @@
   #:use-module ((guix diagnostics)
                 #:select (location-file formatted-message))
   #:use-module ((guix transformations)
-                #:select (options->transformation
+                #:select (show-transformation-options-help
+                          options->transformation
                           %transformation-options))
   #:use-module ((guix scripts build)
                 #:select (%standard-build-options))
@@ -546,6 +547,8 @@ Emit a representation of the dependency graph of PACKAGE...\n"))
   (display (G_ "
   -L, --load-path=DIR    prepend DIR to the package module search path"))
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/scripts/install.scm b/guix/scripts/install.scm
index 82f5875dd1..63e625f266 100644
--- a/guix/scripts/install.scm
+++ b/guix/scripts/install.scm
@@ -39,6 +39,8 @@ This is an alias for 'guix package -i'.\n"))
   (newline)
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
index 0b29997200..ba9a6dc1b2 100644
--- a/guix/scripts/pack.scm
+++ b/guix/scripts/pack.scm
@@ -1067,6 +1067,8 @@ last resort for relocation."
 Create a bundle of PACKAGE.\n"))
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -f, --format=FORMAT    build a pack in the given FORMAT"))
   (display (G_ "
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index eb2e67a0de..6faf2adb7a 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -398,6 +398,8 @@ Install, remove, or upgrade packages in a single transaction.\n"))
   (newline)
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/scripts/upgrade.scm b/guix/scripts/upgrade.scm
index 1ee8937acf..dcbcb2ab09 100644
--- a/guix/scripts/upgrade.scm
+++ b/guix/scripts/upgrade.scm
@@ -42,6 +42,8 @@ This is an alias for 'guix package -u'.\n"))
   (newline)
   (show-build-options-help)
   (newline)
+  (show-transformation-options-help)
+  (newline)
   (display (G_ "
   -h, --help             display this help and exit"))
   (display (G_ "
diff --git a/guix/transformations.scm b/guix/transformations.scm
index 30142dd059..d49041cf59 100644
--- a/guix/transformations.scm
+++ b/guix/transformations.scm
@@ -508,9 +508,17 @@ to the same package but with #:strip-binaries? #f in its 'arguments' field."
           (option '("with-debug-info") #t #f
                   (parser 'with-debug-info))
           (option '("without-tests") #t #f
-                  (parser 'without-tests)))))
+                  (parser 'without-tests))
 
-(define (show-transformation-options-help)
+          (option '("help-transform") #f #f
+                  (lambda _
+                    (format #t
+                            (G_ "Available package transformation options:~%"))
+                    (show-transformation-options-help/detailed)
+                    (newline)
+                    (exit 0))))))
+
+(define (show-transformation-options-help/detailed)
   (display (G_ "
       --with-source=[PACKAGE=]SOURCE
                          use SOURCE when building the corresponding package"))
@@ -539,6 +547,10 @@ to the same package but with #:strip-binaries? #f in its 'arguments' field."
       --without-tests=PACKAGE
                          build PACKAGE without running its tests")))
 
+(define (show-transformation-options-help)
+  "Show basic help for package transformation options."
+  (display (G_ "
+      --help-transform   list package transformation options not shown here")))
 
 (define (options->transformation opts)
   "Return a procedure that, when passed an object to build (package,