gnu: Fix current-guix.

Without this change, I get errors like:
  ERROR: In procedure string-drop:
  ERROR: Value out of range 0 to 35: 51

* gnu/packages/package-management.scm (current-guix): Pass exactly the same
  path to git-predicate and local-file, to ensure that the select? function is
  compatible.
This commit is contained in:
Christopher Baines 2017-08-29 07:41:30 +01:00
parent fa9f5222a9
commit a9d5e4bed1
No known key found for this signature in database
GPG key ID: 5E28A33B0B84F577

View file

@ -312,10 +312,11 @@ (define (wrong-extension? file)
#t)))
(define-public current-guix
(let ((select? (delay (or (git-predicate
(string-append (current-source-directory)
"/../.."))
source-file?))))
(let* ((repository-root (canonicalize-path
(string-append (current-source-directory)
"/../..")))
(select? (delay (or (git-predicate repository-root)
source-file?))))
(lambda ()
"Return a package representing Guix built from the current source tree.
This works by adding the current source tree to the store (after filtering it
@ -323,7 +324,7 @@ (define-public current-guix
(package
(inherit guix)
(version (string-append (package-version guix) "+"))
(source (local-file "../.." "guix-current"
(source (local-file repository-root "guix-current"
#:recursive? #t
#:select? (force select?)))))))