feat(MOMO): setup syncthing and vaultwarden

This commit is contained in:
Jacob Bachmann 2025-01-01 21:33:50 +01:00
parent 7968a18271
commit 6ca4dd9e57
No known key found for this signature in database
GPG key ID: 7753026D577922A6
33 changed files with 419 additions and 149 deletions

View file

@ -13,6 +13,8 @@
];
bchmnn = {
home.enable = true;
git = {
signing = {
key = "0x7753026D577922A6";

View file

@ -50,10 +50,6 @@
domain = "anki.dryb.org";
answer = "192.168.2.40";
}
{
domain = "vaultwarden.dryb.org";
answer = "192.168.2.40";
}
{
domain = "paperless.dryb.org";
answer = "192.168.2.40";
@ -62,6 +58,22 @@
domain = "jellyfin.dryb.org";
answer = "192.168.2.40";
}
{
domain = "momo.dryb.org";
answer = "188.245.216.128";
}
{
domain = "momo.dryb.org";
answer = "2a01:4f8:1c1e:8abc::1";
}
{
domain = "syncthing.dryb.org";
answer = "momo.dryb.org";
}
{
domain = "vaultwarden.dryb.org";
answer = "momo.dryb.org";
}
];
};
dhcp = {

View file

@ -11,6 +11,5 @@
./nginx.nix
./paperless.nix
./postgresql.nix
./vaultwarden.nix
];
}

View file

@ -111,13 +111,6 @@
icon = "si-anki";
};
}
{
"Vaultwarden" = {
description = "https://vaultwarden.dryb.org";
href = "https://vaultwarden.dryb.org";
icon = "vaultwarden";
};
}
{
"Paperless" = {
description = "https://paperless.dryb.org";

View file

@ -36,13 +36,6 @@
proxyPass = "http://127.0.0.1:8004";
};
};
virtualHosts."vaultwarden.dryb.org" = {
useACMEHost = "dryb.org";
forceSSL = true;
locations."/" = {
proxyPass = "http://127.0.0.1:8005";
};
};
virtualHosts."paperless.dryb.org" = {
useACMEHost = "dryb.org";
forceSSL = true;

View file

@ -5,15 +5,10 @@
enable = true;
ensureDatabases = [
config.services.gitea.user
"vaultwarden"
config.services.paperless.user
];
ensureUsers = [
{
name = "vaultwarden";
ensureDBOwnership = true;
}
{
name = config.services.paperless.user;
ensureDBOwnership = true;
@ -23,14 +18,12 @@
# type database DBuser auth-method mapping
authentication = ''
local gitea all ident map=gitea-users
local vaultwarden all ident map=vaultwarden-users
local paperless all ident map=paperless-users
'';
# name sysuser dbuser
identMap = ''
gitea-users gitea gitea
vaultwarden-users vaultwarden vaultwarden
paperless-users paperless paperless
'';
};

View file

@ -1,30 +0,0 @@
{ config, ... }:
{
age.secrets.environments-vaultwarden = {
file = ../../../secrets/environments/vaultwarden.age;
# mode = "640";
# owner = "vaultwarden";
# group = "vaultwarden";
};
users.users.vaultwarden = {
description = "Vaultwarden Service";
home = "/var/lib/bitwarden_rs";
useDefaultShell = true;
isSystemUser = true;
};
services.vaultwarden = {
enable = true;
dbBackend = "postgresql";
environmentFile = config.age.secrets.environments-vaultwarden.path;
config = {
DOMAIN = "http://vaultwarden.dryb.org";
SIGNUPS_ALLOWED = false;
ROCKET_ADDRESS = "127.0.0.1";
ROCKET_PORT = 8005;
DATABASE_URL = "postgresql:///vaultwarden";
WEB_VAULT_ENABLED = true;
};
};
}