mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-16 11:30:53 -06:00
chore: cleaned up some stuff
This commit is contained in:
parent
09926277fd
commit
77dcbe3c33
12 changed files with 104 additions and 168 deletions
|
|
@ -11,15 +11,15 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.people.users.${user0}) email;
|
||||
inherit (flake.config.services.instances) firefly-iii;
|
||||
interface0Cfg = firefly-iii.interfaces.interface0;
|
||||
interfaceCfg = firefly-iii.interfaces.interface0;
|
||||
|
||||
fireflyNick = fireflyVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
host = interface0Cfg.domain;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
host = interfaceCfg.domain;
|
||||
owner = email.address2;
|
||||
mnt = guestPath user0;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -10,16 +10,16 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.forgejo.interfaces.interface0;
|
||||
interfaceCfg = instances.forgejo.interfaces.interface0;
|
||||
|
||||
forgejoNick = forgejoVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
};
|
||||
in
|
||||
forgejoNick
|
||||
|
|
|
|||
|
|
@ -10,16 +10,16 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.jellyfin.interfaces.interface0;
|
||||
interfaceCfg = instances.jellyfin.interfaces.interface0;
|
||||
|
||||
jellyfinCeres = jellyfinVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
};
|
||||
|
||||
in
|
||||
|
|
|
|||
|
|
@ -22,16 +22,16 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.mastodon.interfaces.interface0;
|
||||
interfaceCfg = instances.mastodon.interfaces.interface0;
|
||||
|
||||
mastodonNick = mastodonVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
};
|
||||
in
|
||||
mastodonNick
|
||||
|
|
|
|||
|
|
@ -10,17 +10,17 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services.instances) opencloud;
|
||||
|
||||
interface0Cfg = opencloud.interfaces.interface1;
|
||||
interfaceCfg = opencloud.interfaces.interface1;
|
||||
|
||||
opencloudProject = opencloudVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
inter = "enp0s6";
|
||||
host = "${interface0Cfg.subdomain}.${flake.inputs.linkpage.secrets.domains.projectsite}";
|
||||
host = "${interfaceCfg.subdomain}.${flake.inputs.linkpage.secrets.domains.projectsite}";
|
||||
};
|
||||
in
|
||||
opencloudProject
|
||||
|
|
|
|||
|
|
@ -10,17 +10,17 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services.instances) opencloud;
|
||||
|
||||
interface0Cfg = opencloud.interfaces.interface0;
|
||||
interfaceCfg = opencloud.interfaces.interface0;
|
||||
|
||||
opencloudNick = opencloudVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = guestPath user0;
|
||||
inter = "enp0s6";
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
};
|
||||
in
|
||||
opencloudNick
|
||||
|
|
|
|||
|
|
@ -10,17 +10,17 @@ let
|
|||
inherit (import ../config { inherit flake lib; }) photoprismVM;
|
||||
inherit (flake.config.services.instances) photoprism;
|
||||
inherit (flake.config.people) user0;
|
||||
interface0Cfg = photoprism.interfaces.interface0;
|
||||
interfaceCfg = photoprism.interfaces.interface0;
|
||||
|
||||
photoprismNick = photoprismVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = guestPath user0;
|
||||
data = mediaPath user0;
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
};
|
||||
in
|
||||
photoprismNick
|
||||
|
|
|
|||
|
|
@ -11,16 +11,16 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.qbittorrent.interfaces.interface0;
|
||||
interfaceCfg = instances.qbittorrent.interfaces.interface0;
|
||||
|
||||
qbittorrentCeres = qbittorrentVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
host = interface0Cfg.domain;
|
||||
host = interfaceCfg.domain;
|
||||
port = 51820;
|
||||
endpoint = "185.111.110.1";
|
||||
address = [ "10.2.0.2/32" ];
|
||||
|
|
|
|||
|
|
@ -5,6 +5,8 @@
|
|||
let
|
||||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services.instances) syncthing;
|
||||
inherit (import ../../../../helpers.nix { inherit flake; }) labHelpers;
|
||||
inherit (labHelpers) mediaPath docsPath miscPath;
|
||||
serviceCfg = syncthing;
|
||||
in
|
||||
{
|
||||
|
|
@ -17,10 +19,6 @@ in
|
|||
userMac,
|
||||
ssh,
|
||||
mnt,
|
||||
folders,
|
||||
devices,
|
||||
tmp,
|
||||
mounts,
|
||||
}:
|
||||
{
|
||||
microvm.vms = {
|
||||
|
|
@ -39,15 +37,11 @@ in
|
|||
openDefaultPorts = true;
|
||||
systemService = true;
|
||||
guiAddress = "0.0.0.0:${toString serviceCfg.ports.port0}";
|
||||
# guiPasswordFile = "/run/secrets/${user}-pass";
|
||||
|
||||
settings = {
|
||||
gui = {
|
||||
user = user;
|
||||
password = pass;
|
||||
};
|
||||
folders = folders;
|
||||
devices = devices;
|
||||
options = {
|
||||
urAccepted = -1;
|
||||
};
|
||||
|
|
@ -97,8 +91,10 @@ in
|
|||
|
||||
tmpfiles.rules = [
|
||||
"d /var/lib/${serviceCfg.name} 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
]
|
||||
++ tmp;
|
||||
"d /var/lib/${serviceCfg.name}/docs 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
"d /var/lib/${serviceCfg.name}/media 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
"d /var/lib/${serviceCfg.name}/misc 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
];
|
||||
};
|
||||
microvm = {
|
||||
vcpu = 1;
|
||||
|
|
@ -136,14 +132,32 @@ in
|
|||
source = "${mnt}/${serviceCfg.name}";
|
||||
tag = "${serviceCfg.name}_${user}_data";
|
||||
}
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/docs";
|
||||
proto = "virtiofs";
|
||||
source = docsPath user;
|
||||
tag = "${serviceCfg.name}_${user}_docs";
|
||||
}
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/media";
|
||||
proto = "virtiofs";
|
||||
source = mediaPath user;
|
||||
tag = "${serviceCfg.name}_${user}_media";
|
||||
}
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/misc";
|
||||
proto = "virtiofs";
|
||||
source = miscPath user;
|
||||
tag = "${serviceCfg.name}_${user}_misc";
|
||||
}
|
||||
|
||||
{
|
||||
mountPoint = "/run/secrets";
|
||||
proto = "virtiofs";
|
||||
source = "/run/secrets/${serviceCfg.name}";
|
||||
tag = "host_secrets";
|
||||
}
|
||||
]
|
||||
++ mounts;
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -4,99 +4,21 @@
|
|||
}:
|
||||
let
|
||||
inherit (import ../../../helpers.nix { inherit flake; }) labHelpers;
|
||||
inherit (labHelpers)
|
||||
guestPath
|
||||
mediaPath
|
||||
docsPath
|
||||
miscPath
|
||||
;
|
||||
inherit (labHelpers) guestPath;
|
||||
inherit (import ../config { inherit flake; }) syncthingVM;
|
||||
inherit (flake.config.services) instances;
|
||||
inherit (flake.config.people) user0;
|
||||
serviceCfg = instances.syncthing;
|
||||
interface0Cfg = serviceCfg.interfaces.interface0;
|
||||
interfaceCfg = serviceCfg.interfaces.interface0;
|
||||
|
||||
foldersHelper = user: {
|
||||
docs = {
|
||||
enable = true;
|
||||
id = "docs";
|
||||
path = "/var/lib/${serviceCfg.name}/docs";
|
||||
devices = [
|
||||
"${user}Phone"
|
||||
];
|
||||
};
|
||||
media = {
|
||||
enable = true;
|
||||
id = "media";
|
||||
path = "/var/lib/${serviceCfg.name}/media";
|
||||
devices = [
|
||||
"${user}Phone"
|
||||
];
|
||||
};
|
||||
misc = {
|
||||
enable = true;
|
||||
id = "misc";
|
||||
path = "/var/lib/${serviceCfg.name}/misc";
|
||||
devices = [
|
||||
"${user}Phone"
|
||||
];
|
||||
};
|
||||
syncthingNick = syncthingVM {
|
||||
user = user0;
|
||||
pass = "$2y$05$WoNmQOeBPM5GhxhgkUmZqOoyBU0Y34e9N7gLZ3Xwb2J8V0j5Uoy7u";
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = guestPath user0;
|
||||
};
|
||||
|
||||
devicesHelper = user: syncID: device: deviceIP: {
|
||||
"${user}${device}" = {
|
||||
autoAcceptFolders = true;
|
||||
name = "${user}${device}";
|
||||
addresses = [
|
||||
"tcp://${deviceIP}:${toString serviceCfg.ports.port2}"
|
||||
];
|
||||
id = syncID;
|
||||
};
|
||||
};
|
||||
|
||||
mountsHelper = user: [
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/docs";
|
||||
proto = "virtiofs";
|
||||
source = docsPath user;
|
||||
tag = "${serviceCfg.name}_${user}_docs";
|
||||
}
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/media";
|
||||
proto = "virtiofs";
|
||||
source = mediaPath user;
|
||||
tag = "${serviceCfg.name}_${user}_media";
|
||||
}
|
||||
{
|
||||
mountPoint = "/var/lib/${serviceCfg.name}/misc";
|
||||
proto = "virtiofs";
|
||||
source = miscPath user;
|
||||
tag = "${serviceCfg.name}_${user}_misc";
|
||||
}
|
||||
];
|
||||
|
||||
tmpRulesIn = [
|
||||
"d /var/lib/${serviceCfg.name}/docs 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
"d /var/lib/${serviceCfg.name}/media 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
"d /var/lib/${serviceCfg.name}/misc 0755 ${serviceCfg.name} ${serviceCfg.name} -"
|
||||
];
|
||||
|
||||
syncthingNick =
|
||||
let
|
||||
phoneID = "OALKHLZ-OODUWVX-PAC2LI7-UMZMSZO-FELLRCD-RS4DHJS-PVA5YQK-WTFXXQI";
|
||||
in
|
||||
syncthingVM {
|
||||
user = user0;
|
||||
pass = "$2y$05$WoNmQOeBPM5GhxhgkUmZqOoyBU0Y34e9N7gLZ3Xwb2J8V0j5Uoy7u";
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
mnt = guestPath user0;
|
||||
folders = foldersHelper user0;
|
||||
devices = devicesHelper user0 phoneID "Phone" "192.168.50.8";
|
||||
mounts = mountsHelper user0;
|
||||
tmp = tmpRulesIn;
|
||||
};
|
||||
in
|
||||
syncthingNick
|
||||
|
|
|
|||
|
|
@ -9,22 +9,22 @@ let
|
|||
inherit (import ../config { inherit flake; }) vaultwardenVM;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.vaultwarden.interfaces.interface1;
|
||||
smtpCfg = instances.smtp;
|
||||
interfaceCfg = instances.vaultwarden.interfaces.interface1;
|
||||
smtCfg = instances.smtp;
|
||||
host = flake.inputs.linkpage.secrets.domains.projectsite;
|
||||
|
||||
vaultwardenProject = vaultwardenVM {
|
||||
user = "project";
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
mnt = mntPath;
|
||||
inter = "enp0s5";
|
||||
host = "${interface0Cfg.subdomain}.${host}";
|
||||
host = "${interfaceCfg.subdomain}.${host}";
|
||||
smtpFrom = "noreply@${host}";
|
||||
smtpHost = smtpCfg.interfaces.interface0.domain;
|
||||
smtpPort = smtpCfg.ports.port1;
|
||||
smtpHost = smtCfg.interfaces.interface0.domain;
|
||||
smtpPort = smtCfg.ports.port1;
|
||||
smtpUser = "noreply@${host}";
|
||||
};
|
||||
in
|
||||
|
|
|
|||
|
|
@ -10,22 +10,22 @@ let
|
|||
inherit (flake.config.people) user0;
|
||||
inherit (flake.config.services) instances;
|
||||
|
||||
interface0Cfg = instances.vaultwarden.interfaces.interface0;
|
||||
smtpCfg = instances.smtp;
|
||||
interfaceCfg = instances.vaultwarden.interfaces.interface0;
|
||||
smtCfg = instances.smtp;
|
||||
|
||||
vaultwardenNick = vaultwardenVM {
|
||||
user = user0;
|
||||
ip = interface0Cfg.microvm.ip;
|
||||
mac = interface0Cfg.microvm.mac;
|
||||
userMac = interface0Cfg.microvm.macUser;
|
||||
ssh = interface0Cfg.microvm.ssh;
|
||||
ip = interfaceCfg.microvm.ip;
|
||||
mac = interfaceCfg.microvm.mac;
|
||||
userMac = interfaceCfg.microvm.macUser;
|
||||
ssh = interfaceCfg.microvm.ssh;
|
||||
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;
|
||||
host = interfaceCfg.domain;
|
||||
smtpFrom = smtCfg.interfaces.interface0.email;
|
||||
smtpHost = smtCfg.interfaces.interface0.domain;
|
||||
smtpPort = smtCfg.ports.port1;
|
||||
smtpUser = smtCfg.interfaces.interface0.email;
|
||||
};
|
||||
|
||||
in
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue