mirror of https://codeberg.org/glenneth/stash.git
fix: Update Guix package definition for enhanced stash functionality
- Update version to 0.2.0 to reflect GNU Stow replacement features - Fix wrapper script installation and path handling - Update package description to mention enhanced functionality - Ensure proper installation of wrapper script with GUILE_LOAD_PATH setup - Package now supports all new features: deploy mode, dot syntax, restoration The minimal-package.scm now correctly installs the enhanced stash with: - Deploy mode (-d) for GNU Stow-like functionality - Intelligent stashing and restoration capabilities - Proper module loading via wrapper script
This commit is contained in:
parent
7d971080a3
commit
e6456b95ca
|
|
@ -8,38 +8,38 @@
|
||||||
(define-public stash
|
(define-public stash
|
||||||
(package
|
(package
|
||||||
(name "stash")
|
(name "stash")
|
||||||
(version "0.1.0")
|
(version "0.2.0")
|
||||||
(source (local-file "." "stash-checkout"
|
(source (local-file "." "stash-checkout"
|
||||||
#:recursive? #t))
|
#:recursive? #t))
|
||||||
(build-system copy-build-system)
|
(build-system copy-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:install-plan
|
'(#:install-plan
|
||||||
'(("stash.scm" "share/guile/site/3.0/stash.scm")
|
'(("stash.scm" "share/guile/site/3.0/stash.scm")
|
||||||
("stash.scm" "bin/stash")
|
("stash" "bin/stash")
|
||||||
("modules/stash" "share/guile/site/3.0/stash"))
|
("modules/stash" "share/guile/site/3.0/stash"))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'install 'make-executable
|
(add-after 'install 'setup-wrapper
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(bin (string-append out "/bin"))
|
(bin (string-append out "/bin"))
|
||||||
(script (string-append bin "/stash")))
|
(wrapper (string-append bin "/stash")))
|
||||||
;; Make script executable
|
;; Make wrapper executable
|
||||||
(chmod script #o755)
|
(chmod wrapper #o755)
|
||||||
;; Add proper shebang
|
;; Update wrapper script paths
|
||||||
(substitute* script
|
(substitute* wrapper
|
||||||
((".*")
|
(("/home/glenn/Projects/Code/stash/stash")
|
||||||
(string-append
|
(string-append out "/share/guile/site/3.0/stash.scm"))
|
||||||
"#! /usr/bin/env -S guile"
|
(("/home/glenn/Projects/Code/stash")
|
||||||
" -L " out "/share/guile/site/3.0"
|
out "/share/guile/site/3.0"))
|
||||||
" -C " out "/share/guile/site/3.0"
|
|
||||||
" -e '(begin (use-modules (stash)) (main (command-line)))'"
|
|
||||||
" -s\n!#\n")))
|
|
||||||
#t))))))
|
#t))))))
|
||||||
(inputs
|
(inputs
|
||||||
(list guile-3.0))
|
(list guile-3.0))
|
||||||
(synopsis "Symlink management utility")
|
(synopsis "Enhanced GNU Stow replacement - symlink management utility")
|
||||||
(description "Stash is a command-line utility for managing symlinks.")
|
(description "Stash is a powerful command-line utility written in Guile Scheme
|
||||||
|
that serves as an enhanced replacement for GNU Stow. It provides intelligent stashing,
|
||||||
|
restoration capabilities, and GNU Stow-like deployment features for managing dotfiles
|
||||||
|
and organizing any directories through symlink management.")
|
||||||
(home-page "https://codeberg.org/glenneth/stash")
|
(home-page "https://codeberg.org/glenneth/stash")
|
||||||
(license gpl3+)))
|
(license gpl3+)))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue