aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--default.nix331
-rw-r--r--pkgs/boinctui/default.nix20
-rw-r--r--pkgs/crypto/cardano/daedalus.json (renamed from fetched/daedalus.json)0
-rw-r--r--pkgs/crypto/cardano/default.nix27
-rw-r--r--pkgs/crypto/iota-cli-app/default.nix22
-rw-r--r--pkgs/crypto/iota-cli-app/iota-cli-app-node-packages.nix (renamed from fetched/iota-cli-app-node-packages.nix)0
-rw-r--r--pkgs/crypto/iota-cli-app/iota-cli-app.json (renamed from fetched/iota-cli-app.json)0
-rw-r--r--pkgs/crypto/sia/default.nix19
-rw-r--r--pkgs/duply/default.nix40
-rw-r--r--pkgs/flrn/default.nix13
-rw-r--r--pkgs/flrn/flrn.json (renamed from fetched/flrn.json)0
-rw-r--r--pkgs/genius/default.nix19
-rw-r--r--pkgs/notmuch/notmuch-python/default.nix16
-rw-r--r--pkgs/notmuch/notmuch-vim/default.nix11
-rw-r--r--pkgs/slang_1/default.nix25
-rw-r--r--pkgs/telegramircd/default.nix16
-rw-r--r--pkgs/telegramircd/telegramircd.json (renamed from fetched/telegramircd.json)0
-rw-r--r--pkgs/telethon_sync/default.nix23
-rw-r--r--pkgs/unicode/default.nix48
19 files changed, 318 insertions, 312 deletions
diff --git a/default.nix b/default.nix
index 7b2ca98..ae3b2b7 100644
--- a/default.nix
+++ b/default.nix
@@ -74,19 +74,38 @@ let
74 }; 74 };
75 }; 75 };
76 76
77 mypkgs.boinctui = callPackage ./pkgs/boinctui {};
77 mypkgs.cnagios = callPackage ./pkgs/cnagios { inherit fetchedGithub; }; 78 mypkgs.cnagios = callPackage ./pkgs/cnagios { inherit fetchedGithub; };
79 mypkgs.duply = callPackage ./pkgs/duply {};
80 mypkgs.flrn = callPackage ./pkgs/flrn {
81 slang = callPackage ./pkgs/slang_1 {};
82 inherit fetchedGithub;
83 };
84 mypkgs.genius = callPackage ./pkgs/genius {};
78 mypkgs.mtop = callPackage ./pkgs/mtop {}; 85 mypkgs.mtop = callPackage ./pkgs/mtop {};
79 mypkgs.muttprint = callPackage ./pkgs/muttprint {}; 86 mypkgs.muttprint = callPackage ./pkgs/muttprint {};
80 mypkgs.mutt-ics = callPackage ./pkgs/mutt-ics { inherit fetchedGithub; }; 87 mypkgs.mutt-ics = callPackage ./pkgs/mutt-ics { inherit fetchedGithub; };
81 mypkgs.nagios-cli = callPackage ./pkgs/nagios-cli { inherit fetchedGithub; }; 88 mypkgs.nagios-cli = callPackage ./pkgs/nagios-cli { inherit fetchedGithub; };
82 #mypkgs.nagnu = callPackage ./pkgs/nagnu { inherit fetchedGithub; }; 89 #mypkgs.nagnu = callPackage ./pkgs/nagnu { inherit fetchedGithub; };
83 mypkgs.note = callPackage ./pkgs/note {}; 90 mypkgs.note = callPackage ./pkgs/note {};
91 mypkgs.notmuch-python2 = callPackage ./pkgs/notmuch/notmuch-python { pythonPackages = python2Packages; };
92 mypkgs.notmuch-python3 = callPackage ./pkgs/notmuch/notmuch-python { pythonPackages = python3Packages; };
93 mypkgs.notmuch-vim = callPackage ./pkgs/notmuch/notmuch-vim {};
84 mypkgs.pg_activity = callPackage ./pkgs/pg_activity { inherit fetchedGithub; }; 94 mypkgs.pg_activity = callPackage ./pkgs/pg_activity { inherit fetchedGithub; };
85 mypkgs.pgloader = callPackage ./pkgs/pgloader { inherit fetchedGithub; }; 95 mypkgs.pgloader = callPackage ./pkgs/pgloader { inherit fetchedGithub; };
86 mypkgs.telegram-cli = callPackage ./pkgs/telegram-cli { inherit fetchedGithub; }; 96 mypkgs.telegram-cli = callPackage ./pkgs/telegram-cli { inherit fetchedGithub; };
87 mypkgs.telegram-history-dump = callPackage ./pkgs/telegram-history-dump { inherit fetchedGithub; }; 97 mypkgs.telegram-history-dump = callPackage ./pkgs/telegram-history-dump { inherit fetchedGithub; };
98 mypkgs.telegramircd = callPackage ./pkgs/telegramircd {
99 telethon = callPackage ./pkgs/telethon_sync {};
100 inherit fetchedGithub;
101 };
88 mypkgs.terminal-velocity = callPackage ./pkgs/terminal-velocity {}; 102 mypkgs.terminal-velocity = callPackage ./pkgs/terminal-velocity {};
89 mypkgs.tiv = callPackage ./pkgs/tiv {}; 103 mypkgs.tiv = callPackage ./pkgs/tiv {};
104 mypkgs.unicode = callPackage ./pkgs/unicode {};
105
106 mypkgs.cardano = callPackage ./pkgs/crypto/cardano { inherit fetchedGithub; };
107 mypkgs.iota-cli-app = callPackage ./pkgs/crypto/iota-cli-app { inherit fetchedGithub; };
108 mypkgs.sia = callPackage ./pkgs/crypto/sia {};
90 109
91 mypkgs.pelican = python3Packages.pelican.overrideAttrs(old: fetchedGithub ./fetched/pelican.json // rec { 110 mypkgs.pelican = python3Packages.pelican.overrideAttrs(old: fetchedGithub ./fetched/pelican.json // rec {
92 propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ]; 111 propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ];
@@ -125,134 +144,6 @@ let
125 144
126 mypkgs.yarn2nix = yarn2nixPackage.yarn2nix; 145 mypkgs.yarn2nix = yarn2nixPackage.yarn2nix;
127 146
128 mypkgs.cardano = let
129 daedalusOrig = (import (fetchedGithub ./fetched/daedalus.json).src {}).daedalus;
130 cfg = stdenv.mkDerivation rec {
131 name = "launcher-config-custom";
132 src = daedalusOrig.cfg;
133 installPhase = ''
134 cp -a $src $out
135 chmod -R u+w $out
136 cd $out/etc
137 sed -e "/^walletPath/d" -e "/^walletArgs/d" launcher-config.yaml > launcher-config-server-only.yaml
138 '';
139 };
140 daedalus = stdenv.mkDerivation rec {
141 name = "daedalus-custom";
142 src = daedalusOrig;
143 installPhase = ''
144 cp -a $src $out
145 chmod -R u+w $out
146 cd $out/bin
147 sed -i -e "s@${builtins.storeDir}/[0-9a-z]*-daedalus-config@${cfg}/etc@" daedalus
148 sed -e "s@${cfg}/etc/launcher-config.yaml@${cfg}/etc/launcher-config-server-only.yaml@" daedalus > daedalus-server-only
149 chmod a+x daedalus-server-only
150 '';
151 };
152 in
153 daedalus;
154
155 mypkgs.sia = stdenv.mkDerivation rec {
156 version = "v1.3.7";
157 name = "Sia-${version}";
158 src = fetchzip {
159 url = "https://sia.tech/static/releases/${name}-linux-amd64.zip";
160 sha256 = "1ljzwrlkx4hc16r8siiyakn039afipp95dyr83c8yfq3r3bfasqd";
161 };
162 phases = "installPhase";
163 installPhase = ''
164 mkdir -p $out/share/doc
165 mkdir -p $out/bin
166 mkdir -p $out/share/sia
167 cp -a $src/doc $out/share/doc/sia
168 cp -a $src/LICENSE $src/README.md $out/share/sia
169 cp -a $src/{siac,siad} $out/bin
170 cp -a $src/{siac,siad}.sig $out/share/sia/
171 '';
172 };
173
174 mypkgs.iota-cli-app = let
175 nodeEnv = pkgs.callPackage "${nodePackages.node2nix}/lib/node_modules/node2nix/nix/node-env.nix" {
176 nodejs = nodejs-8_x;
177 };
178 # built using node2nix -8 -l package-lock.json
179 # and changing "./." to "src"
180 packageEnv = import ./fetched/iota-cli-app-node-packages.nix {
181 src = stdenv.mkDerivation (fetchedGithub ./fetched/iota-cli-app.json // {
182 phases = "installPhase";
183 installPhase = ''
184 cp -a $src $out
185 chmod u+w -R $out
186 cd $out
187 sed -i -e "s@host: 'http://localhost',@host: 'https://iri.trytes.eu',@" index.js
188 sed -i -e "s@port: 14265@port: 443@" index.js
189 '';
190 });
191 inherit (pkgs) fetchurl fetchgit;
192 inherit nodeEnv;
193 };
194 in
195 packageEnv.package;
196
197 mypkgs.duply = stdenv.mkDerivation rec {
198 name = "duply-${version}";
199 version = "2.1";
200
201 src = fetchurl {
202 url = "mirror://sourceforge/project/ftplicity/duply%20%28simple%20duplicity%29/2.1.x/duply_${version}.tgz";
203 sha256 = "0i5j7h7h6ssrwhll0sfhymisshg54kx7j45zcqffzjxa0ylvzlm8";
204 };
205
206 buildInputs = [ txt2man makeWrapper ];
207
208 postPatch = "patchShebangs .";
209
210 installPhase = ''
211 mkdir -p "$out/bin"
212 mkdir -p "$out/share/man/man1"
213 install -vD duply "$out/bin"
214 sed -i $out/bin/duply -e "1a \
215 export PATH='${stdenv.lib.makeBinPath [ coreutils python2 duplicity gawk gnupg1 bash gnugrep txt2man which ]}'
216 " -e "1a \
217 export DUPL_PYTHON_BIN=$(basename ${duplicity}/lib/python*)
218 "
219 "$out/bin/duply" txt2man > "$out/share/man/man1/duply.1"
220 '';
221
222 meta = with stdenv.lib; {
223 description = "Shell front end for the duplicity backup tool";
224 longDescription = ''
225 Duply is a shell front end for the duplicity backup tool
226 http://duplicity.nongnu.org/. It greatly simplifies it's usage by
227 implementing backup job profiles, batch commands and more. Who says
228 secure backups on non-trusted spaces are no child's play?
229 '';
230 homepage = http://duply.net/;
231 license = licenses.gpl2;
232 maintainers = [ maintainers.bjornfor ];
233 platforms = stdenv.lib.platforms.unix;
234 };
235 };
236
237 mypkgs.boinctui = stdenv.mkDerivation rec {
238 name = "boinctui-${version}";
239 version = "2.5.0";
240 src = fetchurl {
241 url = "http://sourceforge.net/projects/boinctui/files/boinctui_${version}.tar.gz";
242 sha256 = "16zxp8r4z6pllacdacg681y56cg2phnn3pm5gwszbsi93cix2g8p";
243 };
244
245 configureFlags = [ "--without-gnutls" ];
246 preConfigure = ''
247 autoconf
248 '';
249
250 preBuild = ''
251 sed -i -e 's/"HOME"/"XDG_CONFIG_HOME"/' src/cfg.cpp
252 sed -i -e 's@\.boinctui\.cfg@boinctui/boinctui.cfg@' src/mainprog.cpp
253 '';
254 buildInputs = [ expat openssl autoconf ncurses ];
255 };
256 147
257 mypkgs.sc-im = sc-im.overrideAttrs (old: { 148 mypkgs.sc-im = sc-im.overrideAttrs (old: {
258 buildPhase = '' 149 buildPhase = ''
@@ -262,156 +153,10 @@ let
262 '' + old.buildPhase; 153 '' + old.buildPhase;
263 }); 154 });
264 155
265 mypkgs.notmuch-vim = stdenv.mkDerivation rec {
266 name = "notmuch-vim-${version}";
267 version = notmuch.version;
268 outputs = [ "out" ];
269 src = notmuch.src;
270 phases = [ "unpackPhase" "installPhase" ];
271 installPhase = ''
272 make -C vim DESTDIR=$out prefix="/share/vim/vimfiles" install
273 '';
274 };
275
276 mypkgs.notmuch-python2 = stdenv.mkDerivation rec {
277 name = "notmuch-python2-${version}";
278 version = notmuch.version;
279 outputs = [ "out" ];
280 buildInputs = [ python2Packages.sphinx python2Packages.python ];
281 src = notmuch.src;
282 phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
283 buildPhase = ''
284 cd bindings/python
285 python setup.py build
286 '';
287 installPhase = ''
288 python setup.py install --prefix=$out --optimize=1
289 '';
290 };
291
292 mypkgs.notmuch-python3 = stdenv.mkDerivation rec {
293 name = "notmuch-python3-${version}";
294 version = notmuch.version;
295 outputs = [ "out" ];
296 buildInputs = [ python3Packages.sphinx python3Packages.python ];
297 src = notmuch.src;
298 phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
299 buildPhase = ''
300 cd bindings/python
301 python setup.py build
302 '';
303 installPhase = ''
304 python setup.py install --prefix=$out --optimize=1
305 '';
306 };
307
308 mypkgs.telegramircd = with python3Packages; let
309 telethon = buildPythonPackage rec {
310 pname = "Telethon-sync";
311 version = "1.1.1";
312
313 src = fetchPypi {
314 inherit pname version;
315 sha256 =
316 "01z8fzqn0qs5pxhvzq891r3mwffq1ga3f8xvm7qdn6kvmxjni9fy";
317 };
318
319 propagatedBuildInputs = with self; [
320 rsa pyaes async_generator
321 ];
322 doCheck = false;
323
324 meta = with lib; {
325 homepage = https://github.com/LonamiWebs/Telethon;
326 description = "Full-featured Telegram client library for Python 3";
327 license = licenses.mit;
328 };
329 };
330 in
331 buildPythonApplication rec {
332 format = "other";
333 pname = "telegramircd";
334 version = "master";
335 propagatedBuildInputs = [ telethon aiohttp ConfigArgParse openssl ];
336 src = (fetchedGithub ./fetched/telegramircd.json).src;
337 LD_LIBRARY_PATH = "${openssl.out}/lib";
338 installPhase = ''
339 install -D $src/telegramircd.py $out/bin/telegramircd
340 wrapProgram "$out/bin/telegramircd" \
341 --prefix LD_LIBRARY_PATH : "${openssl.out}/lib"
342 install -Dm644 "$src/config" -t "$out/etc/telegramircd/"
343 '';
344 };
345
346 mypkgs.lesspipe = lesspipe.overrideAttrs(old: { 156 mypkgs.lesspipe = lesspipe.overrideAttrs(old: {
347 configureFlags = (old.configureFlags or []) ++ [ "--yes" ]; 157 configureFlags = (old.configureFlags or []) ++ [ "--yes" ];
348 }); 158 });
349 159
350 mypkgs.genius = stdenv.mkDerivation rec {
351 name = "genius-${version}";
352 version = "1.0.24";
353 src = fetchurl {
354 url = "https://download.gnome.org/sources/genius/1.0/${name}.tar.xz";
355 sha256 = "772f95f6ae4716d39bb180cd50e8b6b9b074107bee0cd083b825e1e6e55916b6";
356 };
357 buildInputs = [
358 mpfr glib hicolor-icon-theme gtk2 intltool gnome-doc-utils python3 gnome2.gtksourceview
359 autoconf automake libtool ncurses readline pkg-config
360 ];
361 preConfigure = ''
362 autoreconf -fi
363 '';
364 preBuild = ''
365 sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
366 '';
367 };
368
369 mypkgs.unicode = let
370 version = "12.0";
371 version-full = "${version}.0";
372 files = {
373 emoji-data = fetchurl {
374 url = "http://www.unicode.org/Public/emoji/${version}/emoji-data.txt";
375 sha256 = "03sf7h1d6kb9m5s02lif88jsi5kjszpkfvcymaqxj8ds70ar9pgv";
376 };
377 emoji-sequences = fetchurl {
378 url = "http://www.unicode.org/Public/emoji/${version}/emoji-sequences.txt";
379 sha256 = "1hghki2rn3n7m4lwpwi2a5wrsf2nij4bxga9ldabx4g0g2k23svs";
380 };
381 emoji-test = fetchurl {
382 url = "http://www.unicode.org/Public/emoji/${version}/emoji-test.txt";
383 sha256 = "1dqd0fh999mh6naj816ni113m9dimfy3ih9nffjq2lrv9mmlgdck";
384 };
385 emoji-variation-sequences = fetchurl {
386 url = "http://www.unicode.org/Public/emoji/${version}/emoji-variation-sequences.txt";
387 sha256 = "1cccwx5bl79w4c19vi5dhjqxrph92s8hihp9y8s2cqvdzmgbln7a";
388 };
389 emoji-zwj-sequences = fetchurl {
390 url = "http://www.unicode.org/Public/emoji/${version}/emoji-zwj-sequences.txt";
391 sha256 = "1l791nbijmmhwa7kmvfn8gp26ban512l6mgqpz1mnbq3xm19181n";
392 };
393 };
394 zippedFiles = {
395 UCD = fetchurl {
396 url = "http://www.unicode.org/Public/zipped/${version-full}/UCD.zip";
397 sha256 = "1ighy39cjkmqnv1797wrxjz76mv1fdw7zp5j04q55bkwxsdkvrmh";
398 };
399 Unihan = fetchurl {
400 url = "http://www.unicode.org/Public/zipped/${version-full}/Unihan.zip";
401 sha256 = "1kfdhgg2gm52x3s07bijb5cxjy0jxwhd097k5lqhvzpznprm6ibf";
402 };
403 };
404 in
405 pkgs.runCommand "unicode" {
406 buildInputs = [ libarchive ];
407 } ''
408 mkdir -p $out/share/unicode
409 ${builtins.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: u: "install -Dm644 ${u} $out/share/unicode/emoji/${n}.txt") files)}
410 ${builtins.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: u: ''
411 install -Dm644 ${u} $out/share/unicode/${n}.zip
412 bsdtar -C "$out/share/unicode" -x -f "$out/share/unicode/${n}.zip"
413 '') zippedFiles)}
414 '';
415 160
416 mypkgs.dwm = dwm.overrideAttrs(old: rec { 161 mypkgs.dwm = dwm.overrideAttrs(old: rec {
417 postPatch = '' 162 postPatch = ''
@@ -424,44 +169,6 @@ let
424 sed -i -e "/'keyFile'/s/'path'/'string'/" nixops/backends/__init__.py 169 sed -i -e "/'keyFile'/s/'path'/'string'/" nixops/backends/__init__.py
425 ''; 170 '';
426 }); 171 });
427 mypkgs.flrn = let
428 slang = stdenv.mkDerivation rec {
429 name = "slang-debian-patched-${version}";
430 version = "1.4.9";
431 src = fetchurl {
432 url = "ftp://space.mit.edu/pub/davis/slang/v1.4/slang-1.4.9.tar.gz";
433 sha256 = "1y2mg0whqh4b3acd0k17i4biz55bimxg8aaxhmwd165cvspxns9r";
434 };
435 debianPatches = fetchurl {
436 url = "http://archive.debian.org/debian-archive/debian-amd64/pool/main/s/slang/slang_1.4.9dbs-8.diff.gz";
437 sha256 = "0xdq14k5ynqfwpmis1rcggs7m4n921i3bs27icbmbhfg5gb2hap2";
438 };
439 preConfigure = ''
440 cp $debianPatches ./slang.diff.gz
441 gunzip slang.diff.gz
442 patch -p1 < slang.diff
443 for i in debian/patches/*; do
444 patch -p1 < $i
445 done
446 makeFlagsArray=(CFLAGS=" -g -O2 -fno-strength-reduce -DUTF8 -D_REENTRANT -D_XOPEN_SOURCE=500")
447 '';
448 postBuild = ''
449 sed -i "1i#ifndef UTF8\n#define UTF8\n#endif" src/slang.h
450 '';
451 };
452 in
453 stdenv.mkDerivation (fetchedGithub ./fetched/flrn.json // rec {
454 buildInputs = [ libetpan openssl autoconf groff slang yacc ];
455 preConfigure = ''
456 sed -i -e "s/test -e configure/false/" configure.in
457 autoconf
458 sed -i -e '/define CHECK_MAIL/d' src/flrn_config.h
459 sed -i -e '/DEFAULT_DIR_FILE/s@".flrn"@".config/flrn"@' src/flrn_config.h
460 sed -i -e '/DEFAULT_CONFIG_FILE/s@".flrnrc"@"flrnrc"@' src/flrn_config.h
461 sed -i -e '/DEFAULT_FLNEWS_FILE/s@".flnewsrc"@"flnewsrc"@' src/flrn_config.h
462 sed -i -e '/flrn_char chaine/s@18@20@' src/flrn_command.c
463 '';
464 });
465# https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh 172# https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
466# https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks 173# https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks
467in 174in
diff --git a/pkgs/boinctui/default.nix b/pkgs/boinctui/default.nix
new file mode 100644
index 0000000..d8b106a
--- /dev/null
+++ b/pkgs/boinctui/default.nix
@@ -0,0 +1,20 @@
1{ stdenv, fetchurl, expat, openssl, autoconf, ncurses }:
2stdenv.mkDerivation rec {
3 name = "boinctui-${version}";
4 version = "2.5.0";
5 src = fetchurl {
6 url = "http://sourceforge.net/projects/boinctui/files/boinctui_${version}.tar.gz";
7 sha256 = "16zxp8r4z6pllacdacg681y56cg2phnn3pm5gwszbsi93cix2g8p";
8 };
9
10 configureFlags = [ "--without-gnutls" ];
11 preConfigure = ''
12 autoconf
13 '';
14
15 preBuild = ''
16 sed -i -e 's/"HOME"/"XDG_CONFIG_HOME"/' src/cfg.cpp
17 sed -i -e 's@\.boinctui\.cfg@boinctui/boinctui.cfg@' src/mainprog.cpp
18 '';
19 buildInputs = [ expat openssl autoconf ncurses ];
20}
diff --git a/fetched/daedalus.json b/pkgs/crypto/cardano/daedalus.json
index 5bb72f4..5bb72f4 100644
--- a/fetched/daedalus.json
+++ b/pkgs/crypto/cardano/daedalus.json
diff --git a/pkgs/crypto/cardano/default.nix b/pkgs/crypto/cardano/default.nix
new file mode 100644
index 0000000..b7cfb9f
--- /dev/null
+++ b/pkgs/crypto/cardano/default.nix
@@ -0,0 +1,27 @@
1{ stdenv, fetchedGithub }:
2let
3 daedalusOrig = (import (fetchedGithub ./daedalus.json).src {}).daedalus;
4 cfg = stdenv.mkDerivation rec {
5 name = "launcher-config-custom";
6 src = daedalusOrig.cfg;
7 installPhase = ''
8 cp -a $src $out
9 chmod -R u+w $out
10 cd $out/etc
11 sed -e "/^walletPath/d" -e "/^walletArgs/d" launcher-config.yaml > launcher-config-server-only.yaml
12 '';
13 };
14in
15stdenv.mkDerivation rec {
16 name = "daedalus-custom";
17 src = daedalusOrig;
18 buildInputs = [ daedalusOrig ];
19 installPhase = ''
20 cp -a $src $out
21 chmod -R u+w $out
22 cd $out/bin
23 sed -i -e "s@${builtins.storeDir}/[0-9a-z]*-daedalus-config@${cfg}/etc@" daedalus
24 sed -e "s@${cfg}/etc/launcher-config.yaml@${cfg}/etc/launcher-config-server-only.yaml@" daedalus > daedalus-server-only
25 chmod a+x daedalus-server-only
26 '';
27}
diff --git a/pkgs/crypto/iota-cli-app/default.nix b/pkgs/crypto/iota-cli-app/default.nix
new file mode 100644
index 0000000..a027098
--- /dev/null
+++ b/pkgs/crypto/iota-cli-app/default.nix
@@ -0,0 +1,22 @@
1{ stdenv, fetchedGithub, fetchurl, fetchgit, callPackage, nodePackages, nodejs-8_x }:
2let
3 nodeEnv = callPackage "${nodePackages.node2nix}/lib/node_modules/node2nix/nix/node-env.nix" {
4 nodejs = nodejs-8_x;
5 };
6 # built using node2nix -8 -l package-lock.json
7 # and changing "./." to "src"
8 packageEnv = import ./iota-cli-app-node-packages.nix {
9 src = stdenv.mkDerivation (fetchedGithub ./iota-cli-app.json // {
10 phases = "installPhase";
11 installPhase = ''
12 cp -a $src $out
13 chmod u+w -R $out
14 cd $out
15 sed -i -e "s@host: 'http://localhost',@host: 'https://iri.trytes.eu',@" index.js
16 sed -i -e "s@port: 14265@port: 443@" index.js
17 '';
18 });
19 inherit fetchurl fetchgit nodeEnv;
20 };
21in
22packageEnv.package
diff --git a/fetched/iota-cli-app-node-packages.nix b/pkgs/crypto/iota-cli-app/iota-cli-app-node-packages.nix
index d5c61d6..d5c61d6 100644
--- a/fetched/iota-cli-app-node-packages.nix
+++ b/pkgs/crypto/iota-cli-app/iota-cli-app-node-packages.nix
diff --git a/fetched/iota-cli-app.json b/pkgs/crypto/iota-cli-app/iota-cli-app.json
index 6b47dec..6b47dec 100644
--- a/fetched/iota-cli-app.json
+++ b/pkgs/crypto/iota-cli-app/iota-cli-app.json
diff --git a/pkgs/crypto/sia/default.nix b/pkgs/crypto/sia/default.nix
new file mode 100644
index 0000000..45908af
--- /dev/null
+++ b/pkgs/crypto/sia/default.nix
@@ -0,0 +1,19 @@
1{ stdenv, fetchzip }:
2stdenv.mkDerivation rec {
3 version = "v1.3.7";
4 name = "Sia-${version}";
5 src = fetchzip {
6 url = "https://sia.tech/static/releases/${name}-linux-amd64.zip";
7 sha256 = "1ljzwrlkx4hc16r8siiyakn039afipp95dyr83c8yfq3r3bfasqd";
8 };
9 phases = "installPhase";
10 installPhase = ''
11 mkdir -p $out/share/doc
12 mkdir -p $out/bin
13 mkdir -p $out/share/sia
14 cp -a $src/doc $out/share/doc/sia
15 cp -a $src/LICENSE $src/README.md $out/share/sia
16 cp -a $src/{siac,siad} $out/bin
17 cp -a $src/{siac,siad}.sig $out/share/sia/
18 '';
19}
diff --git a/pkgs/duply/default.nix b/pkgs/duply/default.nix
new file mode 100644
index 0000000..3816996
--- /dev/null
+++ b/pkgs/duply/default.nix
@@ -0,0 +1,40 @@
1{ stdenv, fetchurl, makeWrapper, coreutils, python2, duplicity, gawk, gnupg1, bash, gnugrep, txt2man, which }:
2stdenv.mkDerivation rec {
3 name = "duply-${version}";
4 version = "2.1";
5
6 src = fetchurl {
7 url = "mirror://sourceforge/project/ftplicity/duply%20%28simple%20duplicity%29/2.1.x/duply_${version}.tgz";
8 sha256 = "0i5j7h7h6ssrwhll0sfhymisshg54kx7j45zcqffzjxa0ylvzlm8";
9 };
10
11 buildInputs = [ txt2man makeWrapper ];
12
13 postPatch = "patchShebangs .";
14
15 installPhase = ''
16 mkdir -p "$out/bin"
17 mkdir -p "$out/share/man/man1"
18 install -vD duply "$out/bin"
19 sed -i $out/bin/duply -e "1a \
20 export PATH='${stdenv.lib.makeBinPath [ coreutils python2 duplicity gawk gnupg1 bash gnugrep txt2man which ]}'
21 " -e "1a \
22 export DUPL_PYTHON_BIN=$(basename ${duplicity}/lib/python*)
23 "
24 "$out/bin/duply" txt2man > "$out/share/man/man1/duply.1"
25 '';
26
27 meta = with stdenv.lib; {
28 description = "Shell front end for the duplicity backup tool";
29 longDescription = ''
30 Duply is a shell front end for the duplicity backup tool
31 http://duplicity.nongnu.org/. It greatly simplifies it's usage by
32 implementing backup job profiles, batch commands and more. Who says
33 secure backups on non-trusted spaces are no child's play?
34 '';
35 homepage = http://duply.net/;
36 license = licenses.gpl2;
37 maintainers = [ maintainers.bjornfor ];
38 platforms = stdenv.lib.platforms.unix;
39 };
40}
diff --git a/pkgs/flrn/default.nix b/pkgs/flrn/default.nix
new file mode 100644
index 0000000..4240c57
--- /dev/null
+++ b/pkgs/flrn/default.nix
@@ -0,0 +1,13 @@
1{ stdenv, fetchedGithub, libetpan, openssl, autoconf, groff, slang, yacc }:
2stdenv.mkDerivation (fetchedGithub ./flrn.json // {
3 buildInputs = [ libetpan openssl autoconf groff slang yacc ];
4 preConfigure = ''
5 sed -i -e "s/test -e configure/false/" configure.in
6 autoconf
7 sed -i -e '/define CHECK_MAIL/d' src/flrn_config.h
8 sed -i -e '/DEFAULT_DIR_FILE/s@".flrn"@".config/flrn"@' src/flrn_config.h
9 sed -i -e '/DEFAULT_CONFIG_FILE/s@".flrnrc"@"flrnrc"@' src/flrn_config.h
10 sed -i -e '/DEFAULT_FLNEWS_FILE/s@".flnewsrc"@"flnewsrc"@' src/flrn_config.h
11 sed -i -e '/flrn_char chaine/s@18@20@' src/flrn_command.c
12 '';
13})
diff --git a/fetched/flrn.json b/pkgs/flrn/flrn.json
index 3d7a944..3d7a944 100644
--- a/fetched/flrn.json
+++ b/pkgs/flrn/flrn.json
diff --git a/pkgs/genius/default.nix b/pkgs/genius/default.nix
new file mode 100644
index 0000000..b40d1d0
--- /dev/null
+++ b/pkgs/genius/default.nix
@@ -0,0 +1,19 @@
1{ stdenv, fetchurl, mpfr, glib, hicolor-icon-theme, gtk2, intltool, gnome-doc-utils, python3, gnome2, autoconf, automake, libtool, ncurses, readline, pkg-config, }:
2stdenv.mkDerivation rec {
3 name = "genius-${version}";
4 version = "1.0.24";
5 src = fetchurl {
6 url = "https://download.gnome.org/sources/genius/1.0/${name}.tar.xz";
7 sha256 = "772f95f6ae4716d39bb180cd50e8b6b9b074107bee0cd083b825e1e6e55916b6";
8 };
9 buildInputs = [
10 mpfr glib hicolor-icon-theme gtk2 intltool gnome-doc-utils python3 gnome2.gtksourceview
11 autoconf automake libtool ncurses readline pkg-config
12 ];
13 preConfigure = ''
14 autoreconf -fi
15 '';
16 preBuild = ''
17 sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
18 '';
19}
diff --git a/pkgs/notmuch/notmuch-python/default.nix b/pkgs/notmuch/notmuch-python/default.nix
new file mode 100644
index 0000000..d639d9a
--- /dev/null
+++ b/pkgs/notmuch/notmuch-python/default.nix
@@ -0,0 +1,16 @@
1{ stdenv, notmuch, pythonPackages }:
2stdenv.mkDerivation rec {
3 name = "notmuch-${pythonPackages.python.name}-${version}";
4 version = notmuch.version;
5 outputs = [ "out" ];
6 buildInputs = with pythonPackages; [ sphinx python ];
7 src = notmuch.src;
8 phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
9 buildPhase = ''
10 cd bindings/python
11 python setup.py build
12 '';
13 installPhase = ''
14 python setup.py install --prefix=$out --optimize=1
15 '';
16}
diff --git a/pkgs/notmuch/notmuch-vim/default.nix b/pkgs/notmuch/notmuch-vim/default.nix
new file mode 100644
index 0000000..e79a253
--- /dev/null
+++ b/pkgs/notmuch/notmuch-vim/default.nix
@@ -0,0 +1,11 @@
1{ stdenv, notmuch }:
2stdenv.mkDerivation rec {
3 name = "notmuch-vim-${version}";
4 version = notmuch.version;
5 outputs = [ "out" ];
6 src = notmuch.src;
7 phases = [ "unpackPhase" "installPhase" ];
8 installPhase = ''
9 make -C vim DESTDIR=$out prefix="/share/vim/vimfiles" install
10 '';
11}
diff --git a/pkgs/slang_1/default.nix b/pkgs/slang_1/default.nix
new file mode 100644
index 0000000..5d68a56
--- /dev/null
+++ b/pkgs/slang_1/default.nix
@@ -0,0 +1,25 @@
1{ stdenv, fetchurl }:
2stdenv.mkDerivation rec {
3 name = "slang-debian-patched-${version}";
4 version = "1.4.9";
5 src = fetchurl {
6 url = "ftp://space.mit.edu/pub/davis/slang/v1.4/slang-1.4.9.tar.gz";
7 sha256 = "1y2mg0whqh4b3acd0k17i4biz55bimxg8aaxhmwd165cvspxns9r";
8 };
9 debianPatches = fetchurl {
10 url = "http://archive.debian.org/debian-archive/debian-amd64/pool/main/s/slang/slang_1.4.9dbs-8.diff.gz";
11 sha256 = "0xdq14k5ynqfwpmis1rcggs7m4n921i3bs27icbmbhfg5gb2hap2";
12 };
13 preConfigure = ''
14 cp $debianPatches ./slang.diff.gz
15 gunzip slang.diff.gz
16 patch -p1 < slang.diff
17 for i in debian/patches/*; do
18 patch -p1 < $i
19 done
20 makeFlagsArray=(CFLAGS=" -g -O2 -fno-strength-reduce -DUTF8 -D_REENTRANT -D_XOPEN_SOURCE=500")
21 '';
22 postBuild = ''
23 sed -i "1i#ifndef UTF8\n#define UTF8\n#endif" src/slang.h
24 '';
25}
diff --git a/pkgs/telegramircd/default.nix b/pkgs/telegramircd/default.nix
new file mode 100644
index 0000000..8c8bddc
--- /dev/null
+++ b/pkgs/telegramircd/default.nix
@@ -0,0 +1,16 @@
1{ openssl, telethon, python3Packages, fetchedGithub }:
2with python3Packages;
3buildPythonApplication rec {
4 format = "other";
5 pname = "telegramircd";
6 version = "master";
7 propagatedBuildInputs = [ telethon aiohttp ConfigArgParse openssl ];
8 src = (fetchedGithub ./telegramircd.json).src;
9 LD_LIBRARY_PATH = "${openssl.out}/lib";
10 installPhase = ''
11 install -D $src/telegramircd.py $out/bin/telegramircd
12 wrapProgram "$out/bin/telegramircd" \
13 --prefix LD_LIBRARY_PATH : "${openssl.out}/lib"
14 install -Dm644 "$src/config" -t "$out/etc/telegramircd/"
15 '';
16}
diff --git a/fetched/telegramircd.json b/pkgs/telegramircd/telegramircd.json
index 3d219f8..3d219f8 100644
--- a/fetched/telegramircd.json
+++ b/pkgs/telegramircd/telegramircd.json
diff --git a/pkgs/telethon_sync/default.nix b/pkgs/telethon_sync/default.nix
new file mode 100644
index 0000000..aa58d5b
--- /dev/null
+++ b/pkgs/telethon_sync/default.nix
@@ -0,0 +1,23 @@
1{ lib, python3Packages }:
2with python3Packages;
3buildPythonPackage rec {
4 pname = "Telethon-sync";
5 version = "1.1.1";
6
7 src = fetchPypi {
8 inherit pname version;
9 sha256 =
10 "01z8fzqn0qs5pxhvzq891r3mwffq1ga3f8xvm7qdn6kvmxjni9fy";
11 };
12
13 propagatedBuildInputs = [
14 rsa pyaes async_generator
15 ];
16 doCheck = false;
17
18 meta = with lib; {
19 homepage = https://github.com/LonamiWebs/Telethon;
20 description = "Full-featured Telegram client library for Python 3";
21 license = licenses.mit;
22 };
23}
diff --git a/pkgs/unicode/default.nix b/pkgs/unicode/default.nix
new file mode 100644
index 0000000..756e939
--- /dev/null
+++ b/pkgs/unicode/default.nix
@@ -0,0 +1,48 @@
1{ lib, fetchurl, runCommand, libarchive }:
2with lib.attrsets;
3let
4 version = "12.0";
5 version-full = "${version}.0";
6 files = {
7 emoji-data = fetchurl {
8 url = "http://www.unicode.org/Public/emoji/${version}/emoji-data.txt";
9 sha256 = "03sf7h1d6kb9m5s02lif88jsi5kjszpkfvcymaqxj8ds70ar9pgv";
10 };
11 emoji-sequences = fetchurl {
12 url = "http://www.unicode.org/Public/emoji/${version}/emoji-sequences.txt";
13 sha256 = "1hghki2rn3n7m4lwpwi2a5wrsf2nij4bxga9ldabx4g0g2k23svs";
14 };
15 emoji-test = fetchurl {
16 url = "http://www.unicode.org/Public/emoji/${version}/emoji-test.txt";
17 sha256 = "1dqd0fh999mh6naj816ni113m9dimfy3ih9nffjq2lrv9mmlgdck";
18 };
19 emoji-variation-sequences = fetchurl {
20 url = "http://www.unicode.org/Public/emoji/${version}/emoji-variation-sequences.txt";
21 sha256 = "1cccwx5bl79w4c19vi5dhjqxrph92s8hihp9y8s2cqvdzmgbln7a";
22 };
23 emoji-zwj-sequences = fetchurl {
24 url = "http://www.unicode.org/Public/emoji/${version}/emoji-zwj-sequences.txt";
25 sha256 = "1l791nbijmmhwa7kmvfn8gp26ban512l6mgqpz1mnbq3xm19181n";
26 };
27 };
28 zippedFiles = {
29 UCD = fetchurl {
30 url = "http://www.unicode.org/Public/zipped/${version-full}/UCD.zip";
31 sha256 = "1ighy39cjkmqnv1797wrxjz76mv1fdw7zp5j04q55bkwxsdkvrmh";
32 };
33 Unihan = fetchurl {
34 url = "http://www.unicode.org/Public/zipped/${version-full}/Unihan.zip";
35 sha256 = "1kfdhgg2gm52x3s07bijb5cxjy0jxwhd097k5lqhvzpznprm6ibf";
36 };
37 };
38in
39 runCommand "unicode" {
40 buildInputs = [ libarchive ];
41 } ''
42 mkdir -p $out/share/unicode
43 ${builtins.concatStringsSep "\n" (mapAttrsToList (n: u: "install -Dm644 ${u} $out/share/unicode/emoji/${n}.txt") files)}
44 ${builtins.concatStringsSep "\n" (mapAttrsToList (n: u: ''
45 install -Dm644 ${u} $out/share/unicode/${n}.zip
46 bsdtar -C "$out/share/unicode" -x -f "$out/share/unicode/${n}.zip"
47 '') zippedFiles)}
48 ''