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