ng0 <n...@libertad.pw> writes: > Ricardo Wurmus <rek...@elephly.net> writes: […] >> From af81a0a3c796af583ec88dd4bc8d2e8a742c58fa Mon Sep 17 00:00:00 2001 >> From: Ricardo Wurmus <rek...@elephly.net> >> 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