feat: project vaultwarden unfucked

This commit is contained in:
Nick 2025-12-11 00:43:45 -06:00
parent a262bd483d
commit 2b1a44d591
6 changed files with 34 additions and 17 deletions

View file

@ -19,6 +19,10 @@ in
host,
mnt,
inter,
smtpFrom,
smtpHost,
smtpPort,
smtpUser,
}:
{
microvm.vms = {
@ -40,11 +44,11 @@ in
# Email Configuration
SMTP_AUTH_MECHANISM = "Plain";
SMTP_EMBED_IMAGES = true;
SMTP_FROM = smtpCfg.interfaces.interface0.email;
SMTP_FROM = smtpFrom;
SMTP_FROM_NAME = serviceCfg.label;
SMTP_HOST = smtpCfg.interfaces.interface0.domain;
SMTP_PORT = smtpCfg.ports.port0;
SMTP_USERNAME = smtpCfg.interfaces.interface0.email;
SMTP_HOST = smtpHost;
SMTP_PORT = smtpPort;
SMTP_USERNAME = smtpUser;
SMTP_SECURITY = "starttls";
# Security Configuration
@ -78,7 +82,9 @@ in
};
networking.firewall.allowedTCPPorts = [
22
465
587
2525
serviceCfg.ports.port0
];
systemd = {

View file

@ -7,20 +7,25 @@ let
inherit (import ../../../helpers.nix { inherit flake; }) labHelpers;
inherit (labHelpers) mntPath;
inherit (import ../config { inherit flake; }) vaultwardenVM;
inherit (flake.config.people) user0;
inherit (flake.config.services.instances) vaultwarden;
inherit (flake.config.services) instances;
interface0Cfg = vaultwarden.interfaces.interface1;
interface0Cfg = instances.vaultwarden.interfaces.interface1;
smtpCfg = instances.smtp;
host = flake.inputs.linkpage.secrets.domains.projectsite;
vaultwardenNick = vaultwardenVM {
user = user0;
vaultwardenProject = vaultwardenVM {
user = "project";
ip = interface0Cfg.microvm.ip;
mac = interface0Cfg.microvm.mac;
userMac = interface0Cfg.microvm.macUser;
ssh = interface0Cfg.microvm.ssh;
mnt = mntPath;
inter = "enp0s5";
host = "${interface0Cfg.subdomain}.${flake.inputs.linkpage.secrets.domains.projectsite}";
host = "${interface0Cfg.subdomain}.${host}";
smtpFrom = "noreply@${host}";
smtpHost = smtpCfg.interfaces.interface0.domain;
smtpPort = smtpCfg.ports.port1;
smtpUser = "noreply@${host}";
};
in
vaultwardenNick
vaultwardenProject

View file

@ -8,9 +8,10 @@ let
inherit (labHelpers) guestPath;
inherit (import ../config { inherit flake; }) vaultwardenVM;
inherit (flake.config.people) user0;
inherit (flake.config.services.instances) vaultwarden;
inherit (flake.config.services) instances;
interface0Cfg = vaultwarden.interfaces.interface0;
interface0Cfg = instances.vaultwarden.interfaces.interface0;
smtpCfg = instances.smtp;
vaultwardenNick = vaultwardenVM {
user = user0;
@ -21,6 +22,10 @@ let
mnt = guestPath user0;
inter = "enp0s5";
host = interface0Cfg.domain;
smtpFrom = smtpCfg.interfaces.interface0.email;
smtpHost = smtpCfg.interfaces.interface0.domain;
smtpPort = smtpCfg.ports.port1;
smtpUser = smtpCfg.interfaces.interface0.email;
};
in