From 4b9726a57da890f36337fec045248812933d63ec Mon Sep 17 00:00:00 2001
---
gnu/packages/shells.scm | 66 ++++++++++++++++++++---------------------
1 file changed, 33 insertions(+), 33 deletions(-)
Toggle diff (95 lines)
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 08a475dfe1..324bdf513d 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -754,48 +755,47 @@ Shell (pdksh).")
(define-public oil
(package
(name "oil")
- (version "0.7.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://www.oilshell.org/download/oil-"
- version ".tar.xz"))
- (sha256
- (base32
- "12c9s462879adb6mwd3fqafk0dnqsm16s18rhym6cmzfzy8v8zm3"))))
+ (version "0.8.pre4") ; "Despite the pre4 version qualifier, this is by far
+ ; the best Oil release ever… I may change the version
+ ; numbering scheme in the near future to reflect this."
+ ; - upstream on whether to ship pre4 in Guix
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.oilshell.org/download/oil-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0m2p8p5hi2r14xx9pphsa0ar56kqsa33gr2w2blc3jx07aqhjpzy"))))
(build-system gnu-build-system)
(arguments
- '(#:tests? #f ; the tests are not distributed in the tarballs
- #:strip-binaries? #f ; the binaries cannot be stripped
+ `(#:strip-binaries? #f ; Strip breaks the binary.
#: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)
+ (setenv "CC" "gcc")
+ (substitute* "configure"
+ ((" cc ") " gcc "))
(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
+ (invoke
+ "./configure"
+ (string-append "--prefix=" out)
+ "--with-readline"))))
+ (replace 'check ; The tests are not distributed in the tarballs but
+ ; upstream recommends running this smoke test.
(lambda _
- ;; The build scripts don't create the destination directory.
- (mkdir-p (string-append (assoc-ref %outputs "out") "/bin")))))))
- (inputs
+ (let* ((oil "_bin/oil.ovm"))
+ (invoke/quiet oil "osh" "-c" "echo hi")
+ (invoke/quiet oil "osh" "-n" "configure")))))))
+ (native-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))))
+ (home-page "https://www.oilshell.org")
+ (synopsis "A Unix shell")
+ (description "Oil is a Unix shell and programming language. It's our upgrade
+path from Bash.")
+ (license (list license:psfl ; Tarball vendors python2.7
+ license:asl2.0))))
(define-public gash
(package
--
2.17.1