mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-06 21:17:14 -06:00
feat: removed synology
This commit is contained in:
parent
afd0379585
commit
1f07e76d98
13 changed files with 6 additions and 142 deletions
|
|
@ -51,7 +51,7 @@ This contains encrypted secrets and credentials using `sops-nix`. This is a secu
|
||||||
|
|
||||||
### `systems/`
|
### `systems/`
|
||||||
|
|
||||||
This defines the system configurations for different machines. Each machine has similar configuration structure but with specific customizations. The system naming schema follows a celestial convention, with desktops being named after planets, laptops after moons, and servers after dwarf planets. The `fileSystems` configurations include helper functions for easily configuring mounts for internal storage, Synology, and samba drives.
|
This defines the system configurations for different machines. Each machine has similar configuration structure but with specific customizations. The system naming schema follows a celestial convention, with desktops being named after planets, laptops after moons, and servers after dwarf planets. The `fileSystems` configurations include helper functions for easily configuring mounts for internal storage, and samba drives.
|
||||||
|
|
||||||
### `templates/`
|
### `templates/`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -236,7 +236,6 @@ in
|
||||||
marsIP = "192.168.50.218";
|
marsIP = "192.168.50.218";
|
||||||
phoneIP = "192.168.50.243";
|
phoneIP = "192.168.50.243";
|
||||||
phobosIP = "192.168.50.180";
|
phobosIP = "192.168.50.180";
|
||||||
synologyIP = "10.0.0.122";
|
|
||||||
brotherIP = "192.168.50.195";
|
brotherIP = "192.168.50.195";
|
||||||
externalIP = "24.76.173.0";
|
externalIP = "24.76.173.0";
|
||||||
|
|
||||||
|
|
@ -251,8 +250,6 @@ in
|
||||||
laptopLabel = "Deimos";
|
laptopLabel = "Deimos";
|
||||||
laptop2 = "phobos";
|
laptop2 = "phobos";
|
||||||
laptop2Label = "Phobos";
|
laptop2Label = "Phobos";
|
||||||
nas = "synology";
|
|
||||||
nasLabel = "Synology";
|
|
||||||
phone = "pixel";
|
phone = "pixel";
|
||||||
phoneLabel = "Pixel";
|
phoneLabel = "Pixel";
|
||||||
iso = "iso";
|
iso = "iso";
|
||||||
|
|
@ -268,7 +265,6 @@ in
|
||||||
sopsPath = "/var/lib/secrets";
|
sopsPath = "/var/lib/secrets";
|
||||||
sslPath = "/var/lib/acme";
|
sslPath = "/var/lib/acme";
|
||||||
varLib = "/var/lib";
|
varLib = "/var/lib";
|
||||||
synologyName = "synology";
|
|
||||||
dummy = "";
|
dummy = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
{ moduleFunctions }:
|
|
||||||
let
|
|
||||||
inherit (moduleFunctions.devicesFunctions)
|
|
||||||
sambaPermissions
|
|
||||||
userIdForUser0
|
|
||||||
synologyIP
|
|
||||||
deviceNames
|
|
||||||
;
|
|
||||||
inherit (moduleFunctions.usersFunctions) user0 user0Label;
|
|
||||||
synologyName = deviceNames.nas;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
label = deviceNames.nasLabel;
|
|
||||||
sync = {
|
|
||||||
address0 = "MWRGX2V-F5XKE5E-REP6ECT-OOPFBMF-22NHSMW-YFBU6MB-PLFUN63-R3MW2QX"; # User0
|
|
||||||
};
|
|
||||||
name = synologyName;
|
|
||||||
ip = {
|
|
||||||
address0 = synologyIP;
|
|
||||||
};
|
|
||||||
# Nick Home Folder
|
|
||||||
folder0 = {
|
|
||||||
mount = "/mnt/media/${synologyName}/${user0}";
|
|
||||||
device = "//${synologyIP}/homes/${user0Label}";
|
|
||||||
options = sambaPermissions ++ userIdForUser0;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -5,7 +5,6 @@ let
|
||||||
varLib
|
varLib
|
||||||
sslPath
|
sslPath
|
||||||
sopsPath
|
sopsPath
|
||||||
synologyName
|
|
||||||
;
|
;
|
||||||
|
|
||||||
label = "Syncthing";
|
label = "Syncthing";
|
||||||
|
|
@ -29,7 +28,6 @@ in
|
||||||
subdomain = name;
|
subdomain = name;
|
||||||
tags = [
|
tags = [
|
||||||
name
|
name
|
||||||
synologyName
|
|
||||||
"sync"
|
"sync"
|
||||||
"thing"
|
"thing"
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
{ moduleFunctions }:
|
|
||||||
let
|
|
||||||
inherit (moduleFunctions.instancesFunctions)
|
|
||||||
sopsPath
|
|
||||||
synologyName
|
|
||||||
;
|
|
||||||
|
|
||||||
label = "Synology";
|
|
||||||
name = synologyName;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
label = label;
|
|
||||||
name = name;
|
|
||||||
short = "Nas";
|
|
||||||
tags = [
|
|
||||||
name
|
|
||||||
"dsm"
|
|
||||||
"cloud"
|
|
||||||
];
|
|
||||||
sops = {
|
|
||||||
path0 = "${sopsPath}/${name}";
|
|
||||||
};
|
|
||||||
ports = {
|
|
||||||
port0 = 5000; # Synology HTTP
|
|
||||||
port1 = 5001; # Synology HTTPS
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
{ flake, ... }:
|
{ flake, ... }:
|
||||||
let
|
let
|
||||||
inherit (flake.config.machines.devices)
|
inherit (flake.config.machines.devices)
|
||||||
synology
|
|
||||||
ceres
|
ceres
|
||||||
mars
|
mars
|
||||||
;
|
;
|
||||||
|
|
@ -59,15 +58,6 @@ let
|
||||||
instances.firefly-iii.name
|
instances.firefly-iii.name
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
|
||||||
suffix = "(Synology)";
|
|
||||||
urlTemplate =
|
|
||||||
name: "http://${synology.ip.address0}:${builtins.toString instances.${name}.ports.port0}";
|
|
||||||
services = [
|
|
||||||
instances.syncthing.name
|
|
||||||
instances.synology.name
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
|
|
||||||
generatedBookmarks = builtins.concatLists (builtins.map makeBookmarks bookmarkConfigs);
|
generatedBookmarks = builtins.concatLists (builtins.map makeBookmarks bookmarkConfigs);
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
{ flake, config, ... }:
|
{ flake, config, ... }:
|
||||||
let
|
let
|
||||||
inherit (flake.config.machines.devices)
|
inherit (flake.config.machines.devices)
|
||||||
synology
|
|
||||||
phone
|
phone
|
||||||
mars
|
mars
|
||||||
ceres
|
ceres
|
||||||
|
|
@ -19,17 +18,6 @@ let
|
||||||
backupPath = "${service.paths.path1}";
|
backupPath = "${service.paths.path1}";
|
||||||
|
|
||||||
syncDevices = {
|
syncDevices = {
|
||||||
synologySync = {
|
|
||||||
${synology.name} = {
|
|
||||||
autoAcceptFolders = true;
|
|
||||||
name = synology.name;
|
|
||||||
addresses = [
|
|
||||||
"tcp://${synology.ip.address0}:${toString service.ports.port2}"
|
|
||||||
];
|
|
||||||
id = synology.sync.address0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
phoneSync = {
|
phoneSync = {
|
||||||
${phone.name} = {
|
${phone.name} = {
|
||||||
autoAcceptFolders = true;
|
autoAcceptFolders = true;
|
||||||
|
|
@ -52,13 +40,7 @@ in
|
||||||
systemService = true;
|
systemService = true;
|
||||||
guiAddress = "${localhost}:${toString service.ports.port0}";
|
guiAddress = "${localhost}:${toString service.ports.port0}";
|
||||||
settings = {
|
settings = {
|
||||||
devices =
|
devices = if hostname == mars.name then syncDevices.phoneSync else { };
|
||||||
if hostname == mars.name then
|
|
||||||
syncDevices.phoneSync // syncDevices.synologySync
|
|
||||||
else if hostname == ceres.name then
|
|
||||||
syncDevices.synologySync
|
|
||||||
else
|
|
||||||
{ };
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ ssh:
|
||||||
public: ENC[AES256_GCM,data:Cn4hutHHeptbefHOKK7zv5TmveGOqfHAwGHogDq9sRmeb+b1lzHwj7qvg8lcnlJtIo4qS+TrKtSj5ZCsPNXOhWG1rkk97gTfPMbcxj5f1O3WJigL2wsrB2cQgc5UsA==,iv:ID4zRdr/efClOAHbXzxG1bNuJR0A2qbydzGlMhvEcRE=,tag:qbIoaGb+RXxRRkkQtuX7/A==,type:str]
|
public: ENC[AES256_GCM,data:Cn4hutHHeptbefHOKK7zv5TmveGOqfHAwGHogDq9sRmeb+b1lzHwj7qvg8lcnlJtIo4qS+TrKtSj5ZCsPNXOhWG1rkk97gTfPMbcxj5f1O3WJigL2wsrB2cQgc5UsA==,iv:ID4zRdr/efClOAHbXzxG1bNuJR0A2qbydzGlMhvEcRE=,tag:qbIoaGb+RXxRRkkQtuX7/A==,type:str]
|
||||||
hosts: ENC[AES256_GCM,data:Wx9jzofbCiPP4hDZFysVjJs8icaAv0BoGj4AenSbZMI2o6YuAaLQ0F8xaLwmUGuBVEualsRLGhlUu0Q7Qu0WKmOpb7XREOZjiV1YA0OoEwJgWid/Y7QSgceBF2e4tVCclT9+P4V16dA5sHXzKNjCelKfWc34EoIwwUJL+DjtD1mAfZzXE2hVIbAx4uY/KZaSNdNmk2QvMe5S1MXZE+066j1bV9fclcaCNytv+9de8NhiIys3qqJitz41GPz1V5h8XxxivKpKMpDe90YC2MM/sqAP8Ig4DkexSEWbFGF79K1PAbRTNQR7ccImncgYyHZy3U1fHsJZ6qfpdJIV5RKJX5lXYRF2hwNG4jpE1pAO3G2XHcEnYxEtaepfDWH84rck2KHPgSUhNoGtq0u+3AtaiO6jNIXRMcgKe2BViqT88hWGopdU6J4rYJXl9S4Za8k/zDtDvkTfTTK6XsSX/8eWnMXgTtCX8DXHhO0+Xv3owG2bbjBqSewZK8GrHMzS8i7QLauCAeczD7DQrHJ1qwQ6tgmd8KWRQniO8vWEHz51Zc7fRPKcerAS1yznNwrdPiQBAWtQhIfsm/0IJ/KGNK4Oefr+RguNDDZyrf45wL1yUIVeeOeVhitTT+aGRwLwpmIWAJtuPq14XWoZx1vaDqMqvK9h0qgze2XeQFx+uUw/GcfHjUU90dsRz6RMxBgj2S3tV0JMHrVhdcnzNTMdzOQ9YvVQATVX//XlQoWqf7e5bkUeQjQnODGGUy3c0b+oCkS7ImBc2EyT3DF+BaAlzKzsHSVXGn/kCGwxc2e8zCZcYv6fipIm/vE1jfcyzUdDQPSYBUAv9c/GEpyyW+vVS/7L6D9pgkJkVpj15zbqZFAvotZiCH9xs/RPJu1P4Vz9F9aJ2cwh3/2mkS1wa0jg/cNnQ7QLGXcs+5jYGwz9lqXsnz68jegxVvPd0HRSyTEcE4lKFtAy8E7A8G/wUfLbDrgvwezH+DsQn8agmmVo0Lao8LmHIEdqxaE4HDp+pmYhSSuJnlSaTEANKd37bdbUoxOKOsYJlOLir1eRoH0EA2eM+DJ2Bqwubz6zYJapDDnKH6gsBv3/0ix7PGnzrTIl35UnOpTidJJmoCLhEMvoj4s8ebkhCIU6FlenmwvD3o3lErOHs4S8wrNNMdNZdJ/VVhYRo0Br+i8mDAJjG8AOJJLKkTp6p4tP7Fdr1/HqAwTyDlRUWLF9DpJOIVsIzgaIr+gEuY32oLpWq47Kg1xUWT8c384bLv9wWVDXm47bMbjGo4AppY4HxdB8oLnLgbfmL1zhJKYPCDnCYVq2WQaQiBBRj7Vbd0oD1HBE+6IOGnchi3LB14GmDiBJPLFwbQIM8+8/l1/Uh57XKZMqHx217RLATkvllC7i7wbVXEjLZlUfbtgwiXfiyRqsNTxI3oUF63FSrDKA9yffMxUAe+FmSTPaAlrZw2by4rfO/ijL4/E6sm0/thwV9ULuyQtWr+pgdpv7aDpQi2lFTfa7jP+7Ioa4UWJMO3A1cKHL6Zd6vyMI+3XQOcBTV/i0KMVpU9Rr+kiBMkDvZSoK4Xru5gJUxNJ1m8BoaM0GlYW9ga4eVkUWM26RxaDgGdaCzFL1JuuhMmEpqpN27sTOVGAvQvDsfzGUdIWHuwCpbV1h0RH3FOuTiz8B76EYxgFigXxrAQWxJm+qYpdX4Xb98hg4OHS6duJY0UCwJbB9FjAFHLiKgXuqo9cVEum0EjqVKCQyfU70jq8TxcxzUPUIfvw+B3oRQxUUbut6lcVJ+iLk/pYjXM0I+JGsnvHCMWCX5BXbZXHyVPtpxLQJBZQDJMqj9veh4lCfgbXELifawcFf7Z1HR9pttmj08+DfOICDhgbcaEeWpZ8gvLvWZJQZ9S7ARn6VXJV0XXSDO4CMjE4r1diSFjLAz2DC895z1r9PHjv96ltsiClQV8Y0o7Eas+yP+N8tKDnxz3lzdgDnnwlX+VYuA99sRuBs16I61lwYn5caKQ/R2FB8g/PvIh6TnzB5PSJ8qsqicqJ0laX19t2pCTUxYi3DW6G0irUMqHtue+S62tiiL0Moyopt5wMRdsViFapMjF1vF78fAYAoVANVlLeZ65IGXIINkWff5/qjx/oqPrmdwWQWPktQt2OU4gk9OC7RUDAOhdftEzdVn1tznxErTcPotHqvAUfszCk4AyQlr6RW0EQ5qse3vnrCP1SZ9x3wN40T9taFcR3RLmJtFTqD+lp6WYyD/jUMZPSpon4f7g5V/SZ0m+dAzyIUEtrenswJKyfN3jRUEM0fnecS4LEqx0RfYyE4SzL6cR8hv/scezKOlfhIKJmyRpU1X7BCUJ4iQl+dJvaE9ZFGFzDBaDpDJrMTJGuynzjBh2C5Llz6KyTgfLaASaR7wb65oxCn2rW9D+FYuRcU1QzmHyaCuywurAsHbQRHxRWxObZNVBI1QIDWbcE/Uew0FDLNEFHliJDHOm02uvGXVWiWiF1A6hCagNQNFzDvQqA8rbF2nZWxTyIJzIgh6XsZDEUdT+SkMCnYoWdbz77r2GXx9CT418DsEUc=,iv:Q5cuA9NatrgXuOH+Bd0Pv7RP2EFswX4VcXsaqwVcbsw=,tag:5CyJaLGCIMwoVSvvpsK7Vg==,type:str]
|
hosts: ENC[AES256_GCM,data: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,iv:Q5cuA9NatrgXuOH+Bd0Pv7RP2EFswX4VcXsaqwVcbsw=,tag:5CyJaLGCIMwoVSvvpsK7Vg==,type:str]
|
||||||
network:
|
network:
|
||||||
synology: ENC[AES256_GCM,data:r0Aor25K6IuywAq5Px9JasWpnYzAA87ffA1k/97GEqMRkb6V6VYW1Q1EoEGNnBoa5o6KBtHk0WY=,iv:IeZMBwKGOevgB3bgnSsF6JJ6ntcJa5fe5irVUuMOGwY=,tag:9JWqeKa0g7YzqpKy1VLFEA==,type:str]
|
|
||||||
server: ENC[AES256_GCM,data:EFsmXNkuf5OAMh8hjfZTixmmdjqBNIME9JjQC8azeCwcMVInm8bWdxE4OqFmxOk9MAU=,iv:pI6WeM2aQC+7vx1Xmp5O2rikqNLgzuEOg+Lo7TqFQxU=,tag:ElcA8mn9dx+IjIf38nKT5A==,type:str]
|
server: ENC[AES256_GCM,data:EFsmXNkuf5OAMh8hjfZTixmmdjqBNIME9JjQC8azeCwcMVInm8bWdxE4OqFmxOk9MAU=,iv:pI6WeM2aQC+7vx1Xmp5O2rikqNLgzuEOg+Lo7TqFQxU=,tag:ElcA8mn9dx+IjIf38nKT5A==,type:str]
|
||||||
fallaryn: ENC[AES256_GCM,data:O77hH3STB6zpl0b9iXsVu9OOrlLKUwfs2qI9hdqX4kMuBs3XgT/xsQ==,iv:RDKsuJoy+LIyADMc3bgOEmLKdXtu6kad2aeVetuZdJI=,tag:MrpCZ+iJUnGIjeHMgcYG6Q==,type:str]
|
fallaryn: ENC[AES256_GCM,data:O77hH3STB6zpl0b9iXsVu9OOrlLKUwfs2qI9hdqX4kMuBs3XgT/xsQ==,iv:RDKsuJoy+LIyADMc3bgOEmLKdXtu6kad2aeVetuZdJI=,tag:MrpCZ+iJUnGIjeHMgcYG6Q==,type:str]
|
||||||
garnet: ENC[AES256_GCM,data:N8sAdjTAiubQihKrtdCkaJQBKkz6/kNdeATiaZXRhlP/HLg7zg==,iv:8QP1HnGSUGHpkwBwQY2Z0gZ6tYaK7XzMuxXexY6QQaU=,tag:fHzPh9lvqB2BmuSkVH5Ojg==,type:str]
|
garnet: ENC[AES256_GCM,data:N8sAdjTAiubQihKrtdCkaJQBKkz6/kNdeATiaZXRhlP/HLg7zg==,iv:8QP1HnGSUGHpkwBwQY2Z0gZ6tYaK7XzMuxXexY6QQaU=,tag:fHzPh9lvqB2BmuSkVH5Ojg==,type:str]
|
||||||
|
|
@ -66,7 +65,7 @@ sops:
|
||||||
bXBOa1VSakoyaWxpODJEOU11QUZCaUEK8Ch9Ten3DdrPHF1DTH2qei85AlHUOaLD
|
bXBOa1VSakoyaWxpODJEOU11QUZCaUEK8Ch9Ten3DdrPHF1DTH2qei85AlHUOaLD
|
||||||
aNfzakake7ej+MxJYdKEU0bcWofNMKzIlZa2uM10KZSENDP8d8qlig==
|
aNfzakake7ej+MxJYdKEU0bcWofNMKzIlZa2uM10KZSENDP8d8qlig==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-10-25T09:30:00Z"
|
lastmodified: "2025-10-31T03:30:15Z"
|
||||||
mac: ENC[AES256_GCM,data:JA3RXs+AuOTOXFTqpwb5R2xT1Ia4mIO7pGHOqSVzNIZIrKdGStYZW1aBffanrMeAkHOPF0IXMNYv27bW0Z8Qo1AuijSn1daRtNAxBp5vYAaepV3DfYaZPTS35IqOklt7y0gLf9WEBKjaw9iwqNt+DD0DR3qGcSZe14IFdDIjbPU=,iv:emfH8TxrJVrrwsLcp74kN7NM0zQ4ROWQQkeuwMKPIYo=,tag:v302aJTdCAw/eJ3SWF63oA==,type:str]
|
mac: ENC[AES256_GCM,data:o4mUJ0kqiTnepp3ujQo+71ldWjCW0r0U4d0vM8bzJEFZMH108fyAqhhw8BWOa7AlAOp7/x0ggm9/YHwf1ikmQJBfOc7+hneImmsGGd4xluu5tfC70AxjmEUBlku1z3IA9RzSBRtw3Gny3ggCknZa2bt8t2tcVOKNwkz32uQqlBo=,iv:bGmqmlMsHVP8ACgGDtjN1RAd/TzuqO1tn8R1XWQXMbY=,tag:eRXMQzay+Lv/rEhkjtpcKA==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.11.0
|
version: 3.11.0
|
||||||
|
|
|
||||||
|
|
@ -5,18 +5,14 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (flake.config.people) user0;
|
inherit (flake.config.people) user0;
|
||||||
inherit (flake.config.machines.devices) deimos synology ceres;
|
inherit (flake.config.machines.devices) deimos ceres;
|
||||||
inherit (flake.config.services) instances;
|
inherit (flake.config.services) instances;
|
||||||
|
|
||||||
synologySecrets = config.sops.secrets."network/synology".path;
|
|
||||||
ceresSecrets = config.sops.secrets."network/server".path;
|
ceresSecrets = config.sops.secrets."network/server".path;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
fileSystems =
|
fileSystems =
|
||||||
let
|
let
|
||||||
synologyDrives = [
|
|
||||||
"folder0"
|
|
||||||
];
|
|
||||||
|
|
||||||
sambaDrives = [
|
sambaDrives = [
|
||||||
"samba0"
|
"samba0"
|
||||||
|
|
@ -33,17 +29,6 @@ in
|
||||||
# instances.opencloud.name
|
# instances.opencloud.name
|
||||||
];
|
];
|
||||||
|
|
||||||
synologyMounts = synologyDrive: {
|
|
||||||
name = "${synology.${synologyDrive}.mount}";
|
|
||||||
value = {
|
|
||||||
device = synology.${synologyDrive}.device;
|
|
||||||
fsType = "cifs";
|
|
||||||
options = synology.${synologyDrive}.options ++ [
|
|
||||||
"credentials=${synologySecrets}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sambaMounts = sambaDrive: folder: {
|
sambaMounts = sambaDrive: folder: {
|
||||||
name = "${ceres.${sambaDrive}.mount}/${folder}";
|
name = "${ceres.${sambaDrive}.mount}/${folder}";
|
||||||
value = {
|
value = {
|
||||||
|
|
@ -75,7 +60,6 @@ in
|
||||||
options = deimos.boot.options;
|
options = deimos.boot.options;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
// (builtins.listToAttrs (map synologyMounts synologyDrives))
|
|
||||||
// (builtins.listToAttrs (
|
// (builtins.listToAttrs (
|
||||||
builtins.concatMap (drive: map (folder: sambaMounts drive folder) remoteFolders) sambaDrives
|
builtins.concatMap (drive: map (folder: sambaMounts drive folder) remoteFolders) sambaDrives
|
||||||
))
|
))
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,6 @@
|
||||||
{
|
{
|
||||||
sops = {
|
sops = {
|
||||||
secrets = {
|
secrets = {
|
||||||
"network/synology" = {
|
|
||||||
path = "/var/lib/secrets/synology";
|
|
||||||
owner = "root";
|
|
||||||
mode = "600";
|
|
||||||
};
|
|
||||||
"network/server" = {
|
"network/server" = {
|
||||||
path = "/var/lib/secrets/server";
|
path = "/var/lib/secrets/server";
|
||||||
owner = "root";
|
owner = "root";
|
||||||
|
|
|
||||||
|
|
@ -5,17 +5,13 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (flake.config.people) user0;
|
inherit (flake.config.people) user0;
|
||||||
inherit (flake.config.machines.devices) mars ceres synology;
|
inherit (flake.config.machines.devices) mars ceres;
|
||||||
inherit (flake.config.services) instances;
|
inherit (flake.config.services) instances;
|
||||||
synologySecrets = config.sops.secrets."network/synology".path;
|
|
||||||
ceresSecrets = config.sops.secrets."network/server".path;
|
ceresSecrets = config.sops.secrets."network/server".path;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
fileSystems =
|
fileSystems =
|
||||||
let
|
let
|
||||||
synologyDrives = [
|
|
||||||
"folder0"
|
|
||||||
];
|
|
||||||
|
|
||||||
storageDrives = [
|
storageDrives = [
|
||||||
"storage0"
|
"storage0"
|
||||||
|
|
@ -33,17 +29,6 @@ in
|
||||||
# instances.opencloud.name
|
# instances.opencloud.name
|
||||||
];
|
];
|
||||||
|
|
||||||
synologyMounts = synologyDrive: {
|
|
||||||
name = "${synology.${synologyDrive}.mount}";
|
|
||||||
value = {
|
|
||||||
device = synology.${synologyDrive}.device;
|
|
||||||
fsType = "cifs";
|
|
||||||
options = synology.${synologyDrive}.options ++ [
|
|
||||||
"credentials=${synologySecrets}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
storageMounts = storageDrive: {
|
storageMounts = storageDrive: {
|
||||||
name = "${mars.${storageDrive}.mount}";
|
name = "${mars.${storageDrive}.mount}";
|
||||||
value = {
|
value = {
|
||||||
|
|
@ -75,7 +60,6 @@ in
|
||||||
options = mars.boot.options;
|
options = mars.boot.options;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
// (builtins.listToAttrs (map synologyMounts synologyDrives))
|
|
||||||
// (builtins.listToAttrs (map storageMounts storageDrives))
|
// (builtins.listToAttrs (map storageMounts storageDrives))
|
||||||
// (builtins.listToAttrs (
|
// (builtins.listToAttrs (
|
||||||
builtins.concatMap (drive: map (folder: sambaMounts drive folder) sambaFolders) sambaDrives
|
builtins.concatMap (drive: map (folder: sambaMounts drive folder) sambaFolders) sambaDrives
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,6 @@
|
||||||
{
|
{
|
||||||
sops = {
|
sops = {
|
||||||
secrets = {
|
secrets = {
|
||||||
"network/synology" = {
|
|
||||||
path = "/var/lib/secrets/synology";
|
|
||||||
owner = "root";
|
|
||||||
mode = "600";
|
|
||||||
};
|
|
||||||
"network/server" = {
|
"network/server" = {
|
||||||
path = "/var/lib/secrets/server";
|
path = "/var/lib/secrets/server";
|
||||||
owner = "root";
|
owner = "root";
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,6 @@
|
||||||
{
|
{
|
||||||
sops = {
|
sops = {
|
||||||
secrets = {
|
secrets = {
|
||||||
"network/synology" = {
|
|
||||||
path = "/var/lib/secrets/synology";
|
|
||||||
owner = "root";
|
|
||||||
mode = "600";
|
|
||||||
};
|
|
||||||
"network/server" = {
|
"network/server" = {
|
||||||
path = "/var/lib/secrets/server";
|
path = "/var/lib/secrets/server";
|
||||||
owner = "root";
|
owner = "root";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue