self: Install shell completion files.

* guix/self.scm (miscellaneous-files): New procedure.
(whole-package): Remove #:substitute-keys, add #:miscellany.
[build]: Remove code for SUBSTITUTE-KEYS and add code to copy MISCELLANY
to OUTPUT.
(compiled-guix): Adjust call to 'whole-package'.
This commit is contained in:
Ludovic Courtès 2018-11-06 15:48:04 +01:00
parent a2f99207dd
commit e3744779aa
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 24 additions and 10 deletions

View File

@ -405,11 +405,28 @@ load path."
(apply guix-main (command-line)))) (apply guix-main (command-line))))
#:guile guile)) #:guile guile))
(define (miscellaneous-files source)
"Return data files taken from SOURCE."
(file-mapping "guix-misc"
`(("etc/bash_completion.d/guix"
,(file-append* source "/etc/completion/bash/guix"))
("etc/bash_completion.d/guix-daemon"
,(file-append* source "/etc/completion/bash/guix-daemon"))
("share/zsh/site-functions/_guix"
,(file-append* source "/etc/completion/zsh/_guix"))
("share/fish/vendor_completions.d/guix.fish"
,(file-append* source "/etc/completion/fish/guix.fish"))
("share/guix/hydra.gnu.org.pub"
,(file-append* source
"/etc/substitutes/hydra.gnu.org.pub"))
("share/guix/berlin.guixsd.org.pub"
,(file-append* source "/etc/substitutes/berlin.guixsd.org.pub")))))
(define* (whole-package name modules dependencies (define* (whole-package name modules dependencies
#:key #:key
(guile-version (effective-version)) (guile-version (effective-version))
compiled-modules compiled-modules
info daemon substitute-keys info daemon miscellany
guile guile
(command (guix-command modules (command (guix-command modules
#:dependencies dependencies #:dependencies dependencies
@ -424,6 +441,7 @@ assumed to be part of MODULES."
(with-imported-modules '((guix build utils)) (with-imported-modules '((guix build utils))
#~(begin #~(begin
(use-modules (guix build utils)) (use-modules (guix build utils))
(mkdir-p (string-append #$output "/bin")) (mkdir-p (string-append #$output "/bin"))
(symlink #$command (symlink #$command
(string-append #$output "/bin/guix")) (string-append #$output "/bin/guix"))
@ -432,13 +450,6 @@ assumed to be part of MODULES."
(symlink (string-append #$daemon "/bin/guix-daemon") (symlink (string-append #$daemon "/bin/guix-daemon")
(string-append #$output "/bin/guix-daemon"))) (string-append #$output "/bin/guix-daemon")))
(when #$substitute-keys
(mkdir-p (string-append #$output "/share/guix"))
(copy-recursively #$substitute-keys
(string-append #$output
"/share/guix")
#:log (%make-void-port "w")))
(let ((modules (string-append #$output (let ((modules (string-append #$output
"/share/guile/site/" "/share/guile/site/"
(effective-version))) (effective-version)))
@ -450,6 +461,10 @@ assumed to be part of MODULES."
(string-append #$output (string-append #$output
"/share/info")))) "/share/info"))))
(when #$miscellany
(copy-recursively #$miscellany #$output
#:log (%make-void-port "w")))
;; Object files. ;; Object files.
(when #$compiled-modules (when #$compiled-modules
(let ((modules (string-append #$output "/lib/guile/" (let ((modules (string-append #$output "/lib/guile/"
@ -675,8 +690,7 @@ assumed to be part of MODULES."
'guix-daemon) 'guix-daemon)
#:info (info-manual source) #:info (info-manual source)
#:substitute-keys (file-append* source #:miscellany (miscellaneous-files source)
"etc/substitutes")
#:guile-version guile-version))) #:guile-version guile-version)))
((= 0 pull-version) ((= 0 pull-version)
;; Legacy 'guix pull': return the .scm and .go files as one ;; Legacy 'guix pull': return the .scm and .go files as one