diff options
Diffstat (limited to 'gnu/packages/shells.scm')
-rw-r--r-- | gnu/packages/shells.scm | 82 |
1 files changed, 51 insertions, 31 deletions
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 022287dbf5..f4a38b8779 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -3,11 +3,11 @@ ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net> ;;; Copyright © 2015 Jeff Mickey <j@codemac.net> -;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2017 ng0 <ng0@n0.is> -;;; Copyright © 2017 Leo Famulari <leo@famulari.name> +;;; Copyright © 2017, 2018 ng0 <ng0@n0.is> +;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. @@ -146,32 +146,6 @@ and syntax highlighting.") (home-page "https://fishshell.com/") (license gpl2))) -(define-public fish-guix - (package - (name "fish-guix") - (version "0.1.2.1") - (source - (origin - (method url-fetch) - (uri (string-append "https://d.n0.is/releases/fish-guix/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "0k71hcn7nr523w74jw2i68x52s9hv6vmasnvnn7yr3xxvzn4kqgf")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ; No checks. - #:make-flags (list - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure)))) ; No configure script. - (home-page "https://n0.is/s/fish-guix/") - (synopsis "Fish completions for Guix") - (description - "Fish-guix provides completions for Guix for users of the fish shell.") - (license bsd-3))) - (define-public rc (package (name "rc") @@ -599,7 +573,7 @@ The OpenBSD Korn Shell is a cleaned up and enhanced ksh.") (define-public loksh (package (name "loksh") - (version "6.1") + (version "6.2") (source (origin (method url-fetch) @@ -608,7 +582,7 @@ The OpenBSD Korn Shell is a cleaned up and enhanced ksh.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1wg7ds56yr8fgg1m149bi53bvrwccwiashmwknggza1sqgj9m2lq")))) + "16mgxby77wgjg1ybp4fb9cvi7a4a387xmfivdxnhphg0vhyr8qd3")))) (build-system gnu-build-system) (inputs `(("libbsd" ,libbsd))) @@ -670,3 +644,49 @@ Korn Shell programming language and a successor to the Public Domain Korn Shell (pdksh).") (license (list miros isc)))) ; strlcpy.c + +(define-public oil-shell + (package + (name "oil-shell") + (version "0.4.0") + (source (origin + (method url-fetch) + (uri (string-append "https://www.oilshell.org/download/oil-" + version ".tar.xz")) + (sha256 + (base32 + "0ca68n46mhibarpfinqfkim6p3xmbz5rrpl4qr3sj9y0q6wm7sa2")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; the tests are not distributed in the tarballs + #:strip-binaries? #f ; the binaries cannot be stripped + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-compiler-invocation + (lambda _ + (substitute* "configure" + ((" cc ") " gcc ")) + #t)) + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "CC" "gcc") + ;; The configure script doesn't recognize CONFIG_SHELL. + (setenv "CONFIG_SHELL" (which "sh")) + (invoke "./configure" (string-append "--prefix=" out) + "--with-readline")))) + (add-before 'install 'make-destination + (lambda _ + ;; The build scripts don't create the destination directory. + (mkdir-p (string-append (assoc-ref %outputs "out") "/bin"))))))) + (inputs + `(("readline" ,readline))) + (synopsis "Bash-compatible Unix shell") + (description "Oil is a Unix / POSIX shell, compatible with Bash. It +implements the Oil language, which is a new shell language to which Bash can be +automatically translated. The Oil language is a superset of Bash. It also +implements the OSH language, a statically-parseable language based on Bash as it +is commonly written.") + (home-page "https://www.oilshell.org/") + (license (list psfl ; The Oil sources include a patched Python 2 source tree + asl2.0)))) |