GNU bug report logs -
#30221
[PATCH] gnu: Add the Oil shell.
Previous Next
Reported by: Leo Famulari <leo <at> famulari.name>
Date: Tue, 23 Jan 2018 00:30:02 UTC
Severity: normal
Tags: patch
Done: Leo Famulari <leo <at> famulari.name>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 30221 in the body.
You can then email your comments to 30221 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#30221
; Package
guix-patches
.
(Tue, 23 Jan 2018 00:30:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Leo Famulari <leo <at> famulari.name>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Tue, 23 Jan 2018 00:30:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/shells.scm (oil-shell): New variable.
---
gnu/local.mk | 1 +
gnu/packages/patches/oil-shell-compiler-name.patch | 18 +++++++++
gnu/packages/shells.scm | 44 +++++++++++++++++++++-
3 files changed, 62 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/oil-shell-compiler-name.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 240554fe4..6e3421b04 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -938,6 +938,7 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
+ %D%/packages/patches/oil-shell-compiler-name.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
diff --git a/gnu/packages/patches/oil-shell-compiler-name.patch b/gnu/packages/patches/oil-shell-compiler-name.patch
new file mode 100644
index 000000000..bd55b5c32
--- /dev/null
+++ b/gnu/packages/patches/oil-shell-compiler-name.patch
@@ -0,0 +1,18 @@
+diff --git a/configure b/configure
+index c3c11d3..327f40b 100755
+--- a/configure
++++ b/configure
+@@ -85,11 +85,11 @@ done
+ # No output file, no logging, no stderr.
+ # TODO: Maybe send stdout/stderr to config.log?
+ cc_quiet() {
+- cc "$@" -o /dev/null >/dev/null 2>&1
++ gcc "$@" -o /dev/null >/dev/null 2>&1
+ }
+
+ cc_or_die() {
+- if ! cc "$@" >$TMP/cc.log 2>&1; then
++ if ! gcc "$@" >$TMP/cc.log 2>&1; then
+ log "Error running 'cc $@':"
+ cat $TMP/cc.log
+ die "Fatal compile error running feature test"
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index e374c41b9..2d6ad2486 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2016 Stefan Reichör <stefan <at> xsteve.at>
;;; Copyright © 2017 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2017, 2018 ng0 <ng0 <at> n0.is>
-;;; Copyright © 2017 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2017, 2018 Leo Famulari <leo <at> famulari.name>
;;; Copyright © 2017 Arun Isaac <arunisaac <at> systemreboot.net>
;;;
;;; This file is part of GNU Guix.
@@ -644,3 +644,45 @@ 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.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.oilshell.org/download/oil-"
+ version ".tar.xz"))
+ (patches (search-patches "oil-shell-compiler-name.patch"))
+ (sha256
+ (base32
+ "0j4fyn6xjaf29xqyzm09ahazmq9v1hkxv4kps7n3lzdfr32a4kk9"))))
+ (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
+ (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))))
--
2.16.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#30221
; Package
guix-patches
.
(Tue, 23 Jan 2018 03:36:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 30221 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Mon, 22 Jan 2018 19:28:37 -0500
Leo Famulari <leo <at> famulari.name> wrote:
> * gnu/packages/shells.scm (oil-shell): New variable.
> ---
> gnu/local.mk | 1 +
> gnu/packages/patches/oil-shell-compiler-name.patch | 18 +++++++++
> gnu/packages/shells.scm | 44 +++++++++++++++++++++-
> 3 files changed, 62 insertions(+), 1 deletion(-)
> create mode 100644 gnu/packages/patches/oil-shell-compiler-name.patch
>
...
> + (license (list psfl ; The Oil sources include a patched Python 2 source tree
^
Really!? :/
Does it build its own python then too?
Otherwise looks good to me.
`~Eric
[Message part 2 (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#30221
; Package
guix-patches
.
(Tue, 23 Jan 2018 19:37:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 30221 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Mon, Jan 22, 2018 at 04:36:02PM -0600, Eric Bavier wrote:
> On Mon, 22 Jan 2018 19:28:37 -0500
> Leo Famulari <leo <at> famulari.name> wrote:
> > + (license (list psfl ; The Oil sources include a patched Python 2 source tree
> ^
> Really!? :/
>
> Does it build its own python then too?
I'm not sure but I think... not exactly. I think it's a modified and
reduced CPython VM:
http://www.oilshell.org/blog/2017/04/25.html
[signature.asc (application/pgp-signature, inline)]
Reply sent
to
Leo Famulari <leo <at> famulari.name>
:
You have taken responsibility.
(Tue, 23 Jan 2018 21:00:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Leo Famulari <leo <at> famulari.name>
:
bug acknowledged by developer.
(Tue, 23 Jan 2018 21:00:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 30221-done <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I used (substitute*) instead of a patch file and pushed as
18d9d22adc2050717c97a1d35ce876ee93395d76.
[signature.asc (application/pgp-signature, inline)]
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 21 Feb 2018 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 7 years and 116 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.