]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - default.nix
Move more packages to split files
[perso/Immae/Config/Nix.git] / default.nix
1 with import <nixpkgs> {};
2 with import ./libs.nix { nixpkgs = import <nixpkgs> {}; };
3 let
4 mypkgs = {};
5
6 mypkgs.taskwarrior = taskwarrior.overrideAttrs (old: rec {
7 postInstall = ''${old.postInstall}
8 mkdir -p "$out/share/vim/vimfiles/ftdetect"
9 mkdir -p "$out/share/vim/vimfiles/syntax"
10 ln -s "../../../../share/doc/task/scripts/vim/ftdetect/task.vim" "$out/share/vim/vimfiles/ftdetect/"
11 ln -s "../../../../share/doc/task/scripts/vim/syntax/taskrc.vim" "$out/share/vim/vimfiles/syntax/"
12 ln -s "../../../../share/doc/task/scripts/vim/syntax/taskdata.vim" "$out/share/vim/vimfiles/syntax/"
13 ln -s "../../../../share/doc/task/scripts/vim/syntax/taskedit.vim" "$out/share/vim/vimfiles/syntax/"
14 '';
15 });
16
17 mypkgs.vit = (vit.override { taskwarrior = mypkgs.taskwarrior; }).overrideAttrs (old:
18 fetchedGithub ./fetched/vit.json // {
19 buildInputs = old.buildInputs ++ [perlPackages.TryTiny perlPackages.TextCharWidth];
20 }
21 );
22
23 mypkgs.weboob = (pythonPackages.weboob.overridePythonAttrs {
24 setupPyBuildFlags = [ "--no-qt" "--xdg" ];
25 }).overrideAttrs (old: rec {
26 version = "1.5";
27 src = fetchurl {
28 url = "https://git.weboob.org/weboob/weboob/-/archive/${version}/${old.pname}-${version}.tar.gz";
29 sha256 = "0l6q5nm5g0zn6gmf809059kddrbds27wgygxsfkqja9blks5vq7z";
30 };
31 postInstall = ''${old.postInstall or ""}
32 mkdir -p $out/share/bash-completion/completions/
33 cp tools/weboob_bash_completion $out/share/bash-completion/completions/weboob
34 '';
35 });
36
37 mypkgs.slrn = slrn.overrideAttrs (old: rec {
38 version = "1.0.3a";
39 name = "slrn-${version}";
40 src = fetchurl {
41 url = "http://www.jedsoft.org/releases/slrn/slrn-${version}.tar.bz2";
42 sha256 = "1b1d9iikr60w0vq86y9a0l4gjl0jxhdznlrdp3r405i097as9a1v";
43 };
44 configureFlags = old.configureFlags ++ [ "--with-slrnpull" ];
45 });
46
47 mypkgs.ldapvi = ldapvi.overrideAttrs (old: fetchedGit ./fetched/ldapvi.json);
48
49 nixos = import ./nixos_tools.nix {};
50
51 mypkgs.pass = (pass.withExtensions (exts: [ exts.pass-otp ])).overrideAttrs (old:
52 fetchedGit ./fetched/pass.json // {
53 patches = old.patches ++ [ ./patches/pass-fix-pass-init.patch ];
54 }
55 );
56
57 mypkgs.profanity = (profanity.override {
58 notifySupport = true;
59 inherit libnotify gpgme gdk_pixbuf;
60 python = python3;
61 }).overrideAttrs (old: rec {
62 configureFlags = old.configureFlags ++ [ "--enable-plugins" ];
63 });
64
65 mypkgs.weechat = weechat.override {
66 configure = { availablePlugins, ... }: {
67 plugins = with availablePlugins; [
68 # Make sure websocket_client is not 0.55.0, it provokes
69 # regular crashes
70 (python.withPackages (ps: with ps; [websocket_client emoji]))
71 perl
72 ruby
73 ];
74 };
75 };
76
77 mypkgs.boinctui = callPackage ./pkgs/boinctui {};
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 {};
85 mypkgs.mtop = callPackage ./pkgs/mtop {};
86 mypkgs.muttprint = callPackage ./pkgs/muttprint {};
87 mypkgs.mutt-ics = callPackage ./pkgs/mutt-ics { inherit fetchedGithub; };
88 mypkgs.nagios-cli = callPackage ./pkgs/nagios-cli { inherit fetchedGithub; };
89 #mypkgs.nagnu = callPackage ./pkgs/nagnu { inherit fetchedGithub; };
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 {};
94 mypkgs.pg_activity = callPackage ./pkgs/pg_activity { inherit fetchedGithub; };
95 mypkgs.pgloader = callPackage ./pkgs/pgloader { inherit fetchedGithub; };
96 mypkgs.telegram-cli = callPackage ./pkgs/telegram-cli { 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 };
102 mypkgs.terminal-velocity = callPackage ./pkgs/terminal-velocity {};
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 {};
109
110 mypkgs.pelican = python3Packages.pelican.overrideAttrs(old: fetchedGithub ./fetched/pelican.json // rec {
111 propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ];
112 });
113
114 mypkgs.elinks = elinks.overrideAttrs (old:
115 fetchedGithub ./fetched/elinks.json // rec {
116 preConfigure = ''sh autogen.sh'';
117 buildInputs = old.buildInputs ++ [ gettext automake autoconf ];
118 configureFlags = [
119 "--disable-smb" "--without-x" "--enable-cgi"
120 "--enable-leds" "--enable-256-colors"
121 "--enable-html-highlight" "--with-zlib"
122 ];
123 patches = [];
124 }
125 );
126
127 mypkgs.neomutt = neomutt.overrideAttrs (old:
128 rec {
129 buildInputs = old.buildInputs ++ [ gdbm ];
130 configureFlags = old.configureFlags ++ [ "--gdbm" ];
131 }
132 );
133
134 mypkgs.goaccess = goaccess.overrideAttrs(old: rec {
135 name = "goaccess-${version}";
136 version = "1.3";
137 src = fetchurl {
138 url = "https://tar.goaccess.io/${name}.tar.gz";
139 sha256 = "16vv3pj7pbraq173wlxa89jjsd279004j4kgzlrsk1dz4if5qxwc";
140 };
141 configureFlags = old.configureFlags ++ [ "--enable-tcb=btree" ];
142 buildInputs = old.buildInputs ++ [ tokyocabinet bzip2 ];
143 });
144
145 mypkgs.yarn2nix = yarn2nixPackage.yarn2nix;
146
147
148 mypkgs.sc-im = sc-im.overrideAttrs (old: {
149 buildPhase = ''
150 cd src
151 sed -i Makefile -e 's@\...name.info@.local/state/$(name)info@'
152 cd ..
153 '' + old.buildPhase;
154 });
155
156 mypkgs.lesspipe = lesspipe.overrideAttrs(old: {
157 configureFlags = (old.configureFlags or []) ++ [ "--yes" ];
158 });
159
160
161 mypkgs.dwm = dwm.overrideAttrs(old: rec {
162 postPatch = ''
163 cp ${./patches/dwm_config.h} ./config.h
164 '';
165 });
166
167 mypkgs.nixops = nixops.overrideAttrs (old: {
168 preConfigure = (old.preConfigure or "") + ''
169 sed -i -e "/'keyFile'/s/'path'/'string'/" nixops/backends/__init__.py
170 '';
171 });
172 # https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
173 # https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks
174 in
175 mypkgs // {
176 inherit nix-prefetch-scripts;
177 inherit nix-generate-from-cpan;
178 inherit timewarrior;
179 inherit pal;
180 inherit pdftk;
181 inherit googler;
182 inherit jrnl;
183 inherit apg pwgen;
184 inherit newsboat;
185 inherit vcsh;
186 inherit xmr-stak;
187 inherit urlwatch;
188 inherit ranger;
189 inherit irssi;
190 inherit abook khard khal;
191 inherit graphicsmagick;
192 inherit youtube-dl;
193 inherit ncmpc ncmpcpp;
194 inherit cadaver;
195 inherit mairix notmuch;
196 inherit ctags;
197 inherit s3cmd;
198 inherit solc; # solidity
199 inherit rtorrent;
200 inherit strace;
201 inherit vdirsyncer;
202 inherit w3m lynx links;
203 inherit gitRepo;
204 inherit valgrind;
205 inherit iotop iperf;
206 inherit keybase;
207 inherit bogofilter;
208 inherit mtr;
209 inherit urlview;
210 inherit rr;
211 inherit nix-zsh-completions;
212 inherit browsh;
213 inherit monero;
214 inherit nextcloud-client;
215 inherit feh imagemagick;
216 inherit lftp;
217 stgit = gitAndTools.stgit;
218 inherit bundix;
219 bower2nix = nodePackages.bower2nix;
220 inherit firefox;
221 inherit jq;
222 inherit lzo unzip bzip2 p7zip xz;
223 # unrar is unfree
224 inherit tig;
225 #inherit nixos;
226 inherit emacs26-nox;
227 inherit highlight sourceHighlight;
228 pygmentize = python3Packages.pygments;
229 inherit iftop htop;
230 inherit fetchmail;
231 inherit bc;
232 inherit cpulimit;
233 inherit dmenu st;
234 inherit poppler_utils;
235 inherit tmux;
236 inherit netcat-gnu;
237 inherit ledger;
238 inherit ffmpeg libxslt;
239 }