Compare commits

...

2 commits

14 changed files with 76 additions and 334 deletions

View file

@ -180,11 +180,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1706134977, "lastModified": 1706306660,
"narHash": "sha256-KwNb1Li3K6vuVwZ77tFjZ89AWBo7AiCs9t0Cens4BsM=", "narHash": "sha256-lZvgkHtVeduGByPb0Tz9LpAi4olfkEm8XPgv0o7GRsk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "6359d40f6ec0b72a38e02b333f343c3d4929ec10", "rev": "b2f56952074cb46e93902ecaabfb04dd93733434",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -296,11 +296,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1705856552, "lastModified": 1706191920,
"narHash": "sha256-JXfnuEf5Yd6bhMs/uvM67/joxYKoysyE3M2k6T3eWbg=", "narHash": "sha256-eLihrZAPZX0R6RyM5fYAWeKVNuQPYjAkCUBr+JNvtdE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "612f97239e2cc474c13c9dafa0df378058c5ad8d", "rev": "ae5c332cbb5827f6b1f02572496b141021de335f",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1,6 +1,12 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
let let
domain = "matrix.${config.networking.domain}"; domain = "matrix.${config.networking.domain}";
domainClient = "chat.${config.networking.domain}";
clientConfig = {
"m.homeserver" = {
base_url = "https://${domain}:443";
};
};
in in
{ {
@ -73,6 +79,23 @@ in
locations."~ ^/(client/|_matrix/client/unstable/org.matrix.msc3575/sync)".proxyPass = "http://localhost:8009"; locations."~ ^/(client/|_matrix/client/unstable/org.matrix.msc3575/sync)".proxyPass = "http://localhost:8009";
# locations."/_synapse/client".proxyPass = "http://[::1]:8008"; # locations."/_synapse/client".proxyPass = "http://[::1]:8008";
}; };
# element
"${domainClient}" = {
enableACME = true;
forceSSL = true;
root = pkgs.element-web.override {
conf = {
default_server_config = {
inherit (clientConfig) "m.homeserver";
"m.identity_server".base_url = "";
};
disable_3pid_login = true;
};
};
};
}; };
}; };
}; };

View file

@ -93,6 +93,9 @@
}; };
}; };
documentation.dev.enable = true; documentation = {
dev.enable = true;
man.generateCaches = true;
};
system.stateVersion = "22.11"; system.stateVersion = "22.11";
} }

View file

@ -32,10 +32,5 @@ in
"secrets/falkenstein/borg/key.age".publicKeys = [ rouven falkenstein ]; "secrets/falkenstein/borg/key.age".publicKeys = [ rouven falkenstein ];
# rouven (home manager) # rouven (home manager)
"secrets/rouven/mail/rfive.age".publicKeys = [ rouven ];
"secrets/rouven/mail/ifsr.age".publicKeys = [ rouven ];
"secrets/rouven/mail/tu-dresden.age".publicKeys = [ rouven ];
"secrets/rouven/mail/agdsn.age".publicKeys = [ rouven ];
"secrets/rouven/mail/google.age".publicKeys = [ rouven ];
"secrets/rouven/spotify.age".publicKeys = [ rouven ]; "secrets/rouven/spotify.age".publicKeys = [ rouven ];
} }

Binary file not shown.

View file

@ -1,8 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 uWbAHQ NCh3pLPZc0yFNmZD2BNjwTaMWm6pKX0JZcQmARfDzwo
tLw4JjYImQ7Sx5zC5A+MtdifsyZ4gfKtnEE37oPtO00
-> 9)3p3u-grease +=v = @x Mbn`+p
9oxiykzLx/ZhSKwEnFynCUgPDq1AXJAGsT5Qa2g7+1FQoWwJMB7oMECKt5vF2a/h
1GFeeRfFUWw4FCu8iE77OsLWIyQcOX20xcdhdqxA+A
--- wjfDMipqiLXDA6u8T1UH1w8Tm+Xj2PFp8szWSsHnDYA
IÁÍhI„>…Eă2™˙¶b1ĄŹy ˙0Ĺ4Äů (Ą\/dŰŻµîöY:

View file

@ -1,8 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 uWbAHQ 0Uy/VY+06acvXjAKFy5jcN8q692+8sZH9E3ZUHSaUUo
6T56w2tmJAvaeGb5oHPyU1t8mexFnV+foVoJl98G6rQ
-> fE4oms$-grease - !fp3#J th
OA
--- IIBHPUhMYp1bS9Yig7YAyi+abT66ZRd2PyZdPk+k1dg
Í,h-Á<>Lf^OçòǘÐÃjuÙ<75>¾©õx`Qñ;ù\×ÑcTK\
ø År~?¼trXØ

View file

@ -1,8 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 uWbAHQ oELRB+KJpT8EfcqyNEdtfaJgiN9aX/1mgKHxqKCPyF8
ZxVFzwByLOSbSIsX3QtHmEDb5a5Xo/bkHNIgJQqB2cU
-> m-grease (HaFdz_<
nhPnLs6P+M/Yw9TxmTZ6gKXmQusgFz46+/Ad8QA9YlcjkM9hhEsJkTBoLp6uv++8
Gjfle0y4R/p7xIOyLKGat5wPXCzk4XxTz8o7c9IXshRR+unkRthsEG6qebNR
--- CFBseeDK5oKdeH1yLe1tVWPkmcWtSPrwtbxrAqJsydc
èòiNZ¦Â(z»W©7®~ž"¯«žrœM¿[¶.ºÜ-dQ«R¹ùlCælD¶I-§ò:çÕ5t?¬ôð(åÅX¾Ž<C2BE>"

Binary file not shown.

View file

@ -1,291 +0,0 @@
{ config, pkgs, ... }:
let
gpg-default-key = "116987A8DD3F78FF8601BF4DB95E8FE6B11C4D09";
in
{
age.secrets = {
"mail/rfive".file = ../../../../secrets/rouven/mail/rfive.age;
"mail/tu-dresden".file = ../../../../secrets/rouven/mail/tu-dresden.age;
"mail/ifsr".file = ../../../../secrets/rouven/mail/ifsr.age;
"mail/agdsn".file = ../../../../secrets/rouven/mail/agdsn.age;
"mail/google".file = ../../../../secrets/rouven/mail/google.age;
};
programs = {
aerc = {
enable = true;
extraConfig = {
general = {
unsafe-accounts-conf = true;
};
ui = {
sort = "date";
dirlist-tree = true;
fuzzy-complete = true;
styleset-name = "dracula";
threading-enabled = true;
icon-encrypted = "󰯄";
icon-signed = "";
icon-unknown = "";
icon-attachment = "";
icon-new = "";
icon-old = "";
icon-replied = "";
icon-marked = "";
icon-deleted = "";
};
filters = {
"text/plain" = "colorize";
"text/html" = "html | colorize";
"message/delivery-status" = "colorize";
"message/rfc822" = "colorize";
"text/calendar" = "calendar";
};
};
};
thunderbird = {
enable = true;
profiles = {
default = {
withExternalGnupg = true;
isDefault = true;
settings = {
"intl.date_time.pattern_override.connector_short" = "{1} {0}";
"intl.date_time.pattern_override.date_short" = "yyyy-MM-dd";
"intl.date_time.pattern_override.time_short" = "HH:mm";
};
};
};
};
mbsync.enable = true;
};
accounts.email.accounts = {
"rouven@rfive.de" = rec {
address = "rouven@rfive.de";
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = address;
passwordCommand = "${pkgs.coreutils}/bin/cat ${config.age.secrets."mail/rfive".path}";
imap = {
host = "mail.rfive.de";
port = 993;
};
smtp = {
host = "mail.rfive.de";
port = 465;
};
thunderbird.enable = true;
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
aerc.enable = true;
};
"TU-Dresden" = rec {
address = "rouven.seifert@mailbox.tu-dresden.de";
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = "rose159e";
passwordCommand = "${pkgs.coreutils}/bin/cat ${config.age.secrets."mail/tu-dresden".path}";
imap = {
host = "msx.tu-dresden.de";
port = 993;
};
smtp = {
host = "msx.tu-dresden.de";
port = 587;
tls.useStartTls = true;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
groups.tud = {
channels.inbox = {
nearPattern = "INBOX";
farPattern = "INBOX";
extraConfig.Create = "near";
};
channels.opal = {
nearPattern = "Opal";
farPattern = "Opal";
extraConfig.Create = "near";
};
channels.unispam = {
nearPattern = "Uni Spam";
farPattern = "Uni Spam";
extraConfig.Create = "near";
};
# channels.modules = {
# nearPattern = "Module";
# farPattern = "Module";
# extraConfig.Create = "near";
# };
channels.trash = {
nearPattern = "Trash";
farPattern = "Gel&APY-schte Elemente";
extraConfig.Create = "near";
};
channels.sent = {
nearPattern = "Sent";
farPattern = "Gesendete Elemente";
extraConfig.Create = "near";
};
channels.junk = {
nearPattern = "Junk";
farPattern = "Junk-E-Mail";
extraConfig.Create = "near";
};
channels.drafts = {
nearPattern = "Drafts";
farPattern = "Entw&APw-rfe";
extraConfig.Create = "near";
};
};
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
thunderbird.enable = true;
aerc.enable = true;
};
"iFSR" = rec {
address = "rouven.seifert@ifsr.de";
signature = {
showSignature = "append";
text = ''
Rouven Seifert
Co-Admin im Fachschaftsrat Informatik TU Dresden
Fakultät Informatik
Nöthnitzer Str. 46, 01187 Dresden
'';
};
primary = true;
gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = "rouven.seifert";
passwordCommand = "${pkgs.coreutils}/bin/cat ${config.age.secrets."mail/ifsr".path}";
imap = {
host = "mail.ifsr.de";
port = 993;
};
smtp = {
host = "mail.ifsr.de";
port = 465;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
thunderbird.enable = true;
aerc.enable = true;
};
"agdsn" = rec {
address = "r5@agdsn.me";
# gpg.key = gpg-default-key;
realName = "Rouven Seifert";
userName = "r5@agdsn.me";
aliases = [
"r5@agdsn.de"
"rouven.seifert@agdsn.de"
];
passwordCommand = "${pkgs.coreutils}/bin/cat ${config.age.secrets."mail/agdsn".path}";
imap = {
host = "imap.agdsn.de";
port = 993;
};
smtp = {
host = "smtp.agdsn.de";
port = 465;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
thunderbird.enable = true;
aerc.enable = true;
};
"gmail" = rec {
address = "seifertrouven@gmail.com";
realName = "Rouven Seifert";
userName = address;
passwordCommand = "${pkgs.coreutils}/bin/cat ${config.age.secrets."mail/google".path}";
imap = {
host = "imap.gmail.com";
port = 993;
};
smtp = {
host = "smtp.gmail.com";
port = 465;
};
mbsync = {
enable = true;
create = "maildir";
expunge = "both";
groups.gmail = {
channels.inbox = {
nearPattern = "INBOX";
farPattern = "INBOX";
extraConfig.Create = "near";
};
channels.trash = {
nearPattern = "Trash";
farPattern = "[Gmail]/Papierkorb";
extraConfig.Create = "near";
};
channels.junk = {
nearPattern = "Junk";
farPattern = "[Gmail]/Spam";
extraConfig.Create = "near";
};
channels.drafts = {
nearPattern = "Drafts";
farPattern = "[Gmail]/Entw&APw-rfe";
extraConfig.Create = "near";
};
channels.hetzner = {
nearPattern = "Hetzner";
farPattern = "Hetzner";
extraConfig.Create = "near";
};
channels.studentenwerk = {
nearPattern = "Studentenwerk";
farPattern = "Studentenwerk";
extraConfig.Create = "near";
};
};
extraConfig = {
account = {
AuthMechs = "Login";
};
};
};
thunderbird.enable = true;
aerc.enable = true;
};
};
home.file.".gnupg/dirmngr_ldapservers.conf".text = ''
ldap.pca.dfn.de::::o=DFN-Verein,c=DE
'';
}

View file

@ -1,7 +1,6 @@
{ ... }: { ... }:
{ {
imports = [ imports = [
./accounts
./foot ./foot
./git ./git
./gpg ./gpg

View file

@ -64,13 +64,43 @@
nodejs_20 nodejs_20
gnumake gnumake
go go
# fancy tools
just just
himalaya
zellij
nushell
# strace but with colors
(strace.overrideAttrs (_: {
patches = [
(fetchpatch {
url = "https://raw.githubusercontent.com/xfgusta/strace-with-colors/main/strace-with-colors.patch";
hash = "sha256-gcQldGsRgvGnrDX0zqcLTpEpchNEbCUFdKyii0wetEI=";
})
];
}))
]; ];
programs.obs-studio.enable = true; programs.obs-studio.enable = true;
programs.firefox.enable = true; programs.firefox.enable = true;
programs = {
thunderbird = {
enable = true;
profiles = {
default = {
withExternalGnupg = true;
isDefault = true;
settings = {
"intl.date_time.pattern_override.connector_short" = "{1} {0}";
"intl.date_time.pattern_override.date_short" = "yyyy-MM-dd";
"intl.date_time.pattern_override.time_short" = "HH:mm";
};
};
};
};
};
services.gnome-keyring.enable = true; services.gnome-keyring.enable = true;
xdg.mimeApps = { xdg.mimeApps = {

View file

@ -8,7 +8,7 @@
enable = true; enable = true;
settings = { settings = {
global = { global = {
username = config.accounts.email.accounts."gmail".address; username = "seifertrouven@gmail.com";
password_cmd = "${pkgs.coreutils}/bin/cat ${config.age.secrets.spotify.path}"; password_cmd = "${pkgs.coreutils}/bin/cat ${config.age.secrets.spotify.path}";
}; };
backend = "pulseaudio"; backend = "pulseaudio";

View file

@ -53,19 +53,26 @@ in
RequestTTY = "yes"; RequestTTY = "yes";
RemoteCommand = "zsh -i"; RemoteCommand = "zsh -i";
}; };
}; };
"quitte-notty" = { "quitte-notty" = {
hostname = "quitte.ifsr.de"; hostname = "quitte.ifsr.de";
user = "root"; user = "root";
}; };
"durian" = {
hostname = "durian.ifsr.de";
user = "root";
};
"tomate" = { "tomate" = {
hostname = "tomate.ifsr.de"; hostname = "tomate.ifsr.de";
user = "root"; user = "root";
extraOptions = {
RequestTTY = "yes";
RemoteCommand = "zsh -i";
};
};
"tomate-notty" = {
hostname = "tomate.ifsr.de";
user = "root";
};
"durian" = {
hostname = "durian.ifsr.de";
user = "root";
}; };
"git@ifsr.de" = { "git@ifsr.de" = {
match = "Host ifsr.de User git"; match = "Host ifsr.de User git";