1 { pkgs, lib, config, hostName, ... }:
 
   4     ../home-manager/profiles/essential.nix
 
   5     ../home-manager/profiles/vim.nix
 
   6     ../home-manager/options.nix
 
   8     (import (julm/hosts + "/${hostName}.nix"))
 
  10   programs.bash.shellAliases = {
 
  11     firefox-calyx = "sudo systemd-run -P -p JoinsNamespaceOf=netns-calyx.service -p PrivateNetwork=true -p BindReadOnlyPaths=/etc/netns/calyx/resolv.conf:/etc/resolv.conf -E DISPLAY=$DISPLAY -p User=julm -E DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS -E LANG=$LANG -E LOCALE_ARCHIVE=$LOCALE_ARCHIVE -E PATH=$PATH -- firefox -P calyx";
 
  13   programs.browserpass.enable = config.programs.firefox.enable;
 
  14   programs.firefox.profiles =
 
  18           "browser.bookmarks.showMobileBookmarks" = true;
 
  19           "browser.compactmode.show" = true;
 
  20           "browser.search.isUS" = false;
 
  21           "browser.search.region" = "FR";
 
  22           "distribution.searchplugins.defaultLocale" = "fr-FR";
 
  23           "dom.security.https_first" = true;
 
  24           "dom.security.https_only_mode" = true;
 
  25           "general.useragent.locale" = "fr-FR";
 
  26           "privacy.globalprivacycontrol.enabled" = true;
 
  27           "privacy.globalprivacycontrol.functionality.enabled" = true;
 
  28           "security.identityblock.show_extended_validation" = true;
 
  29           "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
 
  30           #"privacy.firstparty.isolate" = true;
 
  32         userChrome = lib.readFile ../home-manager/profiles/firefox/userChrome.css;
 
  36       "0yplujgj.2022" = lib.mkMerge [
 
  42             "browser.startup.homepage" = "https://democracynow.org";
 
  46       "8y3d28fa.tor" = lib.mkMerge [
 
  52             "browser.startup.homepage" = "https://check.torproject.org";
 
  53             "privacy.firstparty.isolate" = true;
 
  57       "zqa1ck7d.calyx" = lib.mkMerge [
 
  63             "browser.startup.homepage" = "https://icanhazip.com";
 
  64             "privacy.firstparty.isolate" = true;
 
  69   home.file."${config.programs.gpg.homedir}/gpg.conf".text = ''
 
  71     trusted-key 0xD15AF7F467E8299B
 
  72     # julm@sourcephile.fr (2021-08-12)
 
  73     trusted-key 0xA58CD81C3863926F
 
  75   services.gpg-agent.sshKeys = [
 
  77     "D275EBA09C7E1FFBFB47F6EEF164E6D56FB24AB2"
 
  78     # julm@sourcephile.fr (2021-08-12)
 
  79     "3D94D14514F1EA2B6D62F1275D888897B082415D"
 
  80     # Ed25519 key added on: 2021-10-31 06:48:49
 
  81     # Fingerprints:  MD5:fe:fe:81:79:d8:7f:e4:ff:64:ac:f3:1c:bd:65:24:3a
 
  82     #                SHA256:bCfwfC8MQTjm6c1HcMLtzvGpnWRdqLwe/bvbh2jsNaA
 
  83     "F6CCA60CF05FADAE911CFBEC0BCDED22F40A19FD"
 
  84     # Radicle key added on 2024-05-21 23:24:10
 
  85     # Fingerprints:  SHA256:yhSIWvGFqN0oM/oTE1hMhEdhlSSEeCMcp/g/3TdNKYY
 
  86     "1D6AF2BF857201D98413475AE022F8A4CFC34BF0"
 
  88   programs.irssi.extraConfig = lib.readFile julm/irssi/irssi.conf;
 
  89   xdg.configFile."doom/config.el".text = lib.readFile julm/emacs/config.el;
 
  90   home.file.".irssi/passwd" = lib.mkIf config.programs.irssi.enable {
 
  92       FreeNode   : ${pkgs.pass}/bin/pass freenode.net/irc/julm
 
  93       GeekNode   : ${pkgs.pass}/bin/pass geeknode.org/irc/julm
 
  94       IndyMedia  : ${pkgs.pass}/bin/pass indymedia.org/irc/julm
 
  95       Libera     : ${pkgs.pass}/bin/pass libera.chat/irc/julm
 
  96       OFTC       : ${pkgs.pass}/bin/pass oftc.net/irc/julm
 
  97       ToileLibre : ${pkgs.pass}/bin/pass toile-libre.org/irc/julm
 
 100   programs.ssh.matchBlocks =
 
 103         #compression = true; # Helps to get a better framerate with forwardX11
 
 106         forwardX11Trusted = true;
 
 107         serverAliveInterval = 15;
 
 109           Ciphers = "aes128-gcm@openssh.com";
 
 122     lib.genAttrs [ "lan.losurdo.sourcephile.fr" "losurdo.sp" ]
 
 124         compression = true; # Helps to get a better framerate with forwardX11
 
 126         forwardX11Trusted = true;
 
 127         serverAliveInterval = 15;
 
 130     userName = "Julien Moutinho";
 
 131     userEmail = "julm@sourcephile.fr";
 
 132     signing.key = "0x4FE467034C11017B429BAC53A58CD81C3863926F";
 
 133     signing.signByDefault = false;
 
 135       sendemail.smtpEncryption = "ssl"; # Yes, "ssl", not "tls" which does not work because it expects STARTTLS.
 
 136       sendemail.smtpServer = "mail.sourcephile.fr";
 
 137       sendemail.smtpServerPort = "465";
 
 138       sendemail.smtpUser = "julm@sourcephile.fr";