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