guix-devel
[Top][All Lists]
Advanced

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

[PATCH] gnunet-svn, gnunet-gtk-svn


From: ng0
Subject: [PATCH] gnunet-svn, gnunet-gtk-svn
Date: Sat, 30 Jul 2016 15:11:05 +0000

This is functional, but it suffers the same bug as the gnunet-0.10.1
package. I will write a gnunet-service for guix which will fix all
versions.
The expected behavior for installing gnunet is: create gnunet user with
gnunet group, create gnunet-dns group, build, install, configure through
gnunet-setup -c /path/to/gnunet.conf or setup without graphical tools,
add regular user to gnunet group, run gnunet stuff with regular user.

You will experience the same stability with this svn as with 0.10.1 but
it will have the same broken behavior until I have fixed it.


>From b5d7d060941cf8ed73c78f2666be6e176d8ea57d Mon Sep 17 00:00:00 2001
From: ng0 <address@hidden>
Date: Sat, 30 Jul 2016 14:09:31 +0000
Subject: [PATCH 1/2] gnu: Add gnunet-svn.

* gnu/packages/gnunet.scm (gnunet-svn): New variable.
---
 gnu/packages/gnunet.scm | 82 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 4d888bd..25ac073 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -54,6 +54,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix build-system gnu))
 
 (define-public libextractor
@@ -330,3 +331,84 @@ services.")
      `(("pkg-config" ,pkg-config)
        ("libglade" ,libglade)))
     (synopsis "Graphical front-end tools for GNUnet")))
+
+;; gnunet-fs 0.9, 0.10.1 and HEAD are incompatible to each other as
+;; explained here https://gnunet.org/bot/log/gnunet/2016-06-23#T1067897
+;; We use a revision of a proven and confirmed to be usable and stable
+;; version before refactoring work towards 0.10.2 started.
+
+(define-public gnunet-svn
+  (let ((svn-revision 37273))
+    (package
+      (name "gnunet-svn")
+      (version (string-append "0.10.1" "-1" ".svn"
+                              (number->string svn-revision)))
+      (source
+       (origin
+         (method svn-fetch)
+         (uri (svn-reference
+               (url "https://gnunet.org/svn/gnunet/";)
+               (revision svn-revision)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "0xn8g0mk2nl142yz4zzrj25rpnhxfvjwnfnangyx8s44xv75i2dc"))))
+      (build-system gnu-build-system)
+      (inputs
+       `(("glpk" ,glpk)
+         ("gnurl" ,gnurl)
+         ("gstreamer" ,gstreamer)
+         ("gst-plugins-base" ,gst-plugins-base)
+         ("gnutls" ,gnutls)
+         ("libextractor" ,libextractor)
+         ("libgcrypt" ,libgcrypt)
+         ("libidn" ,libidn)
+         ("libmicrohttpd" ,libmicrohttpd)
+         ("libltdl" ,libltdl)
+         ("libunistring" ,libunistring)
+         ("openssl" ,openssl)
+         ("opus" ,opus)
+         ("pulseaudio" ,pulseaudio)
+         ("sqlite" ,sqlite)
+         ("zlib" ,zlib)
+         ("python" ,python-2))) ; tests and gnunet-qr
+      (native-inputs
+       `(("pkg-config" ,pkg-config)
+         ("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("gnu-gettext" ,gnu-gettext)
+         ("libtool" ,libtool)))
+      (arguments
+       '(#:configure-flags
+         (list (string-append "--with-nssdir=" %output "/lib"))
+         #:parallel-tests? #f ; parallel building is not functional
+         #:tests? #f ; FAIL: test_testbed_logger_api
+         #:phases
+         ;; swap check and install phases and set paths to installed bin
+         (modify-phases %standard-phases
+           (add-after 'unpack 'patch-bin-sh
+             (lambda _
+               (and
+                (substitute* '("bootstrap")
+                  (("contrib/pogen.sh") "sh contrib/pogen.sh"))
+                (for-each (lambda (f) (chmod f #o755))
+                          (find-files "po" "")))))
+           (add-after 'patch-bin-sh 'bootstrap
+             (lambda _
+               (zero?
+                (system* "sh" "bootstrap"))))
+           (add-before 'check 'set-path-for-check
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out")))
+                 (setenv "GNUNET_PREFIX" (string-append out "/lib"))
+                 (setenv "PATH" (string-append (getenv "PATH") ":" out 
"/bin"))))))))
+      (synopsis "Secure, decentralized, peer-to-peer networking framework")
+      (description
+       "GNUnet is a framework for secure peer-to-peer networking.  The
+high-level goal is to provide a strong foundation of free software for a
+global, distributed network that provides security and privacy.  GNUnet in
+that sense aims to replace the current internet protocol stack.  Along with
+an application for secure publication of files, it has grown to include all
+kinds of basic applications for the foundation of a GNU internet.")
+      (license license:gpl3+)
+      (home-page "https://gnunet.org/";))))
-- 
2.9.2

>From 756e355a24b508ff5434e34002545c994a18df3a Mon Sep 17 00:00:00 2001
From: ng0 <address@hidden>
Date: Sat, 30 Jul 2016 15:04:24 +0000
Subject: [PATCH 2/2] gnu: Add gnunet-gtk-svn.

* gnu/packages/gnunet.scm (gnunet-gtk-svn): New variable.
---
 gnu/packages/gnunet.scm | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 25ac073..a3f34ea 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -412,3 +412,50 @@ an application for secure publication of files, it has 
grown to include all
 kinds of basic applications for the foundation of a GNU internet.")
       (license license:gpl3+)
       (home-page "https://gnunet.org/";))))
+
+(define-public gnunet-gtk-svn
+  (let ((svn-revision 37273))
+    (package
+      (inherit gnunet-svn)
+      (name "gnunet-gtk-svn")
+      (version (package-version gnunet-svn))
+      (source
+       (origin
+         (method svn-fetch)
+         (uri (svn-reference
+               (url "https://gnunet.org/svn/gnunet-gtk/";)
+               (revision svn-revision)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "1mckc5aq05wpbvb8mbm0llkhavb0j2f496l73zaapdy3ndyhai8j"))))
+      (arguments
+       `(#:configure-flags
+         (list "--without-libunique"
+               "--with-qrencode"
+               (string-append "--with-gnunet="
+                              (assoc-ref %build-inputs "gnunet-svn")))
+         #:phases
+         (modify-phases %standard-phases
+           (add-before 'configure 'bootstrap
+             (lambda _
+               (zero? (system* "autoreconf" "-vfi")))))))
+      (inputs
+       `(("gnunet-svn" ,gnunet-svn)
+         ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+         ("gnutls" ,gnutls)
+         ("libgcrypt" ,libgcrypt)
+         ("gtk+" ,gtk+)
+         ("libextractor" ,libextractor)
+         ("glade3" ,glade3)
+         ("qrencode" ,qrencode)))
+      (native-inputs
+       `(("pkg-config" ,pkg-config)
+         ("libglade" ,libglade)
+         ("autoconf" ,autoconf)
+         ("gnu-gettext" ,gnu-gettext)
+         ("automake" ,automake)
+         ("libtool" ,libtool)))
+      (synopsis "Graphical front-end tools for GNUnet")
+      (home-page "https://gnunet.org";))))
+
-- 
2.9.2


Thanks for reviewing.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org

reply via email to

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