[PATCH] gnu: Add oils-for-unix.

  • Open
  • quality assurance status badge
Details
2 participants
  • Abhishek Cherath
  • Felix Gruber
Owner
unassigned
Submitted by
Felix Gruber
Severity
normal
F
F
Felix Gruber wrote on 24 Mar 10:49 +0100
(address . guix-patches@gnu.org)(name . Felix Gruber)(address . felgru@posteo.net)
2a2a91336b8999ab67273b6d99b5d68dc7495ac9.1711273771.git.felgru@posteo.net
* gnu/packages/shells.scm (oils-for-unix): New variable.

Change-Id: I0422f9d9ab6b67fb0b07d5b8bfcca7b1524baf26
---
gnu/packages/shells.scm | 49 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 48 insertions(+), 1 deletion(-)

Toggle diff (71 lines)
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index ae4e73956e..eb74a3f124 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -18,7 +18,7 @@
;;; Copyright © 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
-;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
+;;; Copyright © 2021, 2022, 2023, 2024 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 David Pflug <david@pflug.io>
@@ -906,6 +906,53 @@ (define-public oil
(license (list license:psfl ; tarball includes python2.7
license:asl2.0))))
+(define-public oils-for-unix
+ (package
+ (name "oils-for-unix")
+ (version "0.21.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.oilshell.org/download/oils-for-unix-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0kk5mj6x2d6h1d22ig2c3nwsqj995hw1ijab3h11px09mwmq9jw3"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-cc
+ (lambda _
+ (substitute* "configure"
+ (("cc ") "gcc "))))
+ ;; The 'configure' script is not generated by autoconf and can't
+ ;; cope with "SHELL=" and "CONFIG_SHELL=" arguments, so we
+ ;; pass a custom set of arguments.
+ (replace 'configure
+ (lambda* (#:key build inputs outputs #:allow-other-keys)
+ (let ((bash (which "bash"))
+ (out (assoc-ref outputs "out")))
+ (invoke bash "./configure"
+ (string-append "--prefix=" out)
+ (string-append "--build=" build)
+ "--with-readline"))))
+ (replace 'build
+ (lambda _
+ (invoke "_build/oils.sh")))
+ (replace 'install
+ (lambda _
+ (invoke "./install"))))))
+ (inputs
+ (list readline))
+ (home-page "https://www.oilshell.org/")
+ (synopsis "Programming language and Bash-compatible Unix shell")
+ (description "Oils contains two shells. The Bash-compatible OSH
+and YSH, which is incompatible with Bash scripts as it tries to
+modernize the shell syntax by adding features known from scripting
+languages like Python or Ruby.")
+ (license license:asl2.0)))
+
(define-public gash
(package
(name "gash")

base-commit: 28bc0e870b4d48b8e3e773382bb0e999df2e3611
--
2.43.0
A
A
Abhishek Cherath wrote on 25 Mar 00:16 +0100
Regarding generated files
(address . 69973@debbugs.gnu.org)
87y1a76x04.fsf@quic.us
Hello,

Thanks for packaging this! build works, but it's using the pre-generated
_gen folder right? shouldn't this be building that using guix's mypy and
such?

(Any case, thanks for the patch, I've applied it locally)

Yours sincerely,
Abhishek Cherath.
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 69973@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 69973
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch