diff options
Diffstat (limited to 'contrib/packages')
-rw-r--r-- | contrib/packages/guix/README | 64 | ||||
-rw-r--r-- | contrib/packages/guix/gnunet-doc.scm | 183 | ||||
-rw-r--r-- | contrib/packages/guix/gnunet.scm | 167 | ||||
-rw-r--r-- | contrib/packages/guix/guix-env.scm | 210 | ||||
-rw-r--r-- | contrib/packages/guix/packages/gnunet/packages/gnunet.scm | 519 | ||||
-rw-r--r-- | contrib/packages/guix/packages/gnunet/packages/texlive.scm | 182 |
6 files changed, 0 insertions, 1325 deletions
diff --git a/contrib/packages/guix/README b/contrib/packages/guix/README deleted file mode 100644 index 635c92394..000000000 --- a/contrib/packages/guix/README +++ /dev/null | |||
@@ -1,64 +0,0 @@ | |||
1 | package definitions for GNU Guix | ||
2 | --------------------------------- | ||
3 | |||
4 | About | ||
5 | ----- | ||
6 | |||
7 | This directory contains various files to work with GNUnet using Guix: | ||
8 | |||
9 | * A folder intended to be used with GUIX_PACKAGE_PATH ("packages") | ||
10 | * gnunet-doc.scm: A file to ease the building of the docgen script output | ||
11 | * gnunet.scm: A file to build gnunet with all tests | ||
12 | * guix-env.scm | ||
13 | |||
14 | The workflow has to be documented and will make its way into the GNUnet | ||
15 | Documentation eventually. For now, all uses of guix environment, guix package, | ||
16 | etc apply. | ||
17 | Example invocation: | ||
18 | guix environment --ad-hoc --container --network --fallback -K -l contrib/packages/guix/gnunet.scm | ||
19 | which is worth improving, but essentially takes you into an container environment | ||
20 | with gnunet from HEAD, under the condition that it builds. This won't include an editor, | ||
21 | so you want to run | ||
22 | guix environment --ad-hoc emacs --container --network --fallback -K -l contrib/packages/guix/gnunet.scm | ||
23 | (untested). You get the idea that this folder is a historical mess and should be cleaned up | ||
24 | and properly documented. | ||
25 | |||
26 | Usage | ||
27 | ----- | ||
28 | |||
29 | Just point Guix towards the root of this source tree. | ||
30 | Assuming that your gnunet checkout is in $HOME/src/gnunet: | ||
31 | |||
32 | export GUIX_PACKAGE_PATH=$HOME/src/gnunet/contrib/packages/guix/packages | ||
33 | |||
34 | or (if you are in the root of the gnunet git repository): | ||
35 | |||
36 | guix package -L contrib/packages/guix/packages -i package-name | ||
37 | |||
38 | The packages in this repository will take precedence over those in the | ||
39 | official distribution. | ||
40 | |||
41 | |||
42 | To make use of the packages in your GuixSD config file: | ||
43 | |||
44 | Be sure to have GUIX_PACKAGE_PATH for your shell exported, | ||
45 | for Bash this could be achieved like this: | ||
46 | |||
47 | export GUIX_PACKAGE_PATH="/full/path/to/gnunet/contrib/packages/guix/directory" | ||
48 | |||
49 | In the section of your systems "config.scm", you should find something like this: | ||
50 | |||
51 | (use-modules (gnu) (gnu system nss)) | ||
52 | |||
53 | Now to make use of "gnunetg" as an systemwide installed package we change this | ||
54 | to: | ||
55 | |||
56 | (use-modules (gnu) (gnu system nss) | ||
57 | (gnunet packages gnunet)) | ||
58 | |||
59 | and do the usual thing: | ||
60 | - save | ||
61 | - guix system build /etc/config.scm | ||
62 | - sudo -E guix system reconfigure /etc/config.scm | ||
63 | |||
64 | The "-E" in "sudo -E" is important to keep the environment variables (GUIX_PACKAGE_PATH). | ||
diff --git a/contrib/packages/guix/gnunet-doc.scm b/contrib/packages/guix/gnunet-doc.scm deleted file mode 100644 index 69dd90e14..000000000 --- a/contrib/packages/guix/gnunet-doc.scm +++ /dev/null | |||
@@ -1,183 +0,0 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | ;;; | ||
19 | |||
20 | (use-modules | ||
21 | (ice-9 popen) | ||
22 | (ice-9 match) | ||
23 | (ice-9 rdelim) | ||
24 | (guix packages) | ||
25 | (guix build-system gnu) | ||
26 | (guix gexp) | ||
27 | ((guix build utils) #:select (with-directory-excursion)) | ||
28 | (guix git-download) | ||
29 | (guix utils) ; current-source-directory | ||
30 | (gnu packages) | ||
31 | (gnu packages aidc) | ||
32 | (gnu packages autotools) | ||
33 | (gnu packages backup) | ||
34 | (gnu packages base) | ||
35 | (gnu packages compression) | ||
36 | (gnu packages curl) | ||
37 | (gnu packages databases) | ||
38 | (gnu packages file) | ||
39 | (gnu packages gettext) | ||
40 | (gnu packages glib) | ||
41 | (gnu packages gnome) | ||
42 | (gnu packages gnunet) | ||
43 | (gnu packages gnupg) | ||
44 | (gnu packages gnuzilla) | ||
45 | (gnu packages groff) | ||
46 | (gnu packages gstreamer) | ||
47 | (gnu packages gtk) | ||
48 | (gnu packages guile) | ||
49 | (gnu packages graphviz) | ||
50 | (gnu packages image) | ||
51 | (gnu packages image-viewers) | ||
52 | (gnu packages libidn) | ||
53 | (gnu packages libunistring) | ||
54 | (gnu packages linux) | ||
55 | (gnu packages maths) | ||
56 | (gnu packages multiprecision) | ||
57 | (gnu packages perl) | ||
58 | (gnu packages pkg-config) | ||
59 | (gnu packages pulseaudio) | ||
60 | (gnu packages python) | ||
61 | (gnu packages tex) | ||
62 | (gnu packages texinfo) | ||
63 | (gnu packages tex) | ||
64 | (gnu packages tls) | ||
65 | (gnu packages video) | ||
66 | (gnu packages web) | ||
67 | (gnu packages xiph) | ||
68 | ;;(gnunet packages texlive) ;GNUnet module including texlive-2012 WIP | ||
69 | ((guix licenses) #:prefix license:)) | ||
70 | |||
71 | (define %source-dir (string-append (current-source-directory) | ||
72 | "/../../../")) | ||
73 | |||
74 | (define gnunet-doc | ||
75 | (let* ((revision "2") | ||
76 | (select? (delay (or (git-predicate | ||
77 | (string-append (current-source-directory) | ||
78 | "/../../../")) | ||
79 | source-file?)))) | ||
80 | (package | ||
81 | (name "gnunet-doc") | ||
82 | (version (string-append "0.10.1-" revision "." "dev")) | ||
83 | (source | ||
84 | (local-file ;;"../../.." | ||
85 | ;;%source-dir | ||
86 | ;;(string-append (getcwd) "/../../../") | ||
87 | (string-append (getcwd)) ;drrty hack and this assumes one static position FIXME! | ||
88 | #:recursive? #t)) | ||
89 | ;;#:select? (git-predicate %source-dir))) | ||
90 | ;;#:select? (force select?))) | ||
91 | (build-system gnu-build-system) | ||
92 | (inputs | ||
93 | `(("glpk" ,glpk) | ||
94 | ("gnurl" ,gnurl) | ||
95 | ("gstreamer" ,gstreamer) | ||
96 | ("gst-plugins-base" ,gst-plugins-base) | ||
97 | ("gnutls/dane" ,gnutls/dane) | ||
98 | ("libextractor" ,libextractor) | ||
99 | ("libgcrypt" ,libgcrypt) | ||
100 | ("libidn" ,libidn) | ||
101 | ("libmicrohttpd" ,libmicrohttpd) | ||
102 | ("libltdl" ,libltdl) | ||
103 | ("libunistring" ,libunistring) | ||
104 | ("openssl" ,openssl) | ||
105 | ("opus" ,opus) | ||
106 | ("pulseaudio" ,pulseaudio) | ||
107 | ("sqlite" ,sqlite) | ||
108 | ("postgresql" ,postgresql) | ||
109 | ("mysql" ,mysql) | ||
110 | ("zlib" ,zlib) | ||
111 | ("perl" ,perl) | ||
112 | ("python-2" ,python-2) ; tests and gnunet-qr | ||
113 | ("jansson" ,jansson) | ||
114 | ("nss" ,nss) | ||
115 | ("glib" ,glib "bin") | ||
116 | ("gmp" ,gmp) | ||
117 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
118 | ("glib" ,glib) | ||
119 | ;;("texlive-minimal" ,texlive-minimal) ; optional. | ||
120 | ("texlive" ,texlive) ;TODO: Stabilize Texlive-2012 package | ||
121 | ("libogg" ,libogg))) | ||
122 | (native-inputs | ||
123 | `(("pkg-config" ,pkg-config) | ||
124 | ("autoconf" ,autoconf) | ||
125 | ("automake" ,automake) | ||
126 | ("gnu-gettext" ,gnu-gettext) | ||
127 | ("graphviz" ,graphviz) ; dot | ||
128 | ("texinfo-5" ,texinfo-5) ; Debian stable | ||
129 | ("which" ,which) | ||
130 | ("libtool" ,libtool))) | ||
131 | (arguments | ||
132 | `(#:configure-flags | ||
133 | (list "--enable-documentation") | ||
134 | #:tests? #f ;Don't run tests | ||
135 | #:phases | ||
136 | (modify-phases %standard-phases | ||
137 | (add-after 'unpack 'autoconf | ||
138 | (lambda _ | ||
139 | (substitute* "bootstrap" | ||
140 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
141 | (for-each (lambda (f) (chmod f #o755)) | ||
142 | (find-files "po" "")) | ||
143 | (zero? (system* "sh" "bootstrap")))) | ||
144 | (add-after 'build 'run-gendocs | ||
145 | (lambda _ | ||
146 | (chdir "doc/documentation") | ||
147 | ;;(zero? (system* "make" "dev-build")))) | ||
148 | (zero? (system* "sh" "run-gendocs.sh")))) | ||
149 | ;; (zero? (system* "make" "pdf")) | ||
150 | ;; (zero? (system* "make" "html")) | ||
151 | ;; (zero? (system* "make" "info")))) | ||
152 | ;;(zero? (system* "make" "doc-all-give-me-the-noise")))) | ||
153 | (replace 'install | ||
154 | (lambda _ | ||
155 | (zero? (system* "make" "doc-gendoc-install"))))))) | ||
156 | ;;(lambda* (#:key outputs #:allow-other-keys) | ||
157 | ;; (let* ((out (assoc-ref outputs "out")) | ||
158 | ;; (doc (string-append out "/share/doc/gnunet"))) | ||
159 | ;; (mkdir-p doc) | ||
160 | ;; (copy-recursively "images" | ||
161 | ;; (string-append doc | ||
162 | ;; "/images")) | ||
163 | ;; (mkdir-p (string-append doc "/gnunet")) | ||
164 | ;; (install-file "gnunet.pdf" doc) | ||
165 | ;; (install-file "gnunet.info" doc) | ||
166 | ;; (install-file "gnunet.log" doc) ;TODO: Move to 'dev' output? | ||
167 | ;; (copy-recursively "gnunet" | ||
168 | ;; (string-append doc | ||
169 | ;; "/gnunet")) | ||
170 | ;; (install-file "gnunet-c-tutorial.pdf" doc) | ||
171 | ;; (install-file "gnunet-c-tutorial.info" doc) | ||
172 | ;; (install-file "gnunet-c-tutorial.log" doc) ;TODO: Move to 'dev' output? | ||
173 | ;; (copy-recursively "gnunet-c-tutorial" | ||
174 | ;; (string-append doc | ||
175 | ;; "/gnunet-c-tutorial"))) | ||
176 | ;; #t))))) | ||
177 | (synopsis "Documentation of GNUnet") | ||
178 | (description | ||
179 | "GNUnet documentation build") | ||
180 | (license (list license:fdl1.3+ license:gpl3+)) | ||
181 | (home-page "https://gnunet.org/")))) | ||
182 | |||
183 | gnunet-doc | ||
diff --git a/contrib/packages/guix/gnunet.scm b/contrib/packages/guix/gnunet.scm deleted file mode 100644 index d83111292..000000000 --- a/contrib/packages/guix/gnunet.scm +++ /dev/null | |||
@@ -1,167 +0,0 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | |||
19 | (use-modules | ||
20 | (ice-9 popen) | ||
21 | (ice-9 match) | ||
22 | (ice-9 rdelim) | ||
23 | (guix packages) | ||
24 | (guix build-system gnu) | ||
25 | (guix gexp) | ||
26 | ((guix build utils) #:select (with-directory-excursion)) | ||
27 | (guix git-download) | ||
28 | (guix utils) ; current-source-directory | ||
29 | (gnu packages) | ||
30 | (gnu packages aidc) | ||
31 | (gnu packages autotools) | ||
32 | (gnu packages backup) | ||
33 | (gnu packages base) | ||
34 | (gnu packages compression) | ||
35 | (gnu packages curl) | ||
36 | (gnu packages databases) | ||
37 | (gnu packages file) | ||
38 | (gnu packages gettext) | ||
39 | (gnu packages glib) | ||
40 | (gnu packages gnome) | ||
41 | (gnu packages gnunet) | ||
42 | (gnu packages gnupg) | ||
43 | (gnu packages gnuzilla) | ||
44 | (gnu packages groff) | ||
45 | (gnu packages gstreamer) | ||
46 | (gnu packages gtk) | ||
47 | (gnu packages guile) | ||
48 | (gnu packages image) | ||
49 | (gnu packages image-viewers) | ||
50 | (gnu packages libidn) | ||
51 | (gnu packages libunistring) | ||
52 | (gnu packages linux) | ||
53 | (gnu packages maths) | ||
54 | (gnu packages multiprecision) | ||
55 | (gnu packages perl) | ||
56 | (gnu packages pkg-config) | ||
57 | (gnu packages pulseaudio) | ||
58 | (gnu packages python) | ||
59 | (gnu packages tex) | ||
60 | (gnu packages texinfo) | ||
61 | (gnu packages tex) | ||
62 | (gnu packages tls) | ||
63 | (gnu packages upnp) | ||
64 | (gnu packages video) | ||
65 | (gnu packages web) | ||
66 | (gnu packages xiph) | ||
67 | ((guix licenses) #:prefix license:)) | ||
68 | |||
69 | (define %source-dir (string-append (current-source-directory) | ||
70 | "/../../../")) | ||
71 | |||
72 | (define gnunet-test-git | ||
73 | (let* ((revision "1") | ||
74 | (select? (delay (or (git-predicate | ||
75 | (string-append (current-source-directory) | ||
76 | "/../../../")) | ||
77 | source-file?)))) | ||
78 | (package | ||
79 | (name "gnunet-test-git") | ||
80 | (version (string-append "0.10.1-" revision "." "dev")) | ||
81 | (source | ||
82 | (local-file ;;"../../.." | ||
83 | ;;%source-dir | ||
84 | ;;(string-append (getcwd) "/../../../") | ||
85 | (string-append (getcwd)) ;drrty hack and this assumes one static position FIXME! | ||
86 | #:recursive? #t)) | ||
87 | ;;#:select? (git-predicate %source-dir))) | ||
88 | ;;#:select? (force select?))) | ||
89 | (build-system gnu-build-system) | ||
90 | (inputs | ||
91 | `(("glpk" ,glpk) | ||
92 | ("gnurl" ,gnurl) | ||
93 | ("gstreamer" ,gstreamer) | ||
94 | ("gst-plugins-base" ,gst-plugins-base) | ||
95 | ("gnutls/dane" ,gnutls/dane) ;Change to gnutls/dane once it is merged. | ||
96 | ("libextractor" ,libextractor) | ||
97 | ("libgcrypt" ,libgcrypt) | ||
98 | ("libidn" ,libidn) | ||
99 | ("libmicrohttpd" ,libmicrohttpd) | ||
100 | ("libltdl" ,libltdl) | ||
101 | ("libunistring" ,libunistring) | ||
102 | ("openssl" ,openssl) | ||
103 | ("opus" ,opus) | ||
104 | ("pulseaudio" ,pulseaudio) | ||
105 | ("sqlite" ,sqlite) | ||
106 | ("postgresql" ,postgresql) | ||
107 | ("mysql" ,mysql) | ||
108 | ("zlib" ,zlib) | ||
109 | ("perl" ,perl) | ||
110 | ("python-2" ,python-2) ; tests and gnunet-qr | ||
111 | ("jansson" ,jansson) | ||
112 | ("nss" ,nss) | ||
113 | ("glib" ,glib "bin") | ||
114 | ("gmp" ,gmp) | ||
115 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
116 | ("glib" ,glib) | ||
117 | ;; TODO: figure out the right texlive parts. | ||
118 | ;;("texlive-minimal" ,texlive-minimal) | ||
119 | ("texlive" ,texlive) | ||
120 | ("miniupnpc" ,miniupnpc) | ||
121 | ("libogg" ,libogg))) | ||
122 | (native-inputs | ||
123 | `(("pkg-config" ,pkg-config) | ||
124 | ("autoconf" ,autoconf) | ||
125 | ("automake" ,automake) | ||
126 | ("gnu-gettext" ,gnu-gettext) | ||
127 | ("which" ,which) | ||
128 | ("texinfo" ,texinfo-5) ; Debian stable: 5.2 | ||
129 | ("libtool" ,libtool))) | ||
130 | (outputs '("out" "debug")) | ||
131 | (arguments | ||
132 | `(#:configure-flags | ||
133 | (list (string-append "--with-nssdir=" %output "/lib") | ||
134 | ;;"--enable-gcc-hardening" | ||
135 | ;;"--enable-linker-hardening" | ||
136 | "--enable-logging=verbose" | ||
137 | "CFLAGS=-ggdb -O0") | ||
138 | #:phases | ||
139 | ;; swap check and install phases and set paths to installed bin | ||
140 | (modify-phases %standard-phases | ||
141 | (add-after 'unpack 'patch-bin-sh | ||
142 | (lambda _ | ||
143 | (substitute* "bootstrap" | ||
144 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
145 | (for-each (lambda (f) (chmod f #o755)) | ||
146 | (find-files "po" "")) | ||
147 | #t)) | ||
148 | (add-after 'patch-bin-sh 'bootstrap | ||
149 | (lambda _ | ||
150 | (zero? (system* "sh" "bootstrap")))) | ||
151 | (delete 'check) | ||
152 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
153 | (add-after 'install 'set-path-for-check | ||
154 | (lambda* (#:key outputs #:allow-other-keys) | ||
155 | (let* ((out (assoc-ref outputs "out")) | ||
156 | (bin (string-append out "/bin")) | ||
157 | (lib (string-append out "/lib"))) | ||
158 | (setenv "GNUNET_PREFIX" lib) | ||
159 | (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
160 | (zero? (system* "make" "check")))))))) | ||
161 | (synopsis "tests enabled without experimental") | ||
162 | (description | ||
163 | "GNUnet from git HEAD") | ||
164 | (license license:gpl3+) | ||
165 | (home-page "https://gnunet.org")))) | ||
166 | |||
167 | gnunet-test-git | ||
diff --git a/contrib/packages/guix/guix-env.scm b/contrib/packages/guix/guix-env.scm deleted file mode 100644 index 8f45512e1..000000000 --- a/contrib/packages/guix/guix-env.scm +++ /dev/null | |||
@@ -1,210 +0,0 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | ;;; | ||
19 | ;; Guix package for GNUnet development | ||
20 | ;; | ||
21 | ;; INSTALL | ||
22 | ;; ------- | ||
23 | ;; | ||
24 | ;; To build and install the package in the user environment, use: | ||
25 | ;; | ||
26 | ;; guix package --install-from-file=guix-env.scm | ||
27 | ;; | ||
28 | ;; BUILD ONLY | ||
29 | ;; ---------- | ||
30 | ;; | ||
31 | ;; Precondition for using this file is that you run Guix and have a | ||
32 | ;; development setup for this setup, which involves a version of Guile in | ||
33 | ;; your PATH. | ||
34 | ;; | ||
35 | ;; cd contrib/packages/guix | ||
36 | ;; guix build -f guix-env.scm | ||
37 | ;; | ||
38 | ;; We'd like to provide advanced functions such as guix environment specific | ||
39 | ;; gnunet-git package and usage of gnunet-gtk-git, but this is subject | ||
40 | ;; to tests right now. | ||
41 | |||
42 | (use-modules | ||
43 | (ice-9 popen) | ||
44 | (ice-9 match) | ||
45 | (ice-9 rdelim) | ||
46 | (guix packages) | ||
47 | (guix build-system gnu) | ||
48 | (guix gexp) | ||
49 | ((guix build utils) #:select (with-directory-excursion)) | ||
50 | (guix git-download) | ||
51 | (guix utils) ; current-source-directory | ||
52 | (gnu packages) | ||
53 | (gnu packages aidc) | ||
54 | (gnu packages autotools) | ||
55 | (gnu packages backup) | ||
56 | (gnu packages base) | ||
57 | (gnu packages compression) | ||
58 | (gnu packages curl) | ||
59 | (gnu packages databases) | ||
60 | (gnu packages file) | ||
61 | (gnu packages gettext) | ||
62 | (gnu packages glib) | ||
63 | (gnu packages gnome) | ||
64 | (gnu packages gnunet) | ||
65 | (gnu packages gnupg) | ||
66 | (gnu packages gnuzilla) | ||
67 | (gnu packages groff) | ||
68 | (gnu packages gstreamer) | ||
69 | (gnu packages gtk) | ||
70 | (gnu packages guile) | ||
71 | (gnu packages image) | ||
72 | (gnu packages image-viewers) | ||
73 | (gnu packages libidn) | ||
74 | (gnu packages libunistring) | ||
75 | (gnu packages linux) | ||
76 | (gnu packages maths) | ||
77 | (gnu packages multiprecision) | ||
78 | (gnu packages perl) | ||
79 | (gnu packages pkg-config) | ||
80 | (gnu packages pulseaudio) | ||
81 | (gnu packages python) | ||
82 | (gnu packages tex) | ||
83 | (gnu packages texinfo) | ||
84 | (gnu packages tex) | ||
85 | (gnu packages tls) | ||
86 | (gnu packages video) | ||
87 | (gnu packages web) | ||
88 | (gnu packages xiph) | ||
89 | ((guix licenses) #:prefix license:)) | ||
90 | |||
91 | (define %source-dir (string-append (current-source-directory) | ||
92 | "/../../../")) | ||
93 | |||
94 | (define gnunet-git | ||
95 | (let* ((revision "3") | ||
96 | (select? (delay (or (git-predicate | ||
97 | (string-append (current-source-directory) | ||
98 | "/../../../")) | ||
99 | source-file?)))) | ||
100 | (package | ||
101 | (name "gnunet-git") | ||
102 | (version (string-append "0.10.1-" revision "." "dev")) | ||
103 | (source | ||
104 | (local-file ;;"../../.." | ||
105 | ;;%source-dir | ||
106 | ;;(string-append (getcwd) "/../../../") | ||
107 | (string-append (getcwd)) ;drrty hack and this assumes one static position FIXME! | ||
108 | #:recursive? #t)) | ||
109 | ;;#:select? (git-predicate %source-dir))) | ||
110 | ;;#:select? (force select?))) | ||
111 | (build-system gnu-build-system) | ||
112 | (inputs | ||
113 | `(("glpk" ,glpk) | ||
114 | ("gnurl" ,gnurl) | ||
115 | ("gstreamer" ,gstreamer) | ||
116 | ("gst-plugins-base" ,gst-plugins-base) | ||
117 | ("gnutls" ,gnutls) ;Change to gnutls/dane once it is merged. | ||
118 | ("libextractor" ,libextractor) | ||
119 | ("libgcrypt" ,libgcrypt) | ||
120 | ("libidn" ,libidn) | ||
121 | ("libmicrohttpd" ,libmicrohttpd) | ||
122 | ("libltdl" ,libltdl) | ||
123 | ("libunistring" ,libunistring) | ||
124 | ("openssl" ,openssl) | ||
125 | ("opus" ,opus) | ||
126 | ("pulseaudio" ,pulseaudio) | ||
127 | ("sqlite" ,sqlite) | ||
128 | ("postgresql" ,postgresql) | ||
129 | ("mysql" ,mysql) | ||
130 | ("zlib" ,zlib) | ||
131 | ("perl" ,perl) | ||
132 | ("python-2" ,python-2) ; tests and gnunet-qr | ||
133 | ("jansson" ,jansson) | ||
134 | ("nss" ,nss) | ||
135 | ("glib" ,glib "bin") | ||
136 | ("gmp" ,gmp) | ||
137 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
138 | ("glib" ,glib) | ||
139 | ;; There are currently no binary substitutes for texlive on | ||
140 | ;; hydra.gnu.org or its mirrors due to its size. Uncomment if you need it. | ||
141 | ;;("texlive-minimal" ,texlive-minimal) ; optional. | ||
142 | ("texlive" ,texlive) | ||
143 | ("libogg" ,libogg))) | ||
144 | (native-inputs | ||
145 | `(("pkg-config" ,pkg-config) | ||
146 | ("autoconf" ,autoconf) | ||
147 | ("automake" ,automake) | ||
148 | ("gnu-gettext" ,gnu-gettext) | ||
149 | ("which" ,which) | ||
150 | ("texinfo" ,texinfo-5) ; Debian stable: 5.2 | ||
151 | ("libtool" ,libtool))) | ||
152 | ;; TODO: To make use of out:debug, which carries the symbols, | ||
153 | ;; this file needs to fixed. | ||
154 | (outputs '("out" "debug")) | ||
155 | (arguments | ||
156 | `(#:configure-flags | ||
157 | (list (string-append "--with-nssdir=" %output "/lib");"/lib/gnunet/nss") | ||
158 | "--enable-gcc-hardening" | ||
159 | "--enable-linker-hardening" | ||
160 | |||
161 | "--enable-poisoning" | ||
162 | "--enable-sanitizer" | ||
163 | "--enable-experimental" | ||
164 | "--enable-logging=verbose" | ||
165 | "CFLAGS=-ggdb -O0") | ||
166 | ;;#:parallel-tests? #f ; parallel building seems to fail | ||
167 | ;;#:tests? #f ; fail: test_gnunet_statistics.py | ||
168 | #:phases | ||
169 | ;; swap check and install phases and set paths to installed bin | ||
170 | (modify-phases %standard-phases | ||
171 | (add-after 'unpack 'patch-bin-sh | ||
172 | (lambda _ | ||
173 | (substitute* "bootstrap" | ||
174 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
175 | (for-each (lambda (f) (chmod f #o755)) | ||
176 | (find-files "po" "")) | ||
177 | #t)) | ||
178 | (add-after 'patch-bin-sh 'bootstrap | ||
179 | (lambda _ | ||
180 | (zero? (system* "sh" "bootstrap")))) | ||
181 | ;; (add-after 'install 'install-lib-nss | ||
182 | ;; (lambda* (#:key outputs #:allow-other-keys) | ||
183 | ;; (let* ((out (assoc-ref outputs "out")) | ||
184 | ;; (lib (string-append out "/lib/nss/"))) | ||
185 | ;; (mkdir-p lib) | ||
186 | ;; (copy-recursively "src/gns/nss/" lib) | ||
187 | ;; (install-file "ping" "combobreak")) | ||
188 | ;; #t)) | ||
189 | (delete 'check)))) | ||
190 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
191 | ;; (add-after 'install 'set-path-for-check | ||
192 | ;; (lambda* (#:key outputs #:allow-other-keys) | ||
193 | ;; (let* ((out (assoc-ref outputs "out")) | ||
194 | ;; (bin (string-append out "/bin")) | ||
195 | ;; (lib (string-append out "/lib"))) | ||
196 | ;; (setenv "GNUNET_PREFIX" lib) | ||
197 | ;; (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
198 | ;; (zero? (system* "make" "check")))))))) | ||
199 | (synopsis "Secure, decentralized, peer-to-peer networking framework") | ||
200 | (description | ||
201 | "GNUnet is a framework for secure peer-to-peer networking. The | ||
202 | high-level goal is to provide a strong foundation of free software for a | ||
203 | global, distributed network that provides security and privacy. GNUnet in | ||
204 | that sense aims to replace the current internet protocol stack. Along with | ||
205 | an application for secure publication of files, it has grown to include all | ||
206 | kinds of basic applications for the foundation of a GNU internet.") | ||
207 | (license license:gpl3+) | ||
208 | (home-page "https://gnunet.org/")))) | ||
209 | |||
210 | gnunet-git | ||
diff --git a/contrib/packages/guix/packages/gnunet/packages/gnunet.scm b/contrib/packages/guix/packages/gnunet/packages/gnunet.scm deleted file mode 100644 index be529ec1d..000000000 --- a/contrib/packages/guix/packages/gnunet/packages/gnunet.scm +++ /dev/null | |||
@@ -1,519 +0,0 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | |||
19 | (define-module (gnunet packages gnunet) | ||
20 | #:use-module (guix build-system gnu) | ||
21 | #:use-module (guix download) | ||
22 | #:use-module (guix git-download) | ||
23 | #:use-module ((guix licenses) #:prefix license:) | ||
24 | #:use-module (guix packages) | ||
25 | #:use-module (gnu packages) | ||
26 | #:use-module (gnu packages admin) | ||
27 | #:use-module (gnu packages aidc) | ||
28 | #:use-module (gnu packages autotools) | ||
29 | #:use-module (gnu packages base) | ||
30 | #:use-module (gnu packages bison) | ||
31 | #:use-module (gnu packages compression) | ||
32 | #:use-module (gnu packages databases) | ||
33 | #:use-module (gnu packages gettext) | ||
34 | #:use-module (gnu packages glib) | ||
35 | #:use-module (gnu packages gnome) | ||
36 | #:use-module (gnu packages gnunet) | ||
37 | #:use-module (gnu packages gnupg) | ||
38 | #:use-module (gnu packages gnuzilla) | ||
39 | #:use-module (gnu packages gstreamer) | ||
40 | #:use-module (gnu packages gtk) | ||
41 | #:use-module (gnu packages libidn) | ||
42 | #:use-module (gnu packages libunistring) | ||
43 | #:use-module (gnu packages linux) | ||
44 | #:use-module (gnu packages man) | ||
45 | #:use-module (gnu packages image-viewers) | ||
46 | #:use-module (gnu packages maths) | ||
47 | #:use-module (gnu packages multiprecision) | ||
48 | #:use-module (gnu packages ncurses) | ||
49 | #:use-module (gnu packages pcre) | ||
50 | #:use-module (gnu packages perl) | ||
51 | #:use-module (gnu packages pkg-config) | ||
52 | #:use-module (gnu packages pulseaudio) | ||
53 | #:use-module (gnu packages python) | ||
54 | #:use-module (gnu packages tls) | ||
55 | #:use-module (gnu packages texinfo) | ||
56 | #:use-module (gnu packages tex) | ||
57 | #:use-module (gnu packages upnp) | ||
58 | #:use-module (gnu packages web) | ||
59 | #:use-module (gnu packages xiph)) | ||
60 | |||
61 | ;; TODO: Use HEAD without checking sum of it. | ||
62 | ;; Explanation for name scheme: UNIXPATH is capped at 108 characters, | ||
63 | ;; this causes lots of tests to fail. | ||
64 | ;; FIXME: make this file MUCH shorter. | ||
65 | (define-public gnunetg | ||
66 | (let* ((commit "3c3090717610ea787fdd3562901329254a6af0d6") | ||
67 | (revision "32")) | ||
68 | (package | ||
69 | (inherit gnunet) | ||
70 | (name "gnunetg") | ||
71 | (version (string-append "0.10.1" "-" revision | ||
72 | "." (string-take commit 7))) | ||
73 | (source | ||
74 | (origin | ||
75 | (method git-fetch) | ||
76 | (uri (git-reference | ||
77 | (url "https://gnunet.org/git/gnunet.git") | ||
78 | (commit commit))) | ||
79 | (file-name (string-append name "-" version "-checkout")) | ||
80 | (sha256 | ||
81 | (base32 | ||
82 | "0g0x1r833jkssfd2sndy37509dqf9f8myjvg7mnadwc1irp393bl")))) | ||
83 | (build-system gnu-build-system) | ||
84 | (inputs | ||
85 | `(("glpk" ,glpk) | ||
86 | ("gnurl" ,gnurl) | ||
87 | ("gstreamer" ,gstreamer) | ||
88 | ("gst-plugins-base" ,gst-plugins-base) | ||
89 | ("gnutls" ,gnutls) | ||
90 | ("libextractor" ,libextractor) | ||
91 | ("libgcrypt" ,libgcrypt) | ||
92 | ("libidn" ,libidn) | ||
93 | ("libmicrohttpd" ,libmicrohttpd) | ||
94 | ("libltdl" ,libltdl) | ||
95 | ("libunistring" ,libunistring) | ||
96 | ("openssl" ,openssl) | ||
97 | ("opus" ,opus) | ||
98 | ("pulseaudio" ,pulseaudio) | ||
99 | ("sqlite" ,sqlite) | ||
100 | ("zlib" ,zlib) | ||
101 | ("perl" ,perl) | ||
102 | ("python" ,python-2) ; tests and gnunet-qr | ||
103 | ("jansson" ,jansson) | ||
104 | ("ncurses" ,ncurses) | ||
105 | ("nss" ,nss) | ||
106 | ("gmp" ,gmp) | ||
107 | ("miniupnpc" ,miniupnpc) | ||
108 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
109 | ("glib" ,glib) | ||
110 | ;; ("texlive-minimal" ,texlive-minimal) ; optional. | ||
111 | ("libogg" ,libogg))) | ||
112 | (native-inputs | ||
113 | `(("pkg-config" ,pkg-config) | ||
114 | ("autoconf" ,autoconf) | ||
115 | ("automake" ,automake) | ||
116 | ("gnu-gettext" ,gnu-gettext) | ||
117 | ("which" ,which) | ||
118 | ("texinfo" ,texinfo) | ||
119 | ("libtool" ,libtool))) | ||
120 | (outputs '("out" "debug")) | ||
121 | (arguments | ||
122 | `(#:configure-flags | ||
123 | (list (string-append "--with-nssdir=" %output "/lib") | ||
124 | "--enable-experimental") | ||
125 | #:parallel-tests? #f ; parallel building is not functional | ||
126 | #:tests? #f ; FAIL: test_gnunet_statistics.py | ||
127 | #:phases | ||
128 | ;; swap check and install phases and set paths to installed bin | ||
129 | (modify-phases %standard-phases | ||
130 | (add-after 'unpack 'patch-bin-sh | ||
131 | (lambda _ | ||
132 | (substitute* "bootstrap" | ||
133 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
134 | (for-each (lambda (f) (chmod f #o755)) | ||
135 | (find-files "po" "")) | ||
136 | #t)) | ||
137 | (add-after 'patch-bin-sh 'bootstrap | ||
138 | (lambda _ | ||
139 | (zero? (system* "sh" "bootstrap")))) | ||
140 | ;; DISABLED until failing testcases are fixed. | ||
141 | ;; this test fails in our environment, disable it: | ||
142 | ;; XXX: specify which ones fail. | ||
143 | ;; (add-after 'patch-bin-sh 'disable-test_quota_compliance_tcp_asymmetric | ||
144 | ;; (lambda _ | ||
145 | ;; (substitute* '("src/transport/Makefile.am") | ||
146 | ;; (("test_quota_compliance_tcp_asymmetric") "")))) | ||
147 | ;; (("test_quota_compliance_http_asymmetric") "") | ||
148 | ;; (("test_quota_compliance_https_asymmetric") "") | ||
149 | ;; (("test_quota_compliance_unix") "") | ||
150 | ;; (("test_quota_compliance_unix_asymmetric") "")))) | ||
151 | ;; check is between build and install, fix this to: | ||
152 | ;; build - install - check, else the test suite fails. | ||
153 | (delete 'check))))))) | ||
154 | ;; (add-after 'install 'set-path-for-check | ||
155 | ;; (lambda* (#:key outputs #:allow-other-keys) | ||
156 | ;; (let* ((out (assoc-ref outputs "out")) | ||
157 | ;; (bin (string-append out "/bin")) | ||
158 | ;; (lib (string-append out "/lib"))) | ||
159 | ;; (setenv "GNUNET_PREFIX" lib) | ||
160 | ;; (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
161 | ;; ;; XXX: https://gnunet.org/bugs/view.php?id=4619#c11061 | ||
162 | ;; ;; Enable core dump before the tests. | ||
163 | ;; ;; XXX: HOW??? ulimit -c unlimited | ||
164 | ;; (zero? (system* "make" "check")))))))) | ||
165 | |||
166 | (define-public gnunet-doc | ||
167 | (package | ||
168 | (name "gnunet-doc") | ||
169 | (version (package-version gnunetg)) | ||
170 | (source (package-source gnunetg)) | ||
171 | (build-system gnu-build-system) | ||
172 | ;; FIXME: Introduce DOCS_ONLY option for configure script. | ||
173 | ;; This should prevent the checks for all required software. | ||
174 | (inputs | ||
175 | `(("glpk" ,glpk) | ||
176 | ("gnurl" ,gnurl) | ||
177 | ("gstreamer" ,gstreamer) | ||
178 | ("gst-plugins-base" ,gst-plugins-base) | ||
179 | ("gnutls" ,gnutls) | ||
180 | ("libextractor" ,libextractor) | ||
181 | ("libgcrypt" ,libgcrypt) | ||
182 | ("libidn" ,libidn) | ||
183 | ("libmicrohttpd" ,libmicrohttpd) | ||
184 | ("libltdl" ,libltdl) | ||
185 | ("libunistring" ,libunistring) | ||
186 | ("openssl" ,openssl) | ||
187 | ("opus" ,opus) | ||
188 | ("pulseaudio" ,pulseaudio) | ||
189 | ("sqlite" ,sqlite) | ||
190 | ("zlib" ,zlib) | ||
191 | ("perl" ,perl) | ||
192 | ("python" ,python-2) ; tests and gnunet-qr | ||
193 | ("jansson" ,jansson) | ||
194 | ("ncurses" ,ncurses) | ||
195 | ("nss" ,nss) | ||
196 | ("gmp" ,gmp) | ||
197 | ("miniupnpc" ,miniupnpc) | ||
198 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
199 | ("glib" ,glib) | ||
200 | ("texlive" ,texlive) ;TODO: Use a minimal subset. | ||
201 | ("libogg" ,libogg))) | ||
202 | (native-inputs | ||
203 | `(("pkg-config" ,pkg-config) | ||
204 | ("autoconf" ,autoconf) | ||
205 | ("which" ,which) | ||
206 | ("automake" ,automake) | ||
207 | ("gnu-gettext" ,gnu-gettext) | ||
208 | ("texinfo" ,texinfo) | ||
209 | ("libtool" ,libtool))) | ||
210 | (arguments | ||
211 | `(#:tests? #f ;Don't run tests | ||
212 | #:phases | ||
213 | (modify-phases %standard-phases | ||
214 | (add-after 'unpack 'patch-bin-sh | ||
215 | (lambda _ | ||
216 | (substitute* "bootstrap" | ||
217 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
218 | (for-each (lambda (f) (chmod f #o755)) | ||
219 | (find-files "po" "")) | ||
220 | #t)) | ||
221 | (add-after 'patch-bin-sh 'bootstrap | ||
222 | (lambda _ | ||
223 | (zero? (system* "sh" "bootstrap")))) | ||
224 | (replace 'build | ||
225 | (lambda _ | ||
226 | (chdir "doc") | ||
227 | (zero? (system* "make" "doc-all-give-me-the-noise")))) | ||
228 | (replace 'install | ||
229 | (lambda* (#:key outputs #:allow-other-keys) | ||
230 | (let* ((out (assoc-ref outputs "out")) | ||
231 | (doc (string-append out "/share/doc/gnunet"))) | ||
232 | (mkdir-p doc) | ||
233 | (mkdir-p (string-append doc "/gnunet")) | ||
234 | (install-file "gnunet.pdf" doc) | ||
235 | (install-file "gnunet.info" doc) | ||
236 | (copy-recursively "gnunet" | ||
237 | (string-append doc | ||
238 | "/gnunet")) | ||
239 | (install-file "gnunet-c-tutorial.pdf" doc) | ||
240 | (install-file "gnunet-c-tutorial.info" doc) | ||
241 | (copy-recursively "gnunet-c-tutorial" | ||
242 | (string-append doc | ||
243 | "/gnunet-c-tutorial"))) | ||
244 | #t))))) | ||
245 | (synopsis "GNUnet documentation") | ||
246 | (description | ||
247 | "Gnunet-doc builds the documentation of GNUnet.") | ||
248 | (home-page "https://gnunet.org") | ||
249 | (license (package-license gnunet)))) | ||
250 | |||
251 | (define-public gnunetgpg | ||
252 | (package | ||
253 | (inherit gnunetg) | ||
254 | (name "gnunetgpg") | ||
255 | (inputs | ||
256 | `(("postgresql" ,postgresql) | ||
257 | ,@(package-inputs gnunetg))) | ||
258 | (synopsis "gnunet, variant with postgres"))) | ||
259 | |||
260 | (define-public gnunetgf | ||
261 | (package | ||
262 | (inherit gnunetg) | ||
263 | (name "gnunetgf") | ||
264 | (inputs | ||
265 | `(("postgresql" ,postgresql) | ||
266 | ("mysql" ,mysql) | ||
267 | ,@(package-inputs gnunetg))) | ||
268 | (arguments | ||
269 | `(#:configure-flags | ||
270 | (list (string-append "--with-nssdir=" %output "/lib") | ||
271 | "--enable-gcc-hardening" | ||
272 | "--enable-linker-hardening" | ||
273 | |||
274 | "--enable-poisoning" | ||
275 | "--enable-sanitizer" | ||
276 | "--enable-experimental" | ||
277 | "--enable-logging=verbose" | ||
278 | "CFLAGS=-ggdb -O0") | ||
279 | #:parallel-tests? #f ; parallel building is not supported. | ||
280 | ;;#:tests? #f ; fail: test_gnunet_statistics.py | ||
281 | #:phases | ||
282 | ;; swap check and install phases and set paths to installed bin | ||
283 | (modify-phases %standard-phases | ||
284 | (add-after 'unpack 'patch-bin-sh | ||
285 | (lambda _ | ||
286 | (substitute* "bootstrap" | ||
287 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
288 | (for-each (lambda (f) (chmod f #o755)) | ||
289 | (find-files "po" "")) | ||
290 | #t)) | ||
291 | (add-after 'patch-bin-sh 'bootstrap | ||
292 | (lambda _ | ||
293 | (zero? (system* "sh" "bootstrap")))) | ||
294 | (delete 'check)))) | ||
295 | (synopsis "gnunet, full git build without tests"))) | ||
296 | |||
297 | ;; A package to run the test suite. | ||
298 | (define-public gnunetgft | ||
299 | (package | ||
300 | (inherit gnunetg) | ||
301 | (name "gnunetgft") | ||
302 | (arguments | ||
303 | `(#:configure-flags | ||
304 | (list (string-append "--with-nssdir=" %output "/lib") | ||
305 | "--enable-gcc-hardening" | ||
306 | "--enable-linker-hardening" | ||
307 | |||
308 | ;;"--enable-poisoning" | ||
309 | ;;"--enable-sanitizer" | ||
310 | "--enable-experimental" | ||
311 | "--enable-logging=verbose" | ||
312 | "CFLAGS=-ggdb -O0") | ||
313 | ;; #:parallel-tests? #f ; parallel building seems to fail | ||
314 | ;;#:tests? #f ; fail: test_gnunet_statistics.py | ||
315 | #:phases | ||
316 | ;; swap check and install phases and set paths to installed bin | ||
317 | (modify-phases %standard-phases | ||
318 | (add-after 'unpack 'patch-bin-sh | ||
319 | (lambda _ | ||
320 | (substitute* "bootstrap" | ||
321 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
322 | (for-each (lambda (f) (chmod f #o755)) | ||
323 | (find-files "po" "")) | ||
324 | #t)) | ||
325 | (add-after 'patch-bin-sh 'bootstrap | ||
326 | (lambda _ | ||
327 | (zero? (system* "sh" "bootstrap")))) | ||
328 | (delete 'check) | ||
329 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
330 | (add-after 'install 'set-path-for-check | ||
331 | (lambda* (#:key outputs #:allow-other-keys) | ||
332 | (let* ((out (assoc-ref outputs "out")) | ||
333 | (bin (string-append out "/bin")) | ||
334 | (lib (string-append out "/lib"))) | ||
335 | (setenv "GNUNET_PREFIX" lib) | ||
336 | (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
337 | (zero? (system* "make" "check")))))))) | ||
338 | (synopsis "gnunet, full git with tests enabled with parallel tests"))) | ||
339 | |||
340 | (define-public gnunetg-test | ||
341 | (package | ||
342 | (inherit gnunetg) | ||
343 | (name "gnunetg-test") | ||
344 | (arguments | ||
345 | `(#:configure-flags | ||
346 | (list (string-append "--with-nssdir=" %output "/lib") | ||
347 | "--enable-gcc-hardening" | ||
348 | "--enable-linker-hardening" | ||
349 | |||
350 | ;;"--enable-poisoning" | ||
351 | ;;"--enable-sanitizer" | ||
352 | "--enable-logging=verbose" | ||
353 | "CFLAGS=-ggdb -O0") | ||
354 | ;; #:parallel-tests? #f ; parallel building seems to fail | ||
355 | ;;#:tests? #f ; fail: test_gnunet_statistics.py | ||
356 | #:phases | ||
357 | ;; swap check and install phases and set paths to installed bin | ||
358 | (modify-phases %standard-phases | ||
359 | (add-after 'unpack 'patch-bin-sh | ||
360 | (lambda _ | ||
361 | (substitute* "bootstrap" | ||
362 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
363 | (for-each (lambda (f) (chmod f #o755)) | ||
364 | (find-files "po" "")) | ||
365 | #t)) | ||
366 | (add-after 'patch-bin-sh 'bootstrap | ||
367 | (lambda _ | ||
368 | (zero? (system* "sh" "bootstrap")))) | ||
369 | (delete 'check) | ||
370 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
371 | (add-after 'install 'set-path-for-check | ||
372 | (lambda* (#:key outputs #:allow-other-keys) | ||
373 | (let* ((out (assoc-ref outputs "out")) | ||
374 | (bin (string-append out "/bin")) | ||
375 | (lib (string-append out "/lib"))) | ||
376 | (setenv "GNUNET_PREFIX" lib) | ||
377 | (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
378 | (zero? (system* "make" "check")))))))) | ||
379 | (synopsis "gnunet, full git with tests enabled without experimental"))) | ||
380 | |||
381 | ;; ... and one package to test the package with "parallel-tests? #f" | ||
382 | (define-public gnunetgftn | ||
383 | (package | ||
384 | (inherit gnunetg) | ||
385 | (name "gnunetgftn") | ||
386 | (arguments | ||
387 | `(#:configure-flags | ||
388 | (list (string-append "--with-nssdir=" %output "/lib") | ||
389 | "--enable-gcc-hardening" | ||
390 | "--enable-linker-hardening" | ||
391 | |||
392 | "--enable-poisoning" | ||
393 | "--enable-sanitizer" | ||
394 | "--enable-experimental" | ||
395 | "--enable-logging=verbose" | ||
396 | "CFLAGS=-ggdb"); -O0") | ||
397 | #:parallel-tests? #f ; parallel building seems to fail | ||
398 | ;;#:tests? #f ; fail: test_gnunet_statistics.py | ||
399 | #:phases | ||
400 | ;; swap check and install phases and set paths to installed bin | ||
401 | (modify-phases %standard-phases | ||
402 | (add-after 'unpack 'patch-bin-sh | ||
403 | (lambda _ | ||
404 | (substitute* "bootstrap" | ||
405 | (("contrib/pogen.sh") "sh contrib/pogen.sh")) | ||
406 | (for-each (lambda (f) (chmod f #o755)) | ||
407 | (find-files "po" "")) | ||
408 | #t)) | ||
409 | (add-after 'patch-bin-sh 'bootstrap | ||
410 | (lambda _ | ||
411 | (zero? (system* "sh" "bootstrap")))) | ||
412 | (delete 'check) | ||
413 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
414 | (add-after 'install 'set-path-for-check | ||
415 | (lambda* (#:key outputs #:allow-other-keys) | ||
416 | (let* ((out (assoc-ref outputs "out")) | ||
417 | (bin (string-append out "/bin")) | ||
418 | (lib (string-append out "/lib"))) | ||
419 | (setenv "GNUNET_PREFIX" lib) | ||
420 | (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
421 | (zero? (system* "make" "check")))))))))) | ||
422 | |||
423 | (define-public gnunet-gtkg | ||
424 | (let* ((commit "087f8e166ee6d1fc59a6bd5d05f656528761ede7") | ||
425 | (revision "5")) | ||
426 | (package | ||
427 | (inherit gnunetgf) | ||
428 | (name "gnunet-gtkg") | ||
429 | (version (package-version gnunetgf)) | ||
430 | (source | ||
431 | (origin | ||
432 | (method git-fetch) | ||
433 | (uri (git-reference | ||
434 | (url "https://gnunet.org/git/gnunet-gtk.git") | ||
435 | (commit commit))) | ||
436 | (file-name (string-append name "-" version "-checkout")) | ||
437 | (sha256 | ||
438 | (base32 | ||
439 | "1k03d8l0yz4fpliy5bg5s7qkpidzd6ryr4cd63wgmd227p32i87q")))) | ||
440 | (arguments | ||
441 | `(#:configure-flags | ||
442 | (list "--with-libunique" | ||
443 | "--with-qrencode" | ||
444 | (string-append "--with-gnunet=" | ||
445 | (assoc-ref %build-inputs "gnunetgf"))) | ||
446 | #:phases | ||
447 | (modify-phases %standard-phases | ||
448 | (add-before 'configure 'bootstrap | ||
449 | (lambda _ | ||
450 | (zero? (system* "autoreconf" "-vfi"))))))) | ||
451 | (inputs | ||
452 | `(("gnunetgf" ,gnunetgf) | ||
453 | ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) | ||
454 | ("gnutls" ,gnutls) | ||
455 | ("libgcrypt" ,libgcrypt) | ||
456 | ("gtk+" ,gtk+) | ||
457 | ("libextractor" ,libextractor) | ||
458 | ("glade3" ,glade3) | ||
459 | ("qrencode" ,qrencode) | ||
460 | ("libunique" ,libunique))) | ||
461 | (native-inputs | ||
462 | `(("pkg-config" ,pkg-config) | ||
463 | ("libglade" ,libglade) | ||
464 | ("autoconf" ,autoconf) | ||
465 | ("gnu-gettext" ,gnu-gettext) | ||
466 | ("texinfo" ,texinfo) | ||
467 | ("automake" ,automake) | ||
468 | ("libtool" ,libtool))) | ||
469 | (synopsis "Graphical front-end tools for GNUnet") | ||
470 | (home-page "https://gnunet.org")))) | ||
471 | |||
472 | ;; fuse, pointing to the tests disabled version of gnunet-git | ||
473 | (define-public gnunet-fuse-git | ||
474 | (let* ((commit "3503aeff6db6b39b85e13f9483d46d49ce9cec55") | ||
475 | (revision "3")) | ||
476 | (package | ||
477 | (inherit gnunetg) | ||
478 | ;;(inherit gnunet) | ||
479 | (name "gnunet-fuse-git") | ||
480 | (version (package-version gnunetgf)) | ||
481 | ;;(version (package-version gnunet)) | ||
482 | (source | ||
483 | (origin | ||
484 | (method git-fetch) | ||
485 | (uri (git-reference | ||
486 | (url "https://gnunet.org/git/gnunet-fuse.git") | ||
487 | (commit commit))) | ||
488 | (file-name (string-append name "-" version "-checkout")) | ||
489 | (sha256 | ||
490 | (base32 | ||
491 | "0sxzppanw2nrjqv1vnyj2jx3ja6gqrg0ibkl5n1fr265cqk5hgc5")))) | ||
492 | (arguments | ||
493 | `(#:configure-flags | ||
494 | (list "--with-qrencode" | ||
495 | (string-append "--with-gnunet=" | ||
496 | (assoc-ref %build-inputs "gnunetgf"))) ;"gnunet"))) | ||
497 | #:phases | ||
498 | (modify-phases %standard-phases | ||
499 | (add-after 'unpack 'fix-gnunet-include-path | ||
500 | (lambda _ | ||
501 | (substitute* "configure.ac" | ||
502 | (("gnunet/gnunet_util_lib.h") | ||
503 | "${lookin}/include/gnunet/gnunet_util_lib.h")) | ||
504 | #t)) | ||
505 | (add-before 'configure 'bootstrap | ||
506 | (lambda _ | ||
507 | (zero? (system* "autoreconf" "-vfi"))))))) | ||
508 | (inputs | ||
509 | `(("gnunetgf" ,gnunetgf))) | ||
510 | ;;`(("gnunet" ,gnunet))) | ||
511 | (native-inputs | ||
512 | `(("pkg-config" ,pkg-config) | ||
513 | ("fuse" ,fuse) | ||
514 | ("autoconf" ,autoconf) | ||
515 | ("gnu-gettext" ,gnu-gettext) | ||
516 | ("automake" ,automake) | ||
517 | ("libtool" ,libtool))) | ||
518 | (synopsis "FUSE for GNUnet") | ||
519 | (home-page "https://gnunet.org")))) | ||
diff --git a/contrib/packages/guix/packages/gnunet/packages/texlive.scm b/contrib/packages/guix/packages/gnunet/packages/texlive.scm deleted file mode 100644 index 77256a947..000000000 --- a/contrib/packages/guix/packages/gnunet/packages/texlive.scm +++ /dev/null | |||
@@ -1,182 +0,0 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2017 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | |||
19 | ;; Initially based on Guix commit eb0119efde826590a13973ab928c173780a7f257 | ||
20 | |||
21 | (define-module (gnunet packages texlive) | ||
22 | #:use-module ((guix licenses) | ||
23 | #:renamer (symbol-prefix-proc 'license:)) | ||
24 | #:use-module (guix packages) | ||
25 | #:use-module (guix download) | ||
26 | #:use-module (guix build-system gnu) | ||
27 | #:use-module (gnu packages) | ||
28 | #:use-module (gnu packages compression) | ||
29 | #:use-module (gnu packages fontutils) | ||
30 | #:use-module (gnu packages ghostscript) | ||
31 | #:use-module (gnu packages icu4c) | ||
32 | #:use-module (gnu packages image) | ||
33 | #:use-module (gnu packages pdf) | ||
34 | #:use-module (gnu packages perl) | ||
35 | #:use-module (gnu packages pkg-config) | ||
36 | #:use-module (gnu packages python) | ||
37 | #:use-module (gnu packages compression)) | ||
38 | |||
39 | (define texlive-extra-src | ||
40 | (origin | ||
41 | (method url-fetch) | ||
42 | (uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-extra.tar.xz") | ||
43 | ;;(uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-extra.tar.xz") | ||
44 | (sha256 (base32 | ||
45 | "0cb8fnv4x281gy5ka779f00ssdmdpjj4x3pkh9j9vq45hrwg3522")))) | ||
46 | |||
47 | (define texlive-texmf-src | ||
48 | (origin | ||
49 | (method url-fetch) | ||
50 | (uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-texmf.tar.xz") | ||
51 | ;;(uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-texmf.tar.xz") | ||
52 | (sha256 (base32 | ||
53 | "1fn1dg9k7pnh8a80j23zfkbrfnqyc4c2w4ss30dpkqj490nxsywq")))) | ||
54 | |||
55 | ;; Note that right now this does not include security fixes! | ||
56 | ;; FIXME: Needs more fixes, currently this fails building! | ||
57 | |||
58 | (define-public texlive | ||
59 | (package | ||
60 | (name "texlive") | ||
61 | (version "2012") | ||
62 | (source (origin | ||
63 | (method url-fetch) | ||
64 | (uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-source.tar.xz") | ||
65 | ;;(uri "ftp://tug.org/historic/systems/texlive/2012/texlive-20120701-source.tar.xz") | ||
66 | (sha256 (base32 | ||
67 | "10bcrdfsqnc6y3gqcb8ndnjy07i5kz63as39irbq4gmcbmyn2rln")))) | ||
68 | (build-system gnu-build-system) | ||
69 | (inputs `(("texlive-extra-src" ,texlive-extra-src) | ||
70 | ("texlive-texmf-src" ,texlive-texmf-src) | ||
71 | ("fontconfig" ,fontconfig) | ||
72 | ("freetype" ,freetype) | ||
73 | ("icu4c" ,icu4c) | ||
74 | ("ghostscript" ,ghostscript) | ||
75 | ("libpng" ,libpng) | ||
76 | ("perl" ,perl) | ||
77 | ("poppler" ,poppler) | ||
78 | ("pkg-config" ,pkg-config) | ||
79 | ;; FIXME: Add interpreters csh, fontforge and ruby, | ||
80 | ;; once they are available. | ||
81 | ("python" ,python) | ||
82 | ("teckit" ,teckit) | ||
83 | ("t1lib" ,t1lib) | ||
84 | ("zlib" ,zlib) | ||
85 | ("zziplib" ,zziplib))) | ||
86 | (outputs '("out" "data")) | ||
87 | (arguments | ||
88 | `(#:out-of-source? #t | ||
89 | #:configure-flags | ||
90 | `("--disable-native-texlive-build" | ||
91 | ;; Although the texmf and texmf-dist data is taken from | ||
92 | ;; texlive-texmf, setting datarootdir is still useful: | ||
93 | ;; "make install" creates symbolic links to scripts in this place. | ||
94 | ,(string-append "--datarootdir=" (assoc-ref %outputs "data")) | ||
95 | ,(string-append "--infodir=" (assoc-ref %outputs "out") "/share/info") | ||
96 | ,(string-append "--mandir=" (assoc-ref %outputs "out") "/share/man") | ||
97 | "--without-x" ; FIXME: Drop as soon as X is available. | ||
98 | "--with-system-freetype2" | ||
99 | ;; "--with-system-gd" | ||
100 | ;; "--with-system-graphite" | ||
101 | "--with-system-icu" | ||
102 | "--with-system-libgs" | ||
103 | "--with-system-libpng" | ||
104 | "--with-system-poppler" | ||
105 | "--with-system-t1lib" | ||
106 | "--with-system-teckit" | ||
107 | "--with-system-xpdf" | ||
108 | "--with-system-zlib" | ||
109 | "--with-system-zziplib") | ||
110 | #:phases | ||
111 | (alist-replace | ||
112 | 'configure | ||
113 | (lambda* (#:key outputs #:allow-other-keys #:rest args) | ||
114 | (let ((configure (assoc-ref %standard-phases 'configure))) | ||
115 | (substitute* "utils/psutils/Makefile.in" | ||
116 | (("/usr/bin/env perl") (which "perl"))) | ||
117 | (apply configure args))) | ||
118 | (alist-cons-after | ||
119 | 'install 'postinst | ||
120 | (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) | ||
121 | (let ((texlive-extra (assoc-ref inputs "texlive-extra-src")) | ||
122 | (texlive-texmf (assoc-ref inputs "texlive-texmf-src")) | ||
123 | (out (assoc-ref outputs "out")) | ||
124 | (data (assoc-ref outputs "data")) | ||
125 | (unpack (assoc-ref %standard-phases 'unpack)) | ||
126 | (patch-source-shebangs | ||
127 | (assoc-ref %standard-phases 'patch-source-shebangs))) | ||
128 | ;; Create symbolic links for the latex variants and their | ||
129 | ;; man pages. | ||
130 | (with-directory-excursion (string-append out "/bin/") | ||
131 | (for-each symlink | ||
132 | '("pdftex" "pdftex" "xetex" "luatex") | ||
133 | '("latex" "pdflatex" "xelatex" "lualatex"))) | ||
134 | (with-directory-excursion (string-append out "/share/man/man1/") | ||
135 | (symlink "luatex.1" "lualatex.1")) | ||
136 | ;; Delete texmf and texmf-dist from "data", since they | ||
137 | ;; will be reinstalled from texlive-texmf. | ||
138 | (system* "rm" "-r" (string-append data "/texmf")) | ||
139 | (system* "rm" "-r" (string-append data "/texmf-dist")) | ||
140 | ;; Unpack texlive-extra and install tlpkg. | ||
141 | (mkdir "texlive-extra") | ||
142 | (with-directory-excursion "texlive-extra" | ||
143 | (apply unpack (list #:source texlive-extra)) | ||
144 | (apply patch-source-shebangs (list #:source texlive-extra)) | ||
145 | (system* "mv" "tlpkg" data) | ||
146 | (chdir "..")) | ||
147 | ;; Unpack and install texlive-texmf. | ||
148 | (mkdir "texlive-texmf") | ||
149 | (with-directory-excursion "texlive-texmf" | ||
150 | (apply unpack (list #:source texlive-texmf)) | ||
151 | (apply patch-source-shebangs (list #:source texlive-texmf)) | ||
152 | ;; Register "data" for kpathsea in texmf.cnf. | ||
153 | (substitute* "texmf/web2c/texmf.cnf" | ||
154 | (("TEXMFROOT = \\$SELFAUTOPARENT") | ||
155 | (string-append "TEXMFROOT = " data))) | ||
156 | (system* "mv" "texmf" data) | ||
157 | (system* "mv" "texmf-dist" data) | ||
158 | (chdir "..")) | ||
159 | ;; texmf.cnf must also be placed in "out", since kpsewhich does | ||
160 | ;; not know about "data" until it has found this file. | ||
161 | (mkdir (string-append out "/share/texmf")) | ||
162 | (mkdir (string-append out "/share/texmf/web2c")) | ||
163 | (copy-file (string-append data "/texmf/web2c/texmf.cnf") | ||
164 | (string-append out "/share/texmf/web2c/texmf.cnf")))) | ||
165 | (alist-cons-after 'patch-shebangs 'texconfig | ||
166 | (lambda* (#:key outputs #:allow-other-keys) | ||
167 | (let ((out (assoc-ref outputs "out"))) | ||
168 | ;; Configure the texlive system; inspired from | ||
169 | ;; http://slackbuilds.org/repository/13.37/office/texlive/ | ||
170 | (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")) | ||
171 | (system* "updmap-sys" "--nohash" "--syncwithtrees") | ||
172 | (system* "mktexlsr") | ||
173 | (system* "fmtutil-sys" "--all"))) | ||
174 | %standard-phases))))) | ||
175 | (synopsis "Tex Live, a package of the TeX typesetting system") | ||
176 | (description | ||
177 | "TeX Live provides a comprehensive TeX document production system. | ||
178 | It includes all the major TeX-related programs, macro packages, and fonts | ||
179 | that are free software, including support for many languages around the | ||
180 | world.") | ||
181 | (license (license:fsf-free "http://tug.org/texlive/copying.html")) | ||
182 | (home-page "http://www.tug.org/texlive/"))) | ||