From 98f6452a7077d38eb09af88a90739ab9950565a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 16 Sep 2011 20:50:24 +0000 Subject: [PATCH] Adding the gnunet 0.9 (svn), which works incompatible with the latest gnunet released. I updated some libs to get it built. svn path=/nixpkgs/trunk/; revision=29313 --- pkgs/applications/misc/freemind/default.nix | 6 +- .../networking/p2p/gnunet/0.9.nix | 79 +++++++++++++++++++ .../libraries/libextractor/default.nix | 4 +- .../libraries/libmicrohttpd/default.nix | 4 +- pkgs/top-level/all-packages.nix | 2 + 5 files changed, 88 insertions(+), 7 deletions(-) create mode 100644 pkgs/applications/networking/p2p/gnunet/0.9.nix diff --git a/pkgs/applications/misc/freemind/default.nix b/pkgs/applications/misc/freemind/default.nix index dd6f205eca88..24071d3c6838 100644 --- a/pkgs/applications/misc/freemind/default.nix +++ b/pkgs/applications/misc/freemind/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, jdk, jre, ant, coreutils, gnugrep }: stdenv.mkDerivation { - name = "freemind-0.9.0_RC_6"; + name = "freemind-0.9.0"; src = fetchurl { - url = mirror://sourceforge/freemind/freemind-src-0.9.0_RC_6.tar.gz; - sha256 = "0qxpwqmb4xd8c83zh76gczmx0hsx5m209k7p60kh7c4f25snhngf"; + url = mirror://sourceforge/freemind/freemind-src-0.9.0.tar.gz; + sha256 = "1qd535gwx00d8z56mplxli5529yds2gsmbgla5b0bhhmsdwmrxmf"; }; buildInputs = [ jdk ant ]; diff --git a/pkgs/applications/networking/p2p/gnunet/0.9.nix b/pkgs/applications/networking/p2p/gnunet/0.9.nix new file mode 100644 index 000000000000..96dcfc746b40 --- /dev/null +++ b/pkgs/applications/networking/p2p/gnunet/0.9.nix @@ -0,0 +1,79 @@ +{ stdenv, fetchsvn, libextractor, libmicrohttpd, libgcrypt +, zlib, gmp, curl, libtool, adns, sqlite, pkgconfig +, libxml2, ncurses, gettext, findutils +, autoconf, automake +, gtkSupport ? false, gtk ? null, libglade ? null +, makeWrapper }: + +assert gtkSupport -> (gtk != null) && (libglade != null); + +let + rev = "16910"; + version = "0.9-svn-${rev}"; +in + stdenv.mkDerivation { + name = "gnunet-${version}"; + + src = fetchsvn { + url = "https://gnunet.org/svn/gnunet"; + sha256 = "1jxvh3wvhss0pn286p848zifc8f9pkhcb12m2bpkssh409wwyzkd"; + inherit rev; + }; + + buildInputs = [ + libextractor libmicrohttpd libgcrypt gmp curl libtool + zlib adns sqlite libxml2 ncurses + pkgconfig gettext findutils + autoconf automake + makeWrapper + ] ++ (if gtkSupport then [ gtk libglade ] else []); + + preConfigure = '' + # Brute force: since nix-worker chroots don't provide + # /etc/{resolv.conf,hosts}, replace all references to `localhost' + # by their IPv4 equivalent. + for i in $(find . \( -name \*.c -or -name \*.conf \) \ + -exec grep -l localhost {} \;) + do + echo "$i: substituting \`127.0.0.1' to \`localhost'..." + substituteInPlace "$i" --replace "localhost" "127.0.0.1" + done + + # Make sure the tests don't rely on `/tmp', for the sake of chroot + # builds. + for i in $(find . \( -iname \*test\*.c -or -name \*.conf \) \ + -exec grep -l /tmp {} \;) + do + echo "$i: replacing references to \`/tmp' by \`$TMPDIR'..." + substituteInPlace "$i" --replace "/tmp" "$TMPDIR" + done + + autoreconf -vfi + ''; + + meta = { + description = "GNUnet, GNU's decentralized anonymous and censorship-resistant P2P framework"; + + longDescription = '' + GNUnet is a framework for secure peer-to-peer networking that + does not use any centralized or otherwise trusted services. A + first service implemented on top of the networking layer + allows anonymous censorship-resistant file-sharing. Anonymity + is provided by making messages originating from a peer + indistinguishable from messages that the peer is routing. All + peers act as routers and use link-encrypted connections with + stable bandwidth utilization to communicate with each other. + GNUnet uses a simple, excess-based economic model to allocate + resources. Peers in GNUnet monitor each others behavior with + respect to resource usage; peers that contribute to the + network are rewarded with better service. + ''; + + homepage = http://gnunet.org/; + + license = "GPLv2+"; + + maintainers = [ stdenv.lib.maintainers.ludo ]; + platforms = stdenv.lib.platforms.gnu; + }; + } diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix index a134fbacf0b2..b532f3283d48 100644 --- a/pkgs/development/libraries/libextractor/default.nix +++ b/pkgs/development/libraries/libextractor/default.nix @@ -2,11 +2,11 @@ , ffmpeg, exiv2, libgsf, rpm, pkgconfig, glib, gtk }: stdenv.mkDerivation rec { - name = "libextractor-0.5.23"; + name = "libextractor-0.6.2"; src = fetchurl { url = "mirror://gnu/libextractor/${name}.tar.gz"; - sha256 = "1zyfshayjrp7kd87pm7blyq0dvbv5bbh3f368pp4jws4qxs8aj9f"; + sha256 = "1pyh599717vjblyjch95r76afdxfhrzqr7nx1pz1davy5fpsw5aw"; }; preConfigure = diff --git a/pkgs/development/libraries/libmicrohttpd/default.nix b/pkgs/development/libraries/libmicrohttpd/default.nix index ed213c75959b..90888ce09616 100644 --- a/pkgs/development/libraries/libmicrohttpd/default.nix +++ b/pkgs/development/libraries/libmicrohttpd/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, curl}: stdenv.mkDerivation rec { - name = "libmicrohttpd-0.4.4"; + name = "libmicrohttpd-0.9.9"; src = fetchurl { url = "mirror://gnu/libmicrohttpd/${name}.tar.gz"; - sha256 = "1w486b4hpwnzpc4zdywm3f1q5zs7j4yh7xibbsig6b8cv1npn0rz"; + sha256 = "0059isy80cmxv44dhngnsc4g25kwxdcfis5yrva199r0vnb8ab6c"; }; buildInputs = [ curl ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9d9b5dc60bed..8344f6822157 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6633,6 +6633,8 @@ let gtkSupport = getConfig [ "gnunet" "gtkSupport" ] true; }; + gnunet09 = lowPrio (callPackage ../applications/networking/p2p/gnunet/0.9.nix { }); + gocr = callPackage ../applications/graphics/gocr { }; gobby5 = callPackage ../applications/editors/gobby {