{ pkgs, lib, config, ... }: { imports = [ ./softwares.nix ./options.nix julm/mutt.nix julm/hosts/oignon.nix julm/hosts/losurdo.nix ]; host.desktop = lib.elem config.host.name [ /*"losurdo"*/ "oignon" ]; host.server = lib.elem config.host.name [ "losurdo" "mermet" ]; programs.bash.enable = true; programs.firefox = { enable = config.host.desktop; profiles."rp4xy6ye.2021" = { id = 0; name = "2021"; inherit settings; userChrome = builtins.readFile firefox/userChrome.css; }; profiles."8y3d28fa.tor" = { id = 1; name = "tor"; inherit settings; userChrome = builtins.readFile firefox/userChrome.css; }; }; programs.gpg.enable = true; home.file."${config.programs.gpg.homedir}/gpg.conf".text = '' # julm@autogeree.net trusted-key 0xD15AF7F467E8299B # julm@sourcephile.fr trusted-key 0x2E3618DD0D087650 ''; services.gpg-agent.enable = true; services.gpg-agent.sshKeys = [ # julm@autogeree.net "D275EBA09C7E1FFBFB47F6EEF164E6D56FB24AB2" # julm@sourcephile.fr "123BF80054E9E9CE2BD7B899F07207665392B727" ]; programs.direnv.enable = true; programs.htop.enable = true; programs.irssi.enable = config.host.name == "mermet" || config.host.name == "losurdo"; programs.irssi.extraConfig = builtins.readFile julm/irssi/config; home.file.".irssi/passwd".text = '' FreeNode : ${pkgs.pass}/bin/pass freenode.net/irc/julm GeekNode : ${pkgs.pass}/bin/pass geeknode.org/irc/julm IndyMedia : ${pkgs.pass}/bin/pass indymedia.org/irc/julm Libera : ${pkgs.pass}/bin/pass libera.chat/irc/julm OFTC : ${pkgs.pass}/bin/pass oftc.net/irc/julm ToileLibre : ${pkgs.pass}/bin/pass toile-libre.org/irc/julm ''; programs.man.enable = true; #programs.neovim.enable = true; programs.ssh.enable = true; programs.ssh.matchBlocks."lan.losurdo.sourcephile.fr" = { compression = true; # Helps to get a better framerate with forwardX11 forwardX11 = true; forwardX11Trusted = true; serverAliveInterval = 15; }; programs.tmux.enable = true; programs.vim.enable = true; manual.manpages.enable = false; programs.git = { enable = true; userName = "Julien Moutinho"; userEmail = "julm@sourcephile.fr"; signing.key = "0x7182433A39582282929B2A222E3618DD0D087650"; signing.signByDefault = false; package = if lib.elem config.host.name [ "losurdo" "oignon" ] then pkgs.gitFull else pkgs.gitMinimal; extraConfig = { sendemail.smtpEncryption = "ssl"; # Yes, "ssl", not "tls" which does not work because it expects STARTTLS. sendemail.smtpServer = "mail.sourcephile.fr"; sendemail.smtpServerPort = "465"; sendemail.smtpUser = "julm@sourcephile.fr"; }; }; services.redshift.enable = lib.mkDefault config.host.desktop; xsession.enable = lib.mkDefault config.host.desktop; xsession.windowManager.xmonad.enable = lib.mkDefault config.host.desktop; home.stateVersion = "20.09"; home.sessionPath = [ "${config.home.homeDirectory}/bin" ]; home.sessionVariables = { EDITOR = "vim"; LANG = "fr_FR.UTF-8"; LESS = "-FRSX"; LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive"; MANPAGER = "less"; }; # Warning: triggers a rebuild of mumble #nixpkgs.config.mumble.speechdSupport = lib.mkDefault config.host.desktop; home.packages = [ pkgs.acpi #pkgs.amfora pkgs.aria2 pkgs.aspell pkgs.aspellDicts.fr pkgs.bc pkgs.binutils pkgs.bison pkgs.bmon #pkgs.browsh #pkgs.cabal2nix pkgs.cachix pkgs.compsize pkgs.convmv pkgs.coreutils pkgs.croc pkgs.cryptsetup pkgs.curl #pkgs.dnsutils pkgs.dstat pkgs.e2fsprogs pkgs.ethtool pkgs.exa pkgs.ffmpeg pkgs.file pkgs.flex pkgs.gcc pkgs.git-crypt pkgs.git-quick-stats #pkgs.git-remote-gpg pkgs.glib # gio #pkgs.go-mtpfs pkgs.gnumake pkgs.gvfs #pkgs.haskell.packages.ghc865.zerobin pkgs.hledger pkgs.home-manager pkgs.htop pkgs.hunspell pkgs.hunspellDicts.fr-moderne pkgs.hwinfo pkgs.imagemagick pkgs.inetutils pkgs.ipfs pkgs.jq pkgs.knot-dns pkgs.ldns pkgs.less pkgs.lftp pkgs.libfaketime pkgs.libidn pkgs.libxml2.bin #pkgs.linuxPackages.cpupower #pkgs.linuxPackages.perf pkgs.lm_sensors pkgs.lsof pkgs.lsscsi #pkgs.meli pkgs.miniupnpc pkgs.mosh pkgs.ncdu pkgs.ncurses pkgs.neofetch pkgs.nix-prefetch-git pkgs.nixpkgs-review pkgs.nmon pkgs.ntfs3g #pkgs.onionshare pkgs.openssl pkgs.opusTools pkgs.p7zip pkgs.parted pkgs.pass pkgs.pastebinit pkgs.patchelf pkgs.pciutils pkgs.podl pkgs.poppler_utils pkgs.powertop pkgs.procps #pkgs.profanity pkgs.pv pkgs.qprint pkgs.ranger pkgs.rdfind pkgs.ripgrep pkgs.sanoid pkgs.shellcheck pkgs.sipcalc pkgs.smartmontools pkgs.socat pkgs.sqlite pkgs.sshfs pkgs.stig pkgs.strace pkgs.stress pkgs.sudo pkgs.tcpdump pkgs.thttpd pkgs.tig pkgs.tree pkgs.unzip pkgs.usbutils pkgs.utillinux pkgs.vbetool pkgs.weechat pkgs.wget pkgs.wgetpaste pkgs.which pkgs.xdg_utils pkgs.xmlstarlet pkgs.xsel pkgs.youtube-dl pkgs.yubikey-personalization pkgs.zfs ] ++ lib.optionals config.host.desktop [ pkgs.amule pkgs.calibre #pkgs.chromium pkgs.dino pkgs.djview pkgs.dmenu pkgs.evince pkgs.freeciv_gtk pkgs.gajim pkgs.geeqie pkgs.gimp pkgs.glxinfo pkgs.gparted pkgs.graphviz pkgs.hicolor-icon-theme pkgs.keepass pkgs.libdvdcss pkgs.libreoffice pkgs.liferea pkgs.mplayer pkgs.mpv pkgs.mumble pkgs.networkmanager-openvpn pkgs.networkmanagerapplet pkgs.nix-du pkgs.pavucontrol pkgs.thunderbird pkgs.transmission-gtk pkgs.vlc pkgs.xclip pkgs.xorg.xkill pkgs.xsane pkgs.yubikey-personalization-gui ]; }