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