guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/2] gnu: Add stfl.


From: Marius Bakke
Subject: Re: [PATCH 1/2] gnu: Add stfl.
Date: Thu, 10 Nov 2016 15:22:54 +0000
User-agent: Notmuch/0.23.1 (https://notmuchmail.org) Emacs/25.1.1 (x86_64-unknown-linux-gnu)

Efraim Flashner <address@hidden> writes:

> * gnu/packages/ncurses.scm (stfl): New variable.
> ---
>  gnu/packages/ncurses.scm | 50 
> +++++++++++++++++++++++++++++++++++++++++++++++-
>  1 file changed, 49 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm
> index 9799167..468cd99 100644
> --- a/gnu/packages/ncurses.scm
> +++ b/gnu/packages/ncurses.scm
> @@ -3,6 +3,7 @@
>  ;;; Copyright © 2014 Mark H Weaver <address@hidden>
>  ;;; Copyright © 2015 Leo Famulari <address@hidden>
>  ;;; Copyright © 2016 ng0 <address@hidden>
> +;;; Copyright © 2016 Efraim Flashner <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -26,7 +27,8 @@
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system perl)
>    #:use-module (gnu packages)
> -  #:use-module (gnu packages perl))
> +  #:use-module (gnu packages perl)
> +  #:use-module (gnu packages swig))
>  
>  (define-public ncurses
>    (let ((patch-makefile-phase
> @@ -207,3 +209,49 @@ curses widgets, such as dialog boxes.")
>       "@code{Curses} is the interface between Perl and the curses library
>  of your system.")
>      (license (package-license perl))))
> +
> +(define-public stfl
> +  (package
> +    (name "stfl")
> +    (version "0.24")
> +    (source
> +      (origin
> +        (method url-fetch)
> +        (uri (string-append "http://www.clifford.at/stfl/stfl-";
> +                            version ".tar.gz"))
> +        (sha256
> +         (base32
> +          "1460d5lc780p3q38l3wc9jfr2a7zlyrcra0li65aynj738cam9yl"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     '(#:tests? #f ; no test target
> +       #:phases
> +       (modify-phases %standard-phases
> +         ;; there is no configure script so we get to do it manually
> +         (replace 'configure
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (substitute* "Makefile"
> +               (("\\$\\(prefix\\)") (assoc-ref outputs "out")))
> +             (setenv "DESTDIR" "")
> +             #t))

Would it work to simply (setenv "prefix" out), instead of substituting?
Not sure which approach I prefer however, so feel free to disregard this.

> +         ;; in our ncurses, the headers are in /include
> +         (add-before 'build 'patch-ncursesw
> +           (lambda _
> +             (substitute* '("stfl_internals.h")
> +               (("ncursesw/") ""))
> +             #t))
> +         (add-after 'install 'install-missing-symlink
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let* ((out (assoc-ref outputs "out"))
> +                    (lib (string-append out "/lib")))
> +               ;; newsbeuter looks for libstfl.so.0

Perhaps just say "some programs" instead of newsbeuter, since they are
mostly unrelated.

> +               (symlink "libstfl.so"
> +                        (string-append lib "/libstfl.so.0"))))))))
> +    (inputs
> +     `(("ncurses" ,ncurses)
> +       ("swig" ,swig)))

Swig should probably be a native-input. Other than that LGTM!

> +    (home-page "http://www.clifford.at/stfl/";)
> +    (synopsis "Structured terminal forms library")
> +    (description "Stfl is a library which implements a curses-based widget
> +set for text terminals.")
> +    (license lgpl3+)))
> -- 
> 2.10.2

Attachment: signature.asc
Description: PGP signature


reply via email to

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