#TODO: keys will not be shared in all platforms { flakes, config, pkgs, lib, ... }: with lib; { imports = [ ./modules ]; xdg.enable = true; programs = { zsh = { enable = true; syntaxHighlighting.enable = true; initExtra = import ./zshrc.nix pkgs; }; git = { enable = true; userEmail = "fabian@posixlycorrect.com"; userName = "Fabian Montero"; signing = { key = "7AA277E604A4173916BBB4E91FFAC35E1798174F"; signByDefault = true; }; }; gpg = { enable = true; settings = { default-key = "7AA277E604A4173916BBB4E91FFAC35E1798174F"; }; }; }; services.gpg-agent = { enable = true; enableZshIntegration = true; pinentryPackage = pkgs.pinentry-emacs; }; accounts.email.accounts = { "fabian@posixlycorrect.com" = { address = "fabian@posixlycorrect.com"; userName = "fabianmontero@fastmail.com"; realName = "fabian"; primary = true; flavor = "fastmail.com"; gpg = { encryptByDefault = true; signByDefault = true; key = "7AA277E604A4173916BBB4E91FFAC35E1798174F"; }; }; }; }