#:use-module (gnu packages perl)
#:use-module (gnu packages curl)
#:use-module (gnu packages web)
+ #:use-module (gnu packages man)
#:use-module (gnu packages emacs)
- #:use-module (gnu packages openssl)
- #:use-module (gnu packages bdw-gc))
+ #:use-module (gnu packages bdw-gc)
+ #:use-module (gnu packages tls))
(define (boot-guile-uri arch)
"Return the URI for the bootstrap Guile tarball for ARCH."
arch "-linux"
"/20131110/guile-2.0.9.tar.xz")))
-(define-public guix-0.8.1
+(define-public guix-0.8.2
(package
(name "guix")
- (version "0.8.1")
+ (version "0.8.2")
(source (origin
(method url-fetch)
(uri (string-append "ftp://alpha.gnu.org/gnu/guix/guix-"
version ".tar.gz"))
(sha256
(base32
- "12h5ldj1yf0za6ladlr8h7nx2gqrv2dxcsiwyqayvrza93lijkf5"))))
+ "1a5gnkh17w7fgi5zy63ph64iqdvarkdqypkwgw2iifpqa6jq04zz"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list
"--localstatedir=/var"
"--sysconfdir=/etc"
+ (string-append "--with-bash-completion-dir="
+ (assoc-ref %outputs "out")
+ "/etc/bash_completion.d")
(string-append "--with-libgcrypt-prefix="
(assoc-ref %build-inputs
"libgcrypt")))
- #:phases (alist-cons-before
- 'configure 'copy-bootstrap-guile
- (lambda* (#:key system inputs #:allow-other-keys)
- (define (boot-guile-version arch)
- (if (string=? "armhf" arch)
- "2.0.11"
- "2.0.9"))
+ #:phases (modify-phases %standard-phases
+ (add-before
+ 'configure 'copy-bootstrap-guile
+ (lambda* (#:key system inputs #:allow-other-keys)
+ (define (boot-guile-version arch)
+ (if (string=? "armhf" arch)
+ "2.0.11"
+ "2.0.9"))
- (define (copy arch)
- (let ((guile (assoc-ref inputs
- (string-append "boot-guile/"
- arch)))
- (target (string-append "gnu/packages/bootstrap/"
- arch "-linux/"
- "/guile-"
- (boot-guile-version arch)
- ".tar.xz")))
- (copy-file guile target)))
+ (define (copy arch)
+ (let ((guile (assoc-ref inputs
+ (string-append "boot-guile/"
+ arch)))
+ (target (string-append "gnu/packages/bootstrap/"
+ arch "-linux/"
+ "/guile-"
+ (boot-guile-version arch)
+ ".tar.xz")))
+ (copy-file guile target)))
- (copy "i686")
- (copy "x86_64")
- (copy "mips64el")
- (copy "armhf")
- #t)
- %standard-phases)))
+ (copy "i686")
+ (copy "x86_64")
+ (copy "mips64el")
+ (copy "armhf")
+ #t))
+ (add-after
+ 'install 'wrap-program
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Make sure the 'guix' command finds GnuTLS and
+ ;; Guile-JSON automatically.
+ (let* ((out (assoc-ref outputs "out"))
+ (json (assoc-ref inputs "guile-json"))
+ (gnutls (assoc-ref inputs "gnutls"))
+ (path (string-append
+ json "/share/guile/site/2.0:"
+ gnutls "/share/guile/site/2.0")))
+ (wrap-program (string-append out "/bin/guix")
+ `("GUILE_LOAD_PATH" ":" prefix (,path))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,path)))
+ #t))))))
(native-inputs `(("pkg-config" ,pkg-config)
("emacs" ,emacs-no-x))) ;for guix.el
(inputs
(base32
"1mi3brl7l58aww34rawhvja84xc7l1b4hmwdmc36fp9q9mfx0lg5"))))))
(propagated-inputs
- `(("guile-json" ,guile-json)
+ `(("gnutls" ,gnutls) ;for 'guix download' & co.
+ ("guile-json" ,guile-json)
("geiser" ,geiser))) ;for guix.el
(home-page "http://www.gnu.org/software/guix")
;;
;; Note: use a short commit id; when using the long one, the limit on socket
;; file names is exceeded while running the tests.
- (let ((commit "0b13161"))
- (package (inherit guix-0.8.1)
- (version (string-append "0.8.1." commit))
+ (let ((commit "dd91141"))
+ (package (inherit guix-0.8.2)
+ (version (string-append "0.8.2." commit))
(source (origin
(method git-fetch)
(uri (git-reference
(commit commit)))
(sha256
(base32
- "0h9yyfxs14di858hb9ypjvdjryv8nzll6f9vxkggcy40iyhp65sh"))))
+ "05rgz1kkxjsc07asvwrf6gpjc8blpvs5ipbby4kvjjq6j0g2bgxa"))
+ (file-name (string-append "guix-" version "-checkout"))))
(arguments
- (substitute-keyword-arguments (package-arguments guix-0.8.1)
+ (substitute-keyword-arguments (package-arguments guix-0.8.2)
((#:phases phases)
- `(alist-cons-after
- 'unpack 'bootstrap
- (lambda _
- ;; Make sure 'msgmerge' can modify the PO files.
- (for-each (lambda (po)
- (chmod po #o666))
- (find-files "." "\\.po$"))
+ `(modify-phases ,phases
+ (add-after
+ 'unpack 'bootstrap
+ (lambda _
+ ;; Make sure 'msgmerge' can modify the PO files.
+ (for-each (lambda (po)
+ (chmod po #o666))
+ (find-files "." "\\.po$"))
- (zero? (system* "sh" "bootstrap")))
- ,phases))))
+ (zero? (system* "sh" "bootstrap"))))
+ (add-after
+ 'unpack 'disable-container-tests
+ ;; XXX FIXME: These tests fail within the build container.
+ (lambda _
+ (substitute* "tests/syscalls.scm"
+ (("^\\(test-assert \"(clone|setns|pivot-root)\"" all)
+ (string-append "(test-skip 1)\n" all)))
+ (substitute* "tests/containers.scm"
+ (("^\\(test-assert" all)
+ (string-append "(test-skip 1)\n" all)))
+ #t))))))
(native-inputs
`(("autoconf" ,(autoconf-wrapper))
("automake" ,automake)
("gettext" ,gnu-gettext)
("texinfo" ,texinfo)
("graphviz" ,graphviz)
- ,@(package-native-inputs guix-0.8.1))))))
+ ("help2man" ,help2man)
+ ,@(package-native-inputs guix-0.8.2))))))
(define-public guix guix-devel)