diff options
-rw-r--r-- | doc/guix.texi | 4 | ||||
-rw-r--r-- | guix/scripts/size.scm | 22 |
2 files changed, 23 insertions, 3 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 8c51db8c0c..a512f7dda9 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4184,6 +4184,10 @@ The available options are: @table @option +@item --substitute-urls=@var{urls} +Use substitute information from @var{urls}. +@xref{client-substitute-urls, the same option for @code{guix build}}. + @item --map-file=@var{file} Write to @var{file} a graphical map of disk usage as a PNG file. diff --git a/guix/scripts/size.scm b/guix/scripts/size.scm index 1aa4d78dcb..92625d8a90 100644 --- a/guix/scripts/size.scm +++ b/guix/scripts/size.scm @@ -231,9 +231,12 @@ the name of a PNG file." (display (_ "Usage: guix size [OPTION]... PACKAGE Report the size of PACKAGE and its dependencies.\n")) (display (_ " - -m, --map-file=FILE write to FILE a graphical map of disk usage")) + --substitute-urls=URLS + fetch substitute from URLS if they are authorized")) (display (_ " -s, --system=SYSTEM consider packages for SYSTEM--e.g., \"i686-linux\"")) + (display (_ " + -m, --map-file=FILE write to FILE a graphical map of disk usage")) (newline) (display (_ " -h, --help display this help and exit")) @@ -248,6 +251,13 @@ Report the size of PACKAGE and its dependencies.\n")) (lambda (opt name arg result) (alist-cons 'system arg (alist-delete 'system result eq?)))) + (option '("substitute-urls") #t #f + (lambda (opt name arg result . rest) + (apply values + (alist-cons 'substitute-urls + (string-tokenize arg) + (alist-delete 'substitute-urls result)) + rest))) (option '(#\m "map-file") #t #f (lambda (opt name arg result) (alist-cons 'map-file arg result))) @@ -260,7 +270,8 @@ Report the size of PACKAGE and its dependencies.\n")) (show-version-and-exit "guix size"))))) (define %default-options - `((system . ,(%current-system)))) + `((system . ,(%current-system)) + (substitute-urls . ,%default-substitute-urls))) ;;; @@ -275,13 +286,18 @@ Report the size of PACKAGE and its dependencies.\n")) (_ #f)) opts)) (map-file (assoc-ref opts 'map-file)) - (system (assoc-ref opts 'system))) + (system (assoc-ref opts 'system)) + (urls (assoc-ref opts 'substitute-urls))) (match files (() (leave (_ "missing store item argument\n"))) ((file) (leave-on-EPIPE (with-store store + (set-build-options store + #:use-substitutes? #t + #:substitute-urls urls) + (run-with-store store (mlet* %store-monad ((item (ensure-store-item file)) (profile (store-profile item))) |