[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH ?] gnu: Add dash.

From: Tobias Geerinckx-Rice
Subject: [PATCH ?] gnu: Add dash.
Date: Thu, 28 Jul 2016 04:03:37 +0200

* gnu/packages/dash.shm: New file.


IMO this belongs in a (new) shell.scm with fish, tcsh and zsh.
Maybe bash, too. On the other hand:

Certain shells might have an 'ecosystem' of 'packages', such as
bash-completion in bash.scm, that might justify leaving them in
their own file. I'm thinking specifically of zsh here.

I'd suggest merging them all and splitting out if and when needed,
but prefer to ask the wisdom of the list before doing that tedious

Kind regards,


 gnu/packages/dash.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 gnu/packages/dash.scm

diff --git a/gnu/packages/dash.scm b/gnu/packages/dash.scm
new file mode 100644
index 0000000..017e81c
--- /dev/null
+++ b/gnu/packages/dash.scm
@@ -0,0 +1,60 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Tobias Geerinckx-Rice <address@hidden>
+;;; This file is part of GNU Guix.
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; GNU General Public License for more details.
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <>.
+(define-module (gnu packages dash)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages libedit))
+(define-public dash
+  (package
+    (name "dash")
+    (version "0.5.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "";
+                           name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "17328wd9n5krr5wd37smrk0y7fdf8aa3hmhm02br5mqpq0a3nycj"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; The man page hails from BSD, where (d)ash is the default shell.
+           ;; This isn't the case on Guix or indeed most other GNU systems.
+           (substitute* "src/dash.1"
+             (("the standard command interpreter for the system")
+              "a command interpreter based on the original Bourne shell"))
+           #t))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("libedit" ,libedit)))
+    (arguments
+     `(#:configure-flags '("--with-libedit")))
+    (home-page "";)
+    (synopsis "POSIX-compliant shell optimised for size")
+    (description
+     "dash is a POSIX-compliant @command{/bin/sh} implementation that aims to 
+as small as possible, often without sacrificing speed.  It is significantly
+faster than the GNU Bourne-Again Shell (@command{bash}) at most tasks.  dash is
+a direct descendant of NetBSD's Almquist Shell (@command{ash}).")
+    (license (list bsd-3
+                   gpl2+))))    ; mksignames.c

reply via email to

[Prev in Thread] Current Thread [Next in Thread]