help-guix
[Top][All Lists]
Advanced

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

Re: Seeking advice: preparing releases on GuixSD.


From: ng0
Subject: Re: Seeking advice: preparing releases on GuixSD.
Date: Sat, 24 Dec 2016 22:26:12 +0000

Ricardo Wurmus <address@hidden> writes:

> ng0 <address@hidden> writes:
>
>> my previous releases of gnurl (https://gnunet.org/gnurl) have
>> been tested on Gentoo and GuixSD and prepared to release only on
>> Gentoo, copied back to GuixSD and finished up on that GuixSD
>> system.

> Attached is the patch to add roffit.
>
> From af81a0a3c796af583ec88dd4bc8d2e8a742c58fa Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <address@hidden>
> Date: Sat, 24 Dec 2016 11:12:45 +0100
> Subject: [PATCH] gnu: Add roffit.
>
> * gnu/packages/groff.scm (roffit): New variable.
> ---
>  gnu/packages/groff.scm | 41 +++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm
> index 93d0380..2509a78 100644
> --- a/gnu/packages/groff.scm
> +++ b/gnu/packages/groff.scm
> @@ -1,6 +1,7 @@
>  ;;; GNU Guix --- Functional package management for GNU
>  ;;; Copyright © 2013 Andreas Enge <address@hidden>
>  ;;; Copyright © 2014 Mark H Weaver <address@hidden>
> +;;; Copyright © 2016 Ricardo Wurmus <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -21,6 +22,7 @@
>    #:use-module (guix licenses)
>    #:use-module (guix packages)
>    #:use-module (guix download)
> +  #:use-module (guix git-download)
>    #:use-module (guix build-system gnu)
>    #:use-module (gnu packages)
>    #:use-module (gnu packages bison)
> @@ -56,3 +58,42 @@ formatted output based on formatting commands contained 
> within the text.  It
>  is usually the formatter of \"man\" documentation pages.")
>     (license gpl3+)
>     (home-page "http://www.gnu.org/software/groff/";)))
> +
> +;; There are no releases, so we take the latest commit.
> +(define-public roffit
> +  (let ((commit "e5228388e3faf2b7f1ae5bd048ad46ed565304c6")
> +        (revision "1"))
> +    (package
> +      (name "roffit")
> +      (version (string-append "0.11-" revision "." (string-take commit 9)))
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                      (url "https://github.com/bagder/roffit.git";)
> +                      (commit commit)))
> +                (file-name (string-append "roffit-" commit "-checkout"))
> +                (sha256
> +                 (base32
> +                  "1y7ndbqciy7h0khlpi1bv4v1614vhybnmm4jysj6fwxkw9cwv1nc"))))
> +      (build-system gnu-build-system)
> +      (arguments
> +       `(#:test-target "test"
> +         #:make-flags
> +         (list (string-append "INSTALLDIR="
> +                              (assoc-ref %outputs "out") "/bin"))
> +         #:phases
> +         (modify-phases %standard-phases
> +           (delete 'configure)
> +           (add-before 'install 'pre-install
> +             (lambda* (#:key outputs #:allow-other-keys)
> +               (mkdir-p (string-append (assoc-ref outputs "out")
> +                                       "/bin"))
> +               #t)))))

My only difference is in the (arguments), where I do:

      (arguments
       `(#:test-target "test"
         #:phases
         (modify-phases %standard-phases
           (replace 'configure ; No configure phase
             (lambda* (#:key outputs #:allow-other-keys)
               (let* ((out  (assoc-ref outputs "out"))
                      (bin  (string-append out "/bin/")))
                 (substitute* "Makefile"
                   (("/usr/local/bin")
                    bin))
               (mkdir-p bin))))
           (add-after 'install 'wrap-programs
             (lambda* (#:key outputs #:allow-other-keys)
               ;; Make sure all executables in "bin" find the Perl modules
               ;; provided by this package at runtime.
               (let* ((out  (assoc-ref outputs "out"))
                      (bin  (string-append out "/bin/"))
                      (path (getenv "PERL5LIB")))
                 (for-each (lambda (file)
                             (wrap-program file
                               `("PERL5LIB" ":" prefix (,path))))
                           (find-files bin "\\.*$"))
                 #t))))))


Your synopsis and description are better than mine, otherwise the
packages are almost identical.

> +      (inputs
> +       `(("perl" ,perl)))
> +      (home-page "https://daniel.haxx.se/projects/roffit/";)
> +      (synopsis "Convert nroff files to HTML")
> +      (description
> +       "Roffit is a program that reads an nroff file and outputs an HTML 
> file.
> +It is typically used to display man pages on a Web site.")
> +      (license expat))))
> -- 
> 2.10.2
>
>
> -- 
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
> http://elephly.net

-- 
♥Ⓐ  ng0
PGP keys and more: https://n0is.noblogs.org/ http://ng0.chaosnet.org



reply via email to

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