diff options
author | Gabor X Toth <*@tg-x.net> | 2016-10-17 15:46:51 +0000 |
---|---|---|
committer | Gabor X Toth <*@tg-x.net> | 2016-10-17 15:46:51 +0000 |
commit | ac2ddf1b41bca8c031dd19a1750355722839a5bb (patch) | |
tree | fab2b200660761bfda8f8e943f19b26b979837a8 /default.nix | |
parent | 7ef7cbb7b12b1f78dd06c533d90f5c4a773df8f8 (diff) | |
download | gnunet-ac2ddf1b41bca8c031dd19a1750355722839a5bb.tar.gz gnunet-ac2ddf1b41bca8c031dd19a1750355722839a5bb.zip |
gnunet-dev.nix
Diffstat (limited to 'default.nix')
-rw-r--r-- | default.nix | 73 |
1 files changed, 3 insertions, 70 deletions
diff --git a/default.nix b/default.nix index ef3ed2c6d..ffbcd4c44 100644 --- a/default.nix +++ b/default.nix | |||
@@ -71,75 +71,8 @@ let | |||
71 | import pkgs {}; | 71 | import pkgs {}; |
72 | stdenv = usepkgs.stdenvAdapters.keepDebugInfo usepkgs.stdenv; | 72 | stdenv = usepkgs.stdenvAdapters.keepDebugInfo usepkgs.stdenv; |
73 | 73 | ||
74 | in with usepkgs; stdenv.mkDerivation rec { | 74 | in { |
75 | src = ./.; | 75 | gnunet-dev = usepkgs.callPackage ./gnunet-dev.nix { |
76 | name = "gnunet-dev"; | 76 | inherit ccache_dir; |
77 | |||
78 | buildInputs = [ | ||
79 | makeWrapper pkgconfig autoconf automake ccache | ||
80 | adns curl gettext gmp gnutls gss ncurses openldap zlib sqlite mariadb postgresql | ||
81 | libextractor libgcrypt libgnurl libidn libmicrohttpd | ||
82 | libpsl libtool libunistring libxml2 | ||
83 | ]; | ||
84 | |||
85 | patchPhase = '' | ||
86 | test -e Makefile && make distclean | ||
87 | ''; | ||
88 | |||
89 | NIX_CFLAGS_COMPILE = "-ggdb -O0"; | ||
90 | |||
91 | configureFlags = [ | ||
92 | "--enable-gcc-hardening" | ||
93 | "--enable-linker-hardening" | ||
94 | |||
95 | "--enable-experimental" | ||
96 | "--enable-logging=verbose" | ||
97 | "--enable-poisoning" | ||
98 | ]; | ||
99 | |||
100 | preConfigure = '' | ||
101 | ./bootstrap | ||
102 | configureFlags="$configureFlags --with-nssdir=$out/lib" | ||
103 | |||
104 | if [ -n "${ccache_dir}" ]; then | ||
105 | export CC='ccache gcc' | ||
106 | export CCACHE_COMPRESS=1 | ||
107 | export CCACHE_DIR="${ccache_dir}" | ||
108 | export CCACHE_UMASK=007 | ||
109 | fi | ||
110 | ''; | ||
111 | |||
112 | doCheck = false; | ||
113 | |||
114 | postInstall = '' | ||
115 | # Tests can be run this way | ||
116 | #export GNUNET_PREFIX="$out" | ||
117 | #export PATH="$out/bin:$PATH" | ||
118 | #make -k check | ||
119 | ''; | ||
120 | |||
121 | meta = with stdenv.lib; { | ||
122 | description = "GNU's decentralized anonymous and censorship-resistant P2P framework"; | ||
123 | |||
124 | longDescription = '' | ||
125 | GNUnet is a framework for secure peer-to-peer networking that | ||
126 | does not use any centralized or otherwise trusted services. A | ||
127 | first service implemented on top of the networking layer | ||
128 | allows anonymous censorship-resistant file-sharing. Anonymity | ||
129 | is provided by making messages originating from a peer | ||
130 | indistinguishable from messages that the peer is routing. All | ||
131 | peers act as routers and use link-encrypted connections with | ||
132 | stable bandwidth utilization to communicate with each other. | ||
133 | GNUnet uses a simple, excess-based economic model to allocate | ||
134 | resources. Peers in GNUnet monitor each others behavior with | ||
135 | respect to resource usage; peers that contribute to the | ||
136 | network are rewarded with better service. | ||
137 | ''; | ||
138 | |||
139 | homepage = http://gnunet.org/; | ||
140 | |||
141 | license = licenses.gpl3Plus; | ||
142 | platforms = platforms.gnu; | ||
143 | maintainers = with maintainers; [ ]; | ||
144 | }; | 77 | }; |
145 | } | 78 | } |