Merge branch 'master' of ssh://gnunet.org/gnunet
[oweals/gnunet.git] / contrib / guix.scm
1 ;;; guix.scm -- Guix package definition
2
3 (use-modules
4   (guix git-download)
5   (guix download)
6   (guix packages)
7   (guix utils)
8   (guix gexp)
9   (gnu packages)
10   (gnu packages autotools)
11   (gnu packages gettext)
12   (gnu packages gnunet)
13   (gnu packages image)
14   (gnu packages texinfo)
15   (srfi srfi-1)
16   (ice-9 popen)
17   (ice-9 rdelim))
18
19 (define %source-dir (dirname (dirname (current-filename))))
20
21 (define %git-commit
22   (read-string (open-pipe "git show HEAD | head -1 | cut -d ' ' -f 2" OPEN_READ)))
23
24 (define-public gnunet-git
25   (package
26     (inherit gnunet)
27     (name "gnunet")
28     (version (git-version (package-version gnunet) "HEAD" %git-commit))
29     (source (local-file %source-dir #:recursive? #t))
30     (inputs
31      `(("libjpeg" ,libjpeg)
32        ,@(package-inputs gnunet)))
33     (native-inputs
34      `(("autoconf" ,autoconf)
35        ("automake" ,automake)
36        ("gettext" ,gnu-gettext)
37        ("libtool" ,libtool)
38        ("texinfo" ,texinfo)
39        ("which" ,(@ (gnu packages base) which))
40        ,@(package-native-inputs gnunet)))
41     (arguments
42      (substitute-keyword-arguments (package-arguments gnunet)
43        ((#:phases phases)
44         `(modify-phases ,phases
45            (add-after 'unpack 'make-po-directory-writable
46              (lambda _
47                (for-each make-file-writable
48                          (find-files "po" "."))
49                #t))))))))
50
51 gnunet-git