summary refs log tree commit diff
path: root/guix/scripts/package.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/scripts/package.scm')
-rw-r--r--guix/scripts/package.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index b545ea2672..23f1597856 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -381,6 +381,10 @@ Install, remove, or upgrade packages in a single transaction.\n"))
   -e, --install-from-expression=EXP
                          install the package EXP evaluates to"))
   (display (_ "
+  -f, --install-from-file=FILE
+                         install the package that the code within FILE
+                         evaluates to"))
+  (display (_ "
   -r, --remove PACKAGE ...
                          remove PACKAGEs"))
   (display (_ "
@@ -454,6 +458,12 @@ Install, remove, or upgrade packages in a single transaction.\n"))
                    (values (alist-cons 'install (read/eval-package-expression arg)
                                        result)
                            #f)))
+         (option '(#\f "install-from-file") #t #f
+                 (lambda (opt name arg result arg-handler)
+                   (values (alist-cons 'install
+                                       (load* arg (make-user-module '()))
+                                       result)
+                           #f)))
          (option '(#\r "remove") #f #t
                  (lambda (opt name arg result arg-handler)
                    (let arg-handler ((arg arg) (result result))