GNU bug report logs -
#25732
SCSH
Previous Next
Reported by: ng0 <contact.ng0 <at> cryptolab.net>
Date: Tue, 14 Feb 2017 19:29:02 UTC
Severity: normal
Tags: patch
Done: Christopher Allan Webber <cwebber <at> dustycloud.org>
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 25732 in the body.
You can then email your comments to 25732 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#25732
; Package
guix-patches
.
(Tue, 14 Feb 2017 19:29:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
ng0 <contact.ng0 <at> cryptolab.net>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Tue, 14 Feb 2017 19:29:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
The following two patches add rx (a dependency of scsh) and scsh.
For what my limited testing shows, it works.
--
ng0 -- https://www.inventati.org/patternsinthechaos/
Information forwarded
to
guix-patches <at> gnu.org
:
bug#25732
; Package
guix-patches
.
(Tue, 14 Feb 2017 19:32:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 25732 <at> debbugs.gnu.org (full text, mbox):
From: ng0 <ng0 <at> libertad.pw>
* gnu/packages/shells.scm (scsh): New variable.
---
gnu/packages/shells.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index a7a7fbce5..7fe1de13e 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -37,6 +37,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages scheme)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix download)
@@ -382,3 +383,63 @@ primitives that you are used to from Bash and IPython. It works on all major
systems including Linux, Mac OSX, and Windows. Xonsh is meant for the daily
use of experts and novices alike.")
(license bsd-2)))
+
+(define-public scsh
+ (let ((commit "114432435e4eadd54334df6b37fcae505079b49f")
+ (revision "1"))
+ (package
+ (name "scsh")
+ (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scheme/scsh")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "1ghk08akiz7hff1pndi8rmgamgcrn2mv9asbss9l79d3c2iaav3q"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'replace-rx
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let* ((rx (assoc-ref inputs "rx"))
+ (rxpath (string-append rx "/share/scheme48-"
+ ,(package-version scheme48)
+ "/rx")))
+ (delete-file-recursively "rx")
+ (copy-recursively rxpath "rx"))
+ #t))
+ (add-before 'configure 'autoreconf
+ (lambda _
+ (zero? (system* "autoreconf")))))))
+ (inputs
+ `(("scheme48" ,scheme48)
+ ("rx" ,rx)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)))
+ (home-page "https://github.com/scheme/scsh")
+ (synopsis "Unix shell embedded in Scheme")
+ (description
+ "Scsh is a unix shell embedded in Scheme. What does that mean?
+Well, unix shells are powerful tools. They allow a user to concisely specify
+her commands and the communications between them (piping, redirecting, &c.).
+When she needs to do something more complex than running a set of commands
+with known inputs, however, things become complicated. General programming
+with sh can be unpleasant and error prone, to say the least.
+
+Scheme is a simple, expressive general programming language. A user with some
+taste may want to use it to wield her computing machine. For simple commands,
+however, it is not the most concise. At the scale of the command line, even the
+overhead of parentheses matters. It would be nice to use each of these languages
+where their strengths lie.
+
+Scsh is the solution. It allows the user to write commands in a language within
+Scheme that follows the unix way, but also allows her to specify more complex
+commands with the elegance of Scheme.")
+ (license bsd-3))))
--
2.11.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#25732
; Package
guix-patches
.
(Tue, 14 Feb 2017 19:32:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 25732 <at> debbugs.gnu.org (full text, mbox):
From: ng0 <ngillmann <at> runbox.com>
* gnu/packages/scheme.scm (rx): New variable.
---
gnu/packages/scheme.scm | 41 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 40 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 1210ab526..27e4eb155 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2016 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim <at> flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke <at> gnu.org>
-;;; Copyright © 2016 ng0 <ng0 <at> we.make.ritual.n0.is>
+;;; Copyright © 2016, 2017 ng0 <contact.ng0 <at> cryptolab.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -805,3 +805,42 @@ Using Scheme, a dialect of the Lisp programming language, the book explains
core computer science concepts such as abstraction in programming,
metalinguistic abstraction, recursion, interpreters, and modular programming.")
(license cc-by-sa4.0))))
+
+(define-public rx
+ (let* ((commit "d3231ad13de2b44e3ee173b1c9d09ff165e8b6d5")
+ (revision "1"))
+ (package
+ (name "rx")
+ (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scheme/rx")
+ (commit commit)))
+ (sha256
+ (base32
+ "1nmziaibgmfi346kzidj6xyad0vm7724qymbzgxvdzyrqji6v6yz"))
+ (file-name (string-append name "-" version "-checkout"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let ((share (string-append %output
+ "/share/scheme48-"
+ ,(package-version scheme48)
+ "/rx")))
+ (chdir (assoc-ref %build-inputs "source"))
+ (mkdir-p share)
+ (copy-recursively "." share)))))
+ (native-inputs
+ `(("source" ,source)
+ ("scheme48" ,scheme48)))
+ (home-page "https://github.com/scheme/rx/")
+ (synopsis "SRE String pattern-matching library for scheme48")
+ (description
+ "String pattern-matching library for scheme48 based on the SRE
+regular-expression notation.")
+ (license bsd-3))))
--
2.11.1
Added tag(s) patch.
Request was from
Christopher Allan Webber <cwebber <at> dustycloud.org>
to
control <at> debbugs.gnu.org
.
(Tue, 14 Feb 2017 19:40:01 GMT)
Full text and
rfc822 format available.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#25732
; Package
guix-patches
.
(Thu, 16 Feb 2017 21:05:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 25732 <at> debbugs.gnu.org (full text, mbox):
I got these to build fine and ran scsh. Looks good!
Should we probably rename go scheme48-rx and scheme48-scsh for
consistency in how we're packaging other projects? WDYT? At least for
scheme48-rx... maybe one could argue that scsh is more standalone,
though I think even that should be scheme48-scsh since maybe guile-scsh
will have a resurgence.
With that change I think it's okay to merge and push these up.
Reply sent
to
Christopher Allan Webber <cwebber <at> dustycloud.org>
:
You have taken responsibility.
(Thu, 16 Feb 2017 22:13:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
ng0 <contact.ng0 <at> cryptolab.net>
:
bug acknowledged by developer.
(Thu, 16 Feb 2017 22:13:02 GMT)
Full text and
rfc822 format available.
Message #21 received at 25732-done <at> debbugs.gnu.org (full text, mbox):
Okay, some tweaks made:
- Updated the description to be shorter and less opinionated.
- Renamed rx to scheme48-rx.
- Switched from copying in rx library to scsh entirely to making it
a symlink.
With those changes done, pushed!
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 17 Mar 2017 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 8 years and 98 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.