guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 1d59c3d231ef34ef54412ab518f0ab0e8fd3b375
Author: Efraim Flashner <[email protected]>
AuthorDate: Thu Feb 26 17:28:11 2026 +0200

    gnu: zoxide: Rewrite install-more phase.
    
    * gnu/packages/rust-apps.scm (zoxide)[arguments]: Rewrite 'install-more
    to use the copy-build-system 'install phase.
    
    Change-Id: I642a48ee5524442adcaea90fbc664a1e17e57571
---
 gnu/packages/rust-apps.scm | 54 +++++++++++++++++-----------------------------
 1 file changed, 20 insertions(+), 34 deletions(-)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 329c45eb7d..86cc648c2c 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -4406,6 +4406,11 @@ It supports taxonomies, shortcodes, and live reloading.")
     (build-system cargo-build-system)
     (arguments
      (list #:install-source? #f
+           #:imported-modules (append %copy-build-system-modules
+                                      %cargo-build-system-modules)
+           #:modules '((guix build cargo-build-system)
+                       ((guix build copy-build-system) #:prefix copy:)
+                       (guix build utils))
            #:phases
            #~(modify-phases %standard-phases
                (add-after 'unpack 'patch-references
@@ -4416,40 +4421,21 @@ It supports taxonomies, shortcodes, and live 
reloading.")
                      (("(zoxide = \")(zoxide)" _ prefix suffix)
                       (string-append prefix #$output "/bin/" suffix)))))
                (add-after 'install 'install-more
-                 (lambda _
-                   (let* ((out #$output)
-                          (share (string-append out "/share"))
-                          (man1 (string-append share "/man/man1"))
-                          (bash-completions-dir
-                           (string-append
-                            out "/share/bash-completion/completions"))
-                          (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"))
-                          (nushell-completions-dir
-                           (string-append share "/nushell/vendor/autoload")))
-                     ;; The completions are generated in build.rs.
-                     (mkdir-p man1)
-                     (mkdir-p bash-completions-dir)
-                     (mkdir-p elvish-completions-dir)
-                     (mkdir-p nushell-completions-dir)
-                     (for-each (lambda (file)
-                                 (install-file file man1))
-                               (find-files "man/man1"))
-                     (copy-file "contrib/completions/zoxide.bash"
-                                (string-append bash-completions-dir "/zoxide"))
-                     (install-file "contrib/completions/zoxide.fish"
-                                   fish-completions-dir)
-                     (install-file "contrib/completions/_zoxide"
-                                   zsh-completions-dir)
-                     (copy-file "contrib/completions/zoxide.elv"
-                                (string-append elvish-completions-dir
-                                               "/zoxide"))
-                     (install-file "contrib/completions/zoxide.nu"
-                                   nushell-completions-dir)))))))
+                 (lambda args
+                   (apply (assoc-ref copy:%standard-phases 'install)
+                          #:install-plan
+                          '(("contrib/completions/zoxide.bash"
+                             "share/bash-completion/completions/zoxide")
+                            ("contrib/completions/zoxide.elv"
+                             "share/elvish/lib/zoxide")
+                            ("contrib/completions/zoxide.fish"
+                             "share/fish/vendor_completions.d/")
+                            ("contrib/completions/zoxide.nu"
+                             "share/nushell/vendor/autoload/zoxide")
+                            ("contrib/completions/_zoxide"
+                             "share/zsh/site-functions/")
+                            ("man/man1" "share/man/"))
+                          args))))))
     (inputs (cargo-inputs 'zoxide))
     (home-page "https://github.com/ajeetdsouza/zoxide/";)
     (synopsis "Fast way to navigate your file system")

Reply via email to