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: Ricardo Wurmus
Subject: Re: Seeking advice: preparing releases on GuixSD.
Date: Sun, 25 Dec 2016 13:37:01 +0100
User-agent: mu4e 0.9.16; emacs 25.1.1

ng0 <address@hidden> writes:

> Ricardo Wurmus <address@hidden> writes:
[…]
>> 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.
[…]
>> +;; 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))

That’s not necessary, because we can override INSTALLDIR.

>                (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))))))

Why would this be necessary?  There are no Perl packages among the
inputs.

-- 
Ricardo
  
  GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
  http://elephly.net




reply via email to

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