Subject: Re: bug#26984: Add loksh (ported OpenBSD pdksh)

From: ng0 <[email-masked]>
Date: Thu, 18 May 2017 20:22:02 +0000

ng0 transcribed 2.8K bytes:
> The first patch adds loksh, a port of OpenBSD pdksh to Linux userland.
> Intended for musl build, but we don't have that now.
> It seems to work, I use it.

By the way, this can not be used for the test suite in graphviz.
There are many ksh implementations, and this is not the one
the tests accept. Or at least its ksh93 checks fail ;)

> -- 
> https://pragmatique.xyz
> PGP: https://people.pragmatique.xyz/ng0/

> From b72f88bfa8c3f26fcac4a0c0e9ef07a76e727fcf Mon Sep 17 00:00:00 2001
> From: ng0 <[email-masked]>
> Date: Thu, 18 May 2017 16:55:12 +0000
> Subject: [PATCH] gnu: Add loksh.
> 
> * gnu/packages/shells.scm (loksh): New variable.
> ---
>  gnu/packages/shells.scm | 37 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
> 
> diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
> index 4e684e8c8..5035c935a 100644
> --- a/gnu/packages/shells.scm
> +++ b/gnu/packages/shells.scm
> @@ -32,6 +32,7 @@
>    #:use-module (gnu packages bison)
>    #:use-module (gnu packages documentation)
>    #:use-module (gnu packages groff)
> +  #:use-module (gnu packages libbsd)
>    #:use-module (gnu packages libedit)
>    #:use-module (gnu packages ncurses)
>    #:use-module (gnu packages pcre)
> @@ -457,3 +458,39 @@ components: a process notation for running programs and setting up pipelines
>  and redirections, and a complete syscall library for low-level access to the
>  operating system.")
>        (license bsd-3))))
> +
> +(define-public loksh
> +  (package
> +    (name "loksh")
> +    (version "6.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append "https://github.com/dimkr/loksh/archive/"
> +                           version ".tar.gz"))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1wg7ds56yr8fgg1m149bi53bvrwccwiashmwknggza1sqgj9m2lq"))))
> +    (build-system gnu-build-system)
> +    (inputs
> +     `(("libbsd" ,libbsd)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (arguments
> +     `(#:tests? #f ;No tests included
> +       #:make-flags (list "CC=gcc" "HAVE_LIBBSD=1"
> +                          (string-append "DESTDIR="
> +                                         (assoc-ref %outputs "out"))
> +                          "PREFIX=")
> +       #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure)))) ;No configure script
> +    (home-page "https://github.com/dimkr/loksh")
> +    (synopsis "Port of OpenBSD pdksh to Linux")
> +    (description
> +     "loksh is a Linux port of OpenBSD's ksh (pdksh).
> +It is a small, interactive shell targeted at resource-constrained systems.")
> +    ;; The file 'LEGAL' says it is the public domain, and the 2
> +    ;; exceptions which are listed are not included in this port.
> +    (license public-domain)))
> -- 
> 2.13.0
> 

-- 
https://pragmatique.xyz
PGP: https://people.pragmatique.xyz/ng0/