]>
Commit | Line | Data |
---|---|---|
1 | with import ./libs.nix; | |
2 | with import <nixpkgs> {}; | |
3 | let | |
4 | mypkgs = {}; | |
5 | postHook = '' | |
6 | header() { | |
7 | echo -ne "\033[1;36m" | |
8 | echo -n "$1" | |
9 | echo -e "\033[0m" | |
10 | } | |
11 | ||
12 | echoCmd() { | |
13 | printf "\033[1;34m%s:\033[0m" "$1" | |
14 | shift | |
15 | printf ' %q' "$@" | |
16 | echo | |
17 | } | |
18 | ''; | |
19 | ||
20 | mypkgs.ledger = (ledger.override { boost = boost166; }).overrideAttrs (_old: | |
21 | fetchedGithub ./fetched/ledger.json // { | |
22 | postInstall = ""; | |
23 | } | |
24 | ); | |
25 | ||
26 | mypkgs.taskwarrior = taskwarrior.overrideAttrs (old: rec { | |
27 | postInstall = ''${old.postInstall} | |
28 | mkdir -p "$out/share/vim/vimfiles/ftdetect" | |
29 | mkdir -p "$out/share/vim/vimfiles/syntax" | |
30 | ln -s "../../../../share/doc/task/scripts/vim/ftdetect/task.vim" "$out/share/vim/vimfiles/ftdetect/" | |
31 | ln -s "../../../../share/doc/task/scripts/vim/syntax/taskrc.vim" "$out/share/vim/vimfiles/syntax/" | |
32 | ln -s "../../../../share/doc/task/scripts/vim/syntax/taskdata.vim" "$out/share/vim/vimfiles/syntax/" | |
33 | ln -s "../../../../share/doc/task/scripts/vim/syntax/taskedit.vim" "$out/share/vim/vimfiles/syntax/" | |
34 | ''; | |
35 | }); | |
36 | ||
37 | mypkgs.vit = (vit.override { taskwarrior = mypkgs.taskwarrior; }).overrideAttrs (old: | |
38 | fetchedGithub ./fetched/vit.json // { | |
39 | buildInputs = old.buildInputs ++ [perlPackages.TryTiny perlPackages.TextCharWidth]; | |
40 | } | |
41 | ); | |
42 | ||
43 | mypkgs.weboob = pythonPackages.weboob.overrideAttrs (old: rec { | |
44 | postInstall = ''${old.postInstall or ""} | |
45 | mkdir -p $out/share/bash-completion/completions/ | |
46 | cp tools/weboob_bash_completion $out/share/bash-completion/completions/weboob | |
47 | ''; | |
48 | }); | |
49 | ||
50 | mypkgs.slrn = slrn.overrideAttrs (old: rec { | |
51 | version = "1.0.3a"; | |
52 | name = "slrn-${version}"; | |
53 | src = fetchurl { | |
54 | url = "http://www.jedsoft.org/releases/slrn/slrn-${version}.tar.bz2"; | |
55 | sha256 = "1b1d9iikr60w0vq86y9a0l4gjl0jxhdznlrdp3r405i097as9a1v"; | |
56 | }; | |
57 | configureFlags = old.configureFlags ++ [ "--with-slrnpull" ]; | |
58 | }); | |
59 | ||
60 | mypkgs.ldapvi = ldapvi.overrideAttrs (old: fetchedGit ./fetched/ldapvi.json); | |
61 | ||
62 | nixos = import ./nixos_tools.nix {}; | |
63 | ||
64 | mypkgs.pass = (pass.withExtensions (exts: [ exts.pass-otp ])).overrideAttrs (old: | |
65 | fetchedGit ./fetched/pass.json // { | |
66 | patches = old.patches ++ [ ./patches/pass-fix-pass-init.patch ]; | |
67 | } | |
68 | ); | |
69 | ||
70 | mypkgs.profanity = (profanity.override { | |
71 | notifySupport = true; | |
72 | inherit libnotify gpgme gdk_pixbuf; | |
73 | python = python3; | |
74 | }).overrideAttrs (old: rec { | |
75 | configureFlags = old.configureFlags ++ [ "--enable-plugins" ]; | |
76 | }); | |
77 | ||
78 | mypkgs.weechat = nixpkgs_unstable.weechat.override { | |
79 | configure = { availablePlugins, ... }: { | |
80 | plugins = with availablePlugins; [ | |
81 | (python.withPackages (ps: with ps; [websocket_client emoji])) | |
82 | perl | |
83 | ]; | |
84 | }; | |
85 | }; | |
86 | ||
87 | buildPerlPackage = perlPackages.buildPerlPackage; | |
88 | mypkgs.note = buildPerlPackage rec { | |
89 | name = "note-1.3.26"; | |
90 | src = fetchurl { | |
91 | url = "mirror://cpan/authors/id/T/TL/TLINDEN/${name}.tar.gz"; | |
92 | sha256 = "1h645rnb5vpms48fcyzvp7cwwcbf9k5xq49w2bpniyzzgk2brjrq"; | |
93 | }; | |
94 | outputs = ["out" "man"]; | |
95 | propagatedBuildInputs = [ perlPackages.YAML ]; | |
96 | meta = with stdenv.lib; { | |
97 | description = "A perl script for maintaining notes"; | |
98 | homepage = http://www.daemon.de/NOTE; | |
99 | license = licenses.gpl3; | |
100 | maintainers = with maintainers; [ { name = "T.v.Dein"; email = "tlinden@cpan.org"; } ]; | |
101 | platforms = platforms.unix; | |
102 | }; | |
103 | }; | |
104 | ||
105 | mypkgs.terminal_velocity = with python2Packages; buildPythonApplication rec { | |
106 | pname = "terminal-velocity-git"; | |
107 | version = "0.2.0"; | |
108 | ||
109 | patches = [ | |
110 | # FIXME: update this patch when version changes | |
111 | ./patches/terminal_velocity_fix_build.patch | |
112 | ./patches/terminal_velocity_sort_found_notes.patch | |
113 | ]; | |
114 | ||
115 | propagatedBuildInputs = [ chardet urwid nixpkgs_unstable.python2Packages.sh pyyaml ]; | |
116 | buildInputs = [ m2r restructuredtext_lint pygments ]; | |
117 | ||
118 | src = fetchPypi { | |
119 | inherit pname version; | |
120 | sha256 = "13yrkcmvh5h5fwnai61sbmqkrjyisz08n62pq0ada2lyyqf7g6b9"; | |
121 | }; | |
122 | }; | |
123 | ||
124 | mypkgs.mtop = buildPerlPackage rec { | |
125 | name = "mtop-${version}"; | |
126 | version = "0.6.6"; | |
127 | src = fetchurl { | |
128 | url = "http://downloads.sourceforge.net/project/mtop/mtop/v${version}/mtop-${version}.tar.gz"; | |
129 | sha256 = "0x0x5300b1j9i0xxk8rsrki0pspyzj2vylhzv8qg3l6j26aw0zrf"; | |
130 | }; | |
131 | outputs = ["out"]; | |
132 | buildInputs = [ perlPackages.DBI perlPackages.DBDmysql perlPackages.Curses ]; | |
133 | ||
134 | postInstall = '' | |
135 | cd "$out" | |
136 | preConfigure || true | |
137 | ''; | |
138 | meta = with stdenv.lib; { | |
139 | description = "MySQL top (monitor and examine slow queries)"; | |
140 | homepage = http://mtop.sourceforge.net/; | |
141 | license = licenses.gpl3; | |
142 | maintainers = with maintainers; [ { name = "Marc Prewitt"; email = "mprewitt@chelsea.net"; } ]; | |
143 | platforms = platforms.unix; | |
144 | }; | |
145 | }; | |
146 | ||
147 | mypkgs.tiv = buildPerlPackage rec { | |
148 | name = "tiv-${version}"; | |
149 | version = "2015"; | |
150 | src = fetchurl { | |
151 | url = "http://xyne.archlinux.ca/projects/tiv/src/tiv-${version}.tar.xz"; | |
152 | sha256 = "1vq073v7z7vmcd57lhs4rf4jasji69cpjgkz4dykp94a77p1qq90"; | |
153 | }; | |
154 | outputs = ["out"]; | |
155 | buildInputs = [ perlPackages.PerlMagick ]; | |
156 | perlPreHookScript = ./hooks/tiv_builder.sh; | |
157 | perlPreHook = '' | |
158 | source ${perlPreHookScript} | |
159 | ''; | |
160 | installPhase = '' | |
161 | install -Dm755 tiv "$out/bin/tiv" | |
162 | ''; | |
163 | }; | |
164 | ||
165 | mypkgs.cnagios = stdenv.mkDerivation (fetchedGithub ./fetched/cnagios.json // rec { | |
166 | configureFlags = [ | |
167 | "--with-etc-dir=/etc/cnagios" | |
168 | "--with-var-dir=/var/lib/naemon" | |
169 | "--with-nagios-data=4" | |
170 | ]; | |
171 | ||
172 | prePatch = '' | |
173 | sed -i -e "s/-lcurses/-lncurses/" Makefile.in | |
174 | ''; | |
175 | installPhase = '' | |
176 | install -dm755 $out/share/doc/cnagios | |
177 | install -Dm644 cnagiosrc $out/share/doc/cnagios/ | |
178 | install -Dm644 cnagios.help $out/share/doc/cnagios/ | |
179 | install -Dm644 cnagios.pl $out/share/doc/cnagios/ | |
180 | install -dm755 $out/bin | |
181 | install -Dm755 cnagios $out/bin/ | |
182 | ''; | |
183 | propagatedBuildInputs = [ perl ncurses ]; | |
184 | }); | |
185 | ||
186 | mypkgs.nagios-cli = python2Packages.buildPythonApplication (fetchedGithub ./fetched/nagios-cli.json); | |
187 | ||
188 | mypkgs.pg_activity = with python2Packages; buildPythonApplication (fetchedGithub ./fetched/pg_activity.json // rec { | |
189 | propagatedBuildInputs = [ psycopg2 psutil ]; | |
190 | }); | |
191 | ||
192 | mypkgs.pgloader = stdenv.mkDerivation (fetchedGithub ./fetched/pgloader.json // rec { | |
193 | buildInputs = [ sbcl cacert sqlite freetds libzip curl git openssl makeWrapper ]; | |
194 | LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath [ sqlite libzip curl git openssl freetds ]; | |
195 | buildPhase = '' | |
196 | export PATH=$PATH:$out/bin | |
197 | export HOME=$TMPDIR | |
198 | make pgloader | |
199 | ''; | |
200 | dontStrip = true; | |
201 | enableParallelBuilding = false; | |
202 | installPhase = '' | |
203 | install -Dm755 build/bin/pgloader "$out/bin/pgloader" | |
204 | wrapProgram $out/bin/pgloader --prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}" | |
205 | ''; | |
206 | }); | |
207 | ||
208 | mypkgs.pelican = python3Packages.pelican.overrideAttrs(old: fetchedGithub ./fetched/pelican.json // rec { | |
209 | propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ]; | |
210 | }); | |
211 | ||
212 | mypkgs.elinks = elinks.overrideAttrs (old: | |
213 | fetchedGithub ./fetched/elinks.json // rec { | |
214 | preConfigure = ''sh autogen.sh''; | |
215 | buildInputs = old.buildInputs ++ [ gettext automake autoconf ]; | |
216 | configureFlags = [ | |
217 | "--disable-smb" "--without-x" "--enable-cgi" | |
218 | "--enable-leds" "--enable-256-colors" | |
219 | "--enable-html-highlight" "--with-zlib" | |
220 | ]; | |
221 | patches = []; | |
222 | } | |
223 | ); | |
224 | ||
225 | mypkgs.neomutt = neomutt.overrideAttrs (old: | |
226 | rec { | |
227 | buildInputs = old.buildInputs ++ [ gdbm ]; | |
228 | configureFlags = old.configureFlags ++ [ "--gdbm" ]; | |
229 | } | |
230 | ); | |
231 | ||
232 | # mypkgs.nagnu = stdenv.mkDerivation (fetchedGithub ./fetched/nagnu.json // rec { | |
233 | # buildInputs = [ ncurses curl ]; | |
234 | # installPhase = '' | |
235 | # mkdir -p $out/bin | |
236 | # cp nagnu $out/bin | |
237 | # mkdir -p $out/share/doc/nagnu | |
238 | # cp nagnu.conf.sample $out/share/doc/nagnu | |
239 | # mkdir -p $out/share/man/man8 | |
240 | # cp docs/nagnu.8 $out/share/man/man8 | |
241 | # ''; | |
242 | # }); | |
243 | ||
244 | mypkgs.goaccess = goaccess.overrideAttrs(old: rec { | |
245 | name = "goaccess-${version}"; | |
246 | version = "1.3"; | |
247 | src = fetchurl { | |
248 | url = "https://tar.goaccess.io/${name}.tar.gz"; | |
249 | sha256 = "16vv3pj7pbraq173wlxa89jjsd279004j4kgzlrsk1dz4if5qxwc"; | |
250 | }; | |
251 | configureFlags = old.configureFlags ++ [ "--enable-tcb=btree" ]; | |
252 | buildInputs = old.buildInputs ++ [ tokyocabinet bzip2 ]; | |
253 | }); | |
254 | ||
255 | # https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh | |
256 | # https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks | |
257 | in | |
258 | mypkgs // { | |
259 | inherit nix-prefetch-scripts; | |
260 | inherit nix-generate-from-cpan; | |
261 | inherit timewarrior; | |
262 | inherit sc-im; | |
263 | inherit pal; | |
264 | inherit pdftk; | |
265 | inherit googler; | |
266 | inherit jrnl; | |
267 | inherit apg; | |
268 | inherit newsboat; | |
269 | inherit vcsh; | |
270 | inherit xmr-stak; | |
271 | inherit urlwatch; | |
272 | inherit ranger; | |
273 | inherit irssi; | |
274 | inherit abook khard khal; | |
275 | inherit graphicsmagick; | |
276 | inherit youtube-dl; | |
277 | inherit ncmpc; | |
278 | inherit cadaver; | |
279 | inherit mairix notmuch; | |
280 | inherit ctags; | |
281 | inherit s3cmd; | |
282 | inherit solc; # solidity | |
283 | inherit rtorrent; | |
284 | inherit strace; | |
285 | inherit vdirsyncer; | |
286 | inherit w3m lynx links; | |
287 | inherit gitRepo; | |
288 | inherit valgrind; | |
289 | inherit iotop iperf; | |
290 | inherit keybase; | |
291 | inherit bogofilter; | |
292 | inherit mtr; | |
293 | inherit nixops; | |
294 | stgit = gitAndTools.stgit; | |
295 | # todo: lx* ?, unrar, unzip, zeromq? | |
296 | #inherit nextcloud-client; | |
297 | #inherit nixos; | |
298 | } // (with nixpkgs_unstable; { | |
299 | inherit googler; | |
300 | inherit khal; | |
301 | inherit newsboat; | |
302 | inherit xmr-stak; | |
303 | inherit urlwatch; | |
304 | inherit graphicsmagick; | |
305 | inherit ncmpc; | |
306 | inherit solc; | |
307 | inherit w3m lynx links; | |
308 | inherit valgrind; | |
309 | inherit ranger; | |
310 | inherit strace; | |
311 | inherit notmuch; | |
312 | stgit = gitAndTools.stgit; | |
313 | inherit bundix; | |
314 | }) |