]> Git — Sourcephile - julm/julm-nix.git/blob - homes/julm.nix
patate: fix install
[julm/julm-nix.git] / homes / julm.nix
1 { pkgs, lib, config, ... }:
2 {
3 imports = [
4 ./softwares.nix
5 ./options.nix
6 julm/mutt.nix
7 julm/hosts/oignon.nix
8 julm/hosts/losurdo.nix
9 ];
10 host.desktop = lib.elem config.host.name [ /*"losurdo"*/ "oignon" ];
11 host.server = lib.elem config.host.name [ "losurdo" "mermet" ];
12 programs.bash.enable = true;
13 programs.firefox = {
14 enable = config.host.desktop;
15 profiles."rp4xy6ye.2021" = {
16 id = 0;
17 name = "2021";
18 inherit settings;
19 userChrome = builtins.readFile firefox/userChrome.css;
20 };
21 profiles."8y3d28fa.tor" = {
22 id = 1;
23 name = "tor";
24 inherit settings;
25 userChrome = builtins.readFile firefox/userChrome.css;
26 };
27 };
28 programs.gpg.enable = true;
29 home.file."${config.programs.gpg.homedir}/gpg.conf".text = ''
30 # julm@autogeree.net
31 trusted-key 0xD15AF7F467E8299B
32 # julm@sourcephile.fr
33 trusted-key 0x2E3618DD0D087650
34 '';
35 services.gpg-agent.enable = true;
36 services.gpg-agent.sshKeys = [
37 # julm@autogeree.net
38 "D275EBA09C7E1FFBFB47F6EEF164E6D56FB24AB2"
39 # julm@sourcephile.fr
40 "123BF80054E9E9CE2BD7B899F07207665392B727"
41 ];
42 programs.direnv.enable = true;
43 programs.htop.enable = true;
44 programs.irssi.enable = config.host.name == "mermet" || config.host.name == "losurdo";
45 programs.irssi.extraConfig = builtins.readFile julm/irssi/config;
46 home.file.".irssi/passwd".text = ''
47 FreeNode : ${pkgs.pass}/bin/pass freenode.net/irc/julm
48 GeekNode : ${pkgs.pass}/bin/pass geeknode.org/irc/julm
49 IndyMedia : ${pkgs.pass}/bin/pass indymedia.org/irc/julm
50 Libera : ${pkgs.pass}/bin/pass libera.chat/irc/julm
51 OFTC : ${pkgs.pass}/bin/pass oftc.net/irc/julm
52 ToileLibre : ${pkgs.pass}/bin/pass toile-libre.org/irc/julm
53 '';
54 programs.man.enable = true;
55 #programs.neovim.enable = true;
56 programs.ssh.enable = true;
57 programs.ssh.matchBlocks."lan.losurdo.sourcephile.fr" = {
58 compression = true; # Helps to get a better framerate with forwardX11
59 forwardX11 = true;
60 forwardX11Trusted = true;
61 serverAliveInterval = 15;
62 };
63 programs.tmux.enable = true;
64 programs.vim.enable = true;
65 manual.manpages.enable = false;
66 programs.git = {
67 enable = true;
68 userName = "Julien Moutinho";
69 userEmail = "julm@sourcephile.fr";
70 signing.key = "0x7182433A39582282929B2A222E3618DD0D087650";
71 signing.signByDefault = false;
72 package =
73 if lib.elem config.host.name [ "losurdo" "oignon" ]
74 then pkgs.gitFull
75 else pkgs.gitMinimal;
76 extraConfig = {
77 sendemail.smtpEncryption = "ssl"; # Yes, "ssl", not "tls" which does not work because it expects STARTTLS.
78 sendemail.smtpServer = "mail.sourcephile.fr";
79 sendemail.smtpServerPort = "465";
80 sendemail.smtpUser = "julm@sourcephile.fr";
81 };
82 };
83 services.redshift.enable = lib.mkDefault config.host.desktop;
84 xsession.enable = lib.mkDefault config.host.desktop;
85 xsession.windowManager.xmonad.enable = lib.mkDefault config.host.desktop;
86 home.stateVersion = "20.09";
87 home.sessionPath = [ "${config.home.homeDirectory}/bin" ];
88 home.sessionVariables = {
89 EDITOR = "vim";
90 LANG = "fr_FR.UTF-8";
91 LESS = "-FRSX";
92 LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive";
93 MANPAGER = "less";
94 };
95 # Warning: triggers a rebuild of mumble
96 #nixpkgs.config.mumble.speechdSupport = lib.mkDefault config.host.desktop;
97 home.packages = [
98 pkgs.acpi
99 #pkgs.amfora
100 pkgs.aria2
101 pkgs.aspell
102 pkgs.aspellDicts.fr
103 pkgs.bc
104 pkgs.binutils
105 pkgs.bison
106 pkgs.bmon
107 #pkgs.browsh
108 #pkgs.cabal2nix
109 pkgs.cachix
110 pkgs.compsize
111 pkgs.convmv
112 pkgs.coreutils
113 pkgs.croc
114 pkgs.cryptsetup
115 pkgs.curl
116 #pkgs.dnsutils
117 pkgs.dstat
118 pkgs.e2fsprogs
119 pkgs.ethtool
120 pkgs.exa
121 pkgs.ffmpeg
122 pkgs.file
123 pkgs.flex
124 pkgs.gcc
125 pkgs.git-crypt
126 pkgs.git-quick-stats
127 #pkgs.git-remote-gpg
128 pkgs.glib # gio
129 #pkgs.go-mtpfs
130 pkgs.gnumake
131 pkgs.gvfs
132 #pkgs.haskell.packages.ghc865.zerobin
133 pkgs.hledger
134 pkgs.home-manager
135 pkgs.htop
136 pkgs.hunspell
137 pkgs.hunspellDicts.fr-moderne
138 pkgs.hwinfo
139 pkgs.imagemagick
140 pkgs.inetutils
141 pkgs.ipfs
142 pkgs.jq
143 pkgs.knot-dns
144 pkgs.ldns
145 pkgs.less
146 pkgs.lftp
147 pkgs.libfaketime
148 pkgs.libidn
149 pkgs.libxml2.bin
150 #pkgs.linuxPackages.cpupower
151 #pkgs.linuxPackages.perf
152 pkgs.lm_sensors
153 pkgs.lsof
154 pkgs.lsscsi
155 #pkgs.meli
156 pkgs.miniupnpc
157 pkgs.mosh
158 pkgs.ncdu
159 pkgs.ncurses
160 pkgs.neofetch
161 pkgs.nix-prefetch-git
162 pkgs.nixpkgs-review
163 pkgs.nmon
164 pkgs.ntfs3g
165 #pkgs.onionshare
166 pkgs.openssl
167 pkgs.opusTools
168 pkgs.p7zip
169 pkgs.parted
170 pkgs.pass
171 pkgs.pastebinit
172 pkgs.patchelf
173 pkgs.pciutils
174 pkgs.podl
175 pkgs.poppler_utils
176 pkgs.powertop
177 pkgs.procps
178 #pkgs.profanity
179 pkgs.pv
180 pkgs.qprint
181 pkgs.ranger
182 pkgs.rdfind
183 pkgs.ripgrep
184 pkgs.sanoid
185 pkgs.shellcheck
186 pkgs.sipcalc
187 pkgs.smartmontools
188 pkgs.socat
189 pkgs.sqlite
190 pkgs.sshfs
191 pkgs.stig
192 pkgs.strace
193 pkgs.stress
194 pkgs.sudo
195 pkgs.tcpdump
196 pkgs.thttpd
197 pkgs.tig
198 pkgs.tree
199 pkgs.unzip
200 pkgs.usbutils
201 pkgs.utillinux
202 pkgs.vbetool
203 pkgs.weechat
204 pkgs.wget
205 pkgs.wgetpaste
206 pkgs.which
207 pkgs.xdg_utils
208 pkgs.xmlstarlet
209 pkgs.xsel
210 pkgs.youtube-dl
211 pkgs.yubikey-personalization
212 pkgs.zfs
213 ] ++ lib.optionals config.host.desktop [
214 pkgs.amule
215 pkgs.calibre
216 #pkgs.chromium
217 pkgs.dino
218 pkgs.djview
219 pkgs.dmenu
220 pkgs.evince
221 pkgs.freeciv_gtk
222 pkgs.gajim
223 pkgs.geeqie
224 pkgs.gimp
225 pkgs.glxinfo
226 pkgs.gparted
227 pkgs.graphviz
228 pkgs.hicolor-icon-theme
229 pkgs.keepass
230 pkgs.libdvdcss
231 pkgs.libreoffice
232 pkgs.liferea
233 pkgs.mplayer
234 pkgs.mpv
235 pkgs.mumble
236 pkgs.networkmanager-openvpn
237 pkgs.networkmanagerapplet
238 pkgs.nix-du
239 pkgs.pavucontrol
240 pkgs.thunderbird
241 pkgs.transmission-gtk
242 pkgs.vlc
243 pkgs.xclip
244 pkgs.xorg.xkill
245 pkgs.xsane
246 pkgs.yubikey-personalization-gui
247 ];
248 }