guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

11/424: gnu: rav1e: Add shell completions.


From: guix-commits
Subject: 11/424: gnu: rav1e: Add shell completions.
Date: Sun, 10 Nov 2024 05:40:54 -0500 (EST)

efraim pushed a commit to branch rust-team
in repository guix.

commit 2d257669f5ca5b0fc7bfce9a628e3c9bf3574692
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Tue Mar 5 12:53:44 2024 +0200

    gnu: rav1e: Add shell completions.
    
    * gnu/packages/video.scm (rav1e)[arguments]: Add a phase to generate and
    install shell completions.
    
    Change-Id: Iaf90be902593f085b3aafb780cd72a75c26b2c58
---
 gnu/packages/video.scm | 35 ++++++++++++++++++++++++++++++++++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index ff5dcd8daa..c4c07aa4d9 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -6479,7 +6479,40 @@ result in several formats:
                (invoke "cargo" "cinstall" "--release"
                        ;; Only build the dynamic library.
                        "--library-type" "cdylib"
-                       (string-append "--prefix=" out))))))))
+                       (string-append "--prefix=" out)))))
+         (add-after 'install 'install-completions
+           (lambda* (#:key native-inputs outputs #:allow-other-keys)
+             (unless ,(%current-target-system)
+               (let* ((out (assoc-ref outputs "out"))
+                      (share (string-append out "/share"))
+                      (bash-completions-dir
+                        (string-append out "/etc/bash_completion.d"))
+                      (zsh-completions-dir
+                        (string-append share "/zsh/site-functions"))
+                      (fish-completions-dir
+                        (string-append share "/fish/vendor_completions.d"))
+                      (elvish-completions-dir
+                        (string-append share "/elvish/lib"))
+                      (rav1e (string-append out "/bin/rav1e"))
+                      (common-flags '("-" "-o" "-" "advanced" "--completion")))
+                 (mkdir-p bash-completions-dir)
+                 (with-output-to-file
+                   (string-append bash-completions-dir "/rav1e")
+                   (lambda _ (apply invoke rav1e (append common-flags 
'("bash")))))
+                 (mkdir-p zsh-completions-dir)
+                 ;; This one currently fails to build.
+                 ;(with-output-to-file
+                 ;  (string-append zsh-completions-dir "/_rav1e")
+                 ;  (lambda _ (apply invoke rav1e (append common-flags 
'("zsh")))))
+                 (mkdir-p fish-completions-dir)
+                 (with-output-to-file
+                   (string-append fish-completions-dir "/rav1e.fish")
+                   (lambda _ (apply invoke rav1e (append common-flags 
'("fish")))))
+                 (mkdir-p elvish-completions-dir)
+                 (with-output-to-file
+                   (string-append elvish-completions-dir "/rav1e")
+                   (lambda _
+                     (apply invoke rav1e (append common-flags 
'("elvish"))))))))))))
     (native-inputs
      (append (if (target-x86?)
                  (list nasm)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]