diff options
Diffstat (limited to 'gnu/packages/shellutils.scm')
| -rw-r--r-- | gnu/packages/shellutils.scm | 103 |
1 files changed, 95 insertions, 8 deletions
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm index f7542ea759b..6630332692d 100644 --- a/gnu/packages/shellutils.scm +++ b/gnu/packages/shellutils.scm | |||
| @@ -5,6 +5,7 @@ | |||
| 5 | ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> | 5 | ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> |
| 6 | ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | 6 | ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> |
| 7 | ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> | 7 | ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> |
| 8 | ;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca> | ||
| 8 | ;;; | 9 | ;;; |
| 9 | ;;; This file is part of GNU Guix. | 10 | ;;; This file is part of GNU Guix. |
| 10 | ;;; | 11 | ;;; |
| @@ -22,21 +23,107 @@ | |||
| 22 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | 23 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
| 23 | 24 | ||
| 24 | (define-module (gnu packages shellutils) | 25 | (define-module (gnu packages shellutils) |
| 25 | #:use-module (gnu packages base) | ||
| 26 | #:use-module (gnu packages golang) | ||
| 27 | #:use-module (gnu packages python) | ||
| 28 | #:use-module ((guix licenses) #:prefix license:) | 26 | #:use-module ((guix licenses) #:prefix license:) |
| 27 | #:use-module (guix utils) | ||
| 29 | #:use-module (guix packages) | 28 | #:use-module (guix packages) |
| 30 | #:use-module (guix download) | 29 | #:use-module (guix download) |
| 31 | #:use-module (guix git-download) | 30 | #:use-module (guix git-download) |
| 31 | #:use-module (guix build-system gnu) | ||
| 32 | #:use-module (guix build-system go) | ||
| 33 | #:use-module (guix build-system python) | ||
| 32 | #:use-module (gnu packages autotools) | 34 | #:use-module (gnu packages autotools) |
| 35 | #:use-module (gnu packages base) | ||
| 36 | #:use-module (gnu packages golang) | ||
| 33 | #:use-module (gnu packages ncurses) | 37 | #:use-module (gnu packages ncurses) |
| 34 | #:use-module (gnu packages readline) | ||
| 35 | #:use-module (gnu packages pkg-config) | 38 | #:use-module (gnu packages pkg-config) |
| 36 | #:use-module (guix utils) | 39 | #:use-module (gnu packages python) |
| 37 | #:use-module (guix build-system gnu) | 40 | #:use-module (gnu packages readline) |
| 38 | #:use-module (guix build-system go) | 41 | #:use-module (gnu packages ruby) |
| 39 | #:use-module (guix build-system python)) | 42 | #:use-module (gnu packages shells) |
| 43 | #:use-module (gnu packages tmux)) | ||
| 44 | |||
| 45 | (define-public zsh-autosuggestions | ||
| 46 | (package | ||
| 47 | (name "zsh-autosuggestions") | ||
| 48 | (version "0.6.3") | ||
| 49 | (source (origin | ||
| 50 | (method git-fetch) | ||
| 51 | (uri (git-reference | ||
| 52 | (url "https://github.com/zsh-users/zsh-autosuggestions.git") | ||
| 53 | (commit (string-append "v" version)))) | ||
| 54 | (file-name (git-file-name name version)) | ||
| 55 | (sha256 | ||
| 56 | (base32 | ||
| 57 | "1h8h2mz9wpjpymgl2p7pc146c1jgb3dggpvzwm9ln3in336wl95c")))) | ||
| 58 | (build-system gnu-build-system) | ||
| 59 | (native-inputs | ||
| 60 | `(("ruby" ,ruby) | ||
| 61 | ("ruby-byebug" ,ruby-byebug) | ||
| 62 | ("ruby-pry" ,ruby-pry) | ||
| 63 | ("ruby-rspec" ,ruby-rspec) | ||
| 64 | ("ruby-rspec-wait" ,ruby-rspec-wait) | ||
| 65 | ("tmux" ,tmux) | ||
| 66 | ("zsh" ,zsh))) | ||
| 67 | (arguments | ||
| 68 | '(#:phases | ||
| 69 | (modify-phases %standard-phases | ||
| 70 | (delete 'configure) | ||
| 71 | (replace 'check ; Tests use ruby's bundler; instead execute rspec directly. | ||
| 72 | (lambda _ | ||
| 73 | (setenv "TMUX_TMPDIR" (getenv "TMPDIR")) | ||
| 74 | (setenv "SHELL" (which "zsh")) | ||
| 75 | (invoke "rspec"))) | ||
| 76 | (replace 'install | ||
| 77 | (lambda* (#:key outputs #:allow-other-keys) | ||
| 78 | (let* ((out (assoc-ref outputs "out")) | ||
| 79 | (zsh-plugins | ||
| 80 | (string-append out "/share/zsh/plugins/zsh-autosuggestions"))) | ||
| 81 | (invoke "make" "all") | ||
| 82 | (install-file "zsh-autosuggestions.zsh" zsh-plugins) | ||
| 83 | #t)))))) | ||
| 84 | (home-page "https://github.com/zsh-users/zsh-autosuggestions") | ||
| 85 | (synopsis "Fish-like autosuggestions for zsh") | ||
| 86 | (description | ||
| 87 | "Fish-like fast/unobtrusive autosuggestions for zsh. It suggests commands | ||
| 88 | as you type.") | ||
| 89 | (license license:expat))) | ||
| 90 | |||
| 91 | (define-public sh-z | ||
| 92 | (package | ||
| 93 | (name "sh-z") | ||
| 94 | (version "1.11") | ||
| 95 | (source (origin | ||
| 96 | (method git-fetch) | ||
| 97 | (uri (git-reference | ||
| 98 | (url "https://github.com/rupa/z.git") | ||
| 99 | (commit (string-append "v" version)))) | ||
| 100 | (file-name (git-file-name name version)) | ||
| 101 | (sha256 | ||
| 102 | (base32 | ||
| 103 | "13zbgkj6y0qhvn5jpkrqbd4jjxjr789k228iwma5hjfh1nx7ghyb")))) | ||
| 104 | (build-system gnu-build-system) | ||
| 105 | (arguments | ||
| 106 | `(#:tests? #f ; No tests provided | ||
| 107 | #:phases | ||
| 108 | (modify-phases %standard-phases | ||
| 109 | (delete 'configure) | ||
| 110 | (delete 'build) | ||
| 111 | (replace 'install | ||
| 112 | (lambda* (#:key outputs #:allow-other-keys) | ||
| 113 | (let* ((out (assoc-ref outputs "out")) | ||
| 114 | (man (string-append out "/share/man/man1")) | ||
| 115 | (bin (string-append out "/bin"))) | ||
| 116 | (install-file "z.sh" bin) | ||
| 117 | (chmod (string-append bin "/z.sh") #o755) | ||
| 118 | (install-file "z.1" man) | ||
| 119 | #t)))))) | ||
| 120 | (synopsis "Jump about directories") | ||
| 121 | (description | ||
| 122 | "Tracks your most used directories, based on ``frecency''. After a short | ||
| 123 | learning phase, z will take you to the most ``frecent'' directory that matches | ||
| 124 | all of the regexes given on the command line in order.") | ||
| 125 | (home-page "https://github.com/rupa/z") | ||
| 126 | (license license:expat))) | ||
| 40 | 127 | ||
| 41 | (define-public envstore | 128 | (define-public envstore |
| 42 | (package | 129 | (package |
