unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#66171] [PATCH] gnu: git: Install shell completions.
@ 2023-09-23 19:43 Liliana Marie Prikler
  2023-09-23 19:43 ` [bug#66171] [PATCH v3] gnu: git: Install zsh completions and git-prompt Liliana Marie Prikler
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Liliana Marie Prikler @ 2023-09-23 19:43 UTC (permalink / raw)
  To: 66171

* gnu/packages/version-control.scm (git)[outputs]: Add “completion”.
[#:phases]: Add ‘install-completion’.
---
 gnu/packages/version-control.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 9716a6f27a..54b2ed74fb 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -303,6 +303,7 @@ (define-public git
                "credential-netrc"       ; git-credential-netrc
                "credential-libsecret"   ; git-credential-libsecret
                "subtree"                ; git-subtree
+               "completion"             ; git-completion and git-prompt
                "gui"))                  ; gitk, git gui
     (arguments
      `(#:make-flags `("V=1"             ;more verbose compilation
@@ -482,6 +483,20 @@ (define-public git
                              (string-append subtree "/bin"))
                (install-file "contrib/subtree/git-subtree.1"
                              (string-append subtree "/share/man/man1")))))
+         (add-after 'install 'install-completion
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((completion (assoc-ref outputs "completion")))
+               (define (install-as file storename)
+                 (let ((storename (string-append completion storename)))
+                   (mkdir-p (dirname storename))
+                   (copy-file file storename)))
+               (with-directory-excursion "contrib/completion"
+                 (for-each (cut apply install-as <>)
+                           `(("git-prompt.sh" "/bin/git-prompt")
+                             ("git-completion.bash"
+                              "/share/bash-completion/completions/_git")
+                             ("git-completion.zsh"
+                              "/share/zsh/site-functions/_git")))))))
          (add-after 'install 'restore-sample-hooks-shebang
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))

base-commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
prerequisite-patch-id: ee5d7299c5790d77e0d409f34165063fcff10a8b
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-10-10  3:34 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-23 19:43 [bug#66171] [PATCH] gnu: git: Install shell completions Liliana Marie Prikler
2023-09-23 19:43 ` [bug#66171] [PATCH v3] gnu: git: Install zsh completions and git-prompt Liliana Marie Prikler
2023-10-02  3:34   ` Maxim Cournoyer
2023-10-02  4:30     ` Liliana Marie Prikler
2023-10-02  9:12       ` Efraim Flashner
2023-10-04  0:35         ` Maxim Cournoyer
2023-10-10  3:33   ` bug#66171: " Maxim Cournoyer
2023-09-23 19:43 ` [bug#66171] [PATCH v2] gnu: git: Install shell completions Liliana Marie Prikler
2023-09-25 17:51   ` [bug#66171] [PATCH] " Maxim Cournoyer
2023-09-25 18:41     ` Liliana Marie Prikler
2023-09-26 16:36       ` Maxim Cournoyer
2023-09-28 14:41       ` Efraim Flashner
2023-09-25 11:12 ` Simon Tournier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).