diff options
author | Ludovic Courtès <ludo@gnu.org> | 2012-11-19 23:51:08 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2012-11-19 23:53:32 +0100 |
commit | 5075e28305e633837c214706dd09d3db3ec75eb1 (patch) | |
tree | 63901a4cb1568191486c68cfc791626ff6aae816 | |
parent | ef1ee6b2213d0a9a6ead79c8c9aba1d94e1e42fa (diff) | |
download | guix-5075e28305e633837c214706dd09d3db3ec75eb1.tar.gz |
guix-package: Extract version strings when installing a direct store path.
* guix-package.in (guix-package)[process-actions]: Extract the version string from store paths. * tests/guix-package.sh: Adjust accordingly.
-rw-r--r-- | guix-package.in | 7 | ||||
-rw-r--r-- | tests/guix-package.sh | 11 |
2 files changed, 12 insertions, 6 deletions
diff --git a/guix-package.in b/guix-package.in index c0b5cea2da..dab58719c3 100644 --- a/guix-package.in +++ b/guix-package.in @@ -338,8 +338,11 @@ Report bugs to: ~a.~%") "@PACKAGE_BUGREPORT@")) (install* (append (filter-map (match-lambda (('install . (? store-path? path)) - `(,(store-path-package-name path) - #f #f ,path)) + (let-values (((name version) + (package-name->name+version + (store-path-package-name + path)))) + `(,name ,version #f ,path))) (_ #f)) opts) (map (lambda (tuple drv) diff --git a/tests/guix-package.sh b/tests/guix-package.sh index c47ebe6fe7..2bc8c573ec 100644 --- a/tests/guix-package.sh +++ b/tests/guix-package.sh @@ -42,12 +42,15 @@ test -f "$profile/bin/make" && test -f "$profile/bin/guile" # name and version string. installed="`guix-package -p "$profile" --list-installed | cut -f1 | xargs echo | sort`" case "x$installed" in - "guile* make*") true;; - "make* guile*") true;; - "*") false;; + "guile-bootstrap make-boot0") + true;; + "make-boot0 guile-bootstrap") + true;; + "*") + false;; esac -test "`guix-package -p "$profile" -I 'g.*e' | cut -f1`" = "guile-bootstrap-2.0" +test "`guix-package -p "$profile" -I 'g.*e' | cut -f1`" = "guile-bootstrap" # Remove a package. guix-package -b -p "$profile" -r "guile-bootstrap-2.0" |