10 ../../../home-manager/profiles/chat.nix
11 ../../../home-manager/profiles/developing.nix
12 ../../../home-manager/profiles/direnv.nix
13 ../../../home-manager/profiles/drawing.nix
14 ../../../home-manager/profiles/element.nix
15 ../../../home-manager/profiles/firefox.nix
16 ../../../home-manager/profiles/gaming.nix
17 ../../../home-manager/profiles/git.nix
18 ../../../home-manager/profiles/gnupg.nix
19 ../../../home-manager/profiles/graphical.nix
20 ../../../home-manager/profiles/lang-cmn.nix
21 ../../../home-manager/profiles/lf.nix
22 ../../../home-manager/profiles/mpv.nix
23 ../../../home-manager/profiles/networking.nix
24 ../../../home-manager/profiles/nix.nix
25 ../../../home-manager/profiles/radicle.nix
26 ../../../home-manager/profiles/radio.nix
27 ../../../home-manager/profiles/science.nix
28 ../../../home-manager/profiles/signal.nix
29 ../../../home-manager/profiles/thunderbird.nix
30 ../../../home-manager/profiles/video.nix
31 ../../../home-manager/profiles/wine.nix
32 ../../../home-manager/profiles/wireless.nix
33 ../../../home-manager/profiles/yt-dlp.nix
35 ../../../home-manager/profiles/emacs.nix
36 ../../../home-manager/profiles/ghc.nix
37 #../../../home-manager/profiles/starship.nix
38 ../../../home-manager/profiles/xmonad.nix
39 ../../../home-manager/profiles/arbtt.nix
40 ../../../home-manager/profiles/music.nix
44 programs.bash.shellAliases.riseup = "sudo ip netns exec riseup sudo -u $USER PULSE_SERVER=/run/user/$(id -u $USER)/pulse/native";
45 programs.gpg.homedir = "${config.home.homeDirectory}/files/sec/.gnupg";
46 home.sessionVariables = {
47 PASSWORD_STORE_DIR = "$HOME/files/sec/.password-store";
48 #(pkgs.jre17_minimal.override { modules = [ "java.base" "java.desktop" "java.logging" "java.sql" ]; })
49 JAVA_HOME = pkgs.libreoffice.unwrapped.jdk;
54 pkgs.ffmpeg.override {
76 # ExplanationNote: psnup conflicts with pkgs.texlive.combined.scheme-*
77 (lib.lowPrio pkgs.psutils)
85 pkgs.kdePackages.marble
96 pkgs.transmission-remote-gtk
100 #(pkgs.qgis.override { extraPythonPackages = (ps: [
101 # ps.pyqt5_with_qtwebkit
123 services.fluidsynth.enable = false;
126 user's LoadCredentialEncrypted= needs systemd v258
127 systemd.user.services.radicle-node = {
129 LoadCredentialEncrypted = [
130 "radicle:${nan2gua1/radicle/radicle.clear}"
131 "radicle.pub:${nan2gua1/radicle/radicle.pub}"
133 BindReadOnlyPaths = [
134 "/run/user/1000/credentials/radicle-node.service/radicle:/home/julm/.radicle/keys/radicle"
135 "${nan2gua1/radicle/radicle.pub}:/home/julm/.radicle/keys/radicle.pub"
139 ConditionPathExists = lib.mkForce [];
144 xdg.dataFile."arbtt/categorize.cfg".text = ''
145 $idle > 30 ==> tag inactive,
147 current window $program = ["evince", "Evince"] && current window $title =~ m!(.*) — (.*)!
149 current window $program = ["gl", "mpv"] && current window $title =~ m!MPV: playing: ([^:]*)!
151 current window $program = ["Navigator"] && current window $title =~ m!Web: ([^:]*): ([^:]*)!
153 current window $title =~ m!Term: ([^:]*): (?:~|/home/julm)/(?:src|work)/(.*)!
155 current window $title =~ m!Term: ([^:]*): (?:~|/home/julm)/(?:files)/(.*)!
158 tag Desktop:$current.desktop,
159 tag Program:$current.program,
162 home.file.".Xmodmap".text = ''
163 ! Make Control_R behave like Super_L, the modMask used in Xmonad
164 remove control = Control_R
170 enableGnomeExtensions = false;
171 speechSynthesisSupport = true;
174 # Allow access to the systemd-instantiated gpg-agent socket
175 # See https://github.com/netblue30/firejail/issues/1422#issuecomment-377263770
176 "--writable-run-user"
177 "--whitelist=\\\${RUNUSER}/gnupg"
178 # Enable access to pass(1) in /etc/profiles/per-user/julm/bin/pass
179 "--private-etc=static/profiles,profiles"
181 # For browserpass's native extension
182 "--whitelist=\\\${HOME}/.gnupg"
183 "--whitelist=\\\${HOME}/.password-store"
184 "--read-only=\\\${HOME}/.gnupg"
185 "--read-only=\\\${HOME}/.password-store"
187 "--whitelist=\\\${HOME}/files/sec/.gnupg"
188 "--whitelist=\\\${HOME}/files/sec/.password-store"
189 "--read-only=\\\${HOME}/files/sec/.gnupg"
190 "--read-only=\\\${HOME}/files/sec/.password-store"
192 "--profile=${pkgs.firejail}/etc/firejail/firefox.profile"
195 # about:policies#documentation
197 CaptivePortal = false;
202 DisableAppUpdate = true;
203 DisableFirefoxAccounts = true;
204 DisableFirefoxStudies = true;
205 DisablePocket = true;
206 DisableTelemetry = true;
207 DontCheckDefaultBrowser = true;
212 NetworkPrediction = false;
213 PromptForDownloadLocation = true;
215 PreventInstalls = true;
217 SearchSuggestEnabled = false;
219 ExtensionRecommendations = false;
220 SkipOnboarding = true;
226 Cannot be automounted
227 systemd.user.mounts = {
231 "network-online.target"
232 "wireguard-wg-intra.target"
235 "network-online.target"
236 "wireguard-wg-intra.target"
240 WantedBy = ["default.target"];
243 What = "julm@aubergine.sp:/";
244 Where = "/mnt/aubergine";
246 Options = lib.concatStringsSep "," [
251 "exec" # Override "user"'s noexec
258 # Does not work for user mounts
259 #"x-systemd.automount"
260 "IdentityFile=/home/julm/.ssh/id_ed25519"
261 #"Compression=yes" # YMMV
262 # Disconnect approximately 2*15=30 seconds after a network failure
263 "ServerAliveCountMax=1"
264 "ServerAliveInterval=15"
271 Automounting does not work without root privileges
272 systemd.user.automounts = {
275 WantedBy = ["user.target"];
280 Where = "/mnt/aubergine";
281 TimeoutIdleSec = "5 min";