X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=default.nix;h=ffbcd4c4475a29180301e89d42fcc8bb38082c62;hb=3071beacd58c57edba1cb8b392afe6873560c676;hp=ef3ed2c6d9e919e2eda58e11fc3c45f9a8d804a7;hpb=a150b5db213e2fd9474ff7f4a6f639b22ece63ef;p=oweals%2Fgnunet.git diff --git a/default.nix b/default.nix index ef3ed2c6d..ffbcd4c44 100644 --- a/default.nix +++ b/default.nix @@ -71,75 +71,8 @@ let import pkgs {}; stdenv = usepkgs.stdenvAdapters.keepDebugInfo usepkgs.stdenv; -in with usepkgs; stdenv.mkDerivation rec { - src = ./.; - name = "gnunet-dev"; - - buildInputs = [ - makeWrapper pkgconfig autoconf automake ccache - adns curl gettext gmp gnutls gss ncurses openldap zlib sqlite mariadb postgresql - libextractor libgcrypt libgnurl libidn libmicrohttpd - libpsl libtool libunistring libxml2 - ]; - - patchPhase = '' - test -e Makefile && make distclean - ''; - - NIX_CFLAGS_COMPILE = "-ggdb -O0"; - - configureFlags = [ - "--enable-gcc-hardening" - "--enable-linker-hardening" - - "--enable-experimental" - "--enable-logging=verbose" - "--enable-poisoning" - ]; - - preConfigure = '' - ./bootstrap - configureFlags="$configureFlags --with-nssdir=$out/lib" - - if [ -n "${ccache_dir}" ]; then - export CC='ccache gcc' - export CCACHE_COMPRESS=1 - export CCACHE_DIR="${ccache_dir}" - export CCACHE_UMASK=007 - fi - ''; - - doCheck = false; - - postInstall = '' - # Tests can be run this way - #export GNUNET_PREFIX="$out" - #export PATH="$out/bin:$PATH" - #make -k check - ''; - - meta = with stdenv.lib; { - description = "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 = licenses.gpl3Plus; - platforms = platforms.gnu; - maintainers = with maintainers; [ ]; +in { + gnunet-dev = usepkgs.callPackage ./gnunet-dev.nix { + inherit ccache_dir; }; }