mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-06 21:17:14 -06:00
Compare commits
5 commits
247ac04114
...
f8a430380a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f8a430380a | ||
|
|
e92a3de355 | ||
|
|
aca06b9d5f | ||
|
|
8a0e8183bb | ||
|
|
d3f98327aa |
4 changed files with 37 additions and 31 deletions
|
|
@ -31,6 +31,9 @@ in
|
||||||
"mast"
|
"mast"
|
||||||
"md"
|
"md"
|
||||||
];
|
];
|
||||||
|
ports = {
|
||||||
|
port0 = 80;
|
||||||
|
};
|
||||||
interface = {
|
interface = {
|
||||||
id = "vm-${name}";
|
id = "vm-${name}";
|
||||||
mac = "02:00:00:00:55:05";
|
mac = "02:00:00:00:55:05";
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,7 @@
|
||||||
{ flake, ... }:
|
{ flake, ... }:
|
||||||
let
|
let
|
||||||
inherit (flake.config.machines.devices)
|
inherit (flake.config.machines.devices) mars;
|
||||||
ceres
|
inherit (flake.config.services) instances;
|
||||||
mars
|
|
||||||
;
|
|
||||||
inherit (flake.config.services)
|
|
||||||
instances
|
|
||||||
;
|
|
||||||
|
|
||||||
makeBookmarks =
|
makeBookmarks =
|
||||||
{
|
{
|
||||||
|
|
@ -21,23 +16,24 @@ let
|
||||||
keyword = instances.${name}.short;
|
keyword = instances.${name}.short;
|
||||||
}) (builtins.map (service: instances.${service}.name) services);
|
}) (builtins.map (service: instances.${service}.name) services);
|
||||||
|
|
||||||
|
instanceList = [
|
||||||
|
instances.forgejo.name
|
||||||
|
instances.jellyfin.name
|
||||||
|
instances.mastodon.name
|
||||||
|
instances.vaultwarden.name
|
||||||
|
instances.firefly-iii.name
|
||||||
|
];
|
||||||
bookmarkConfigs = [
|
bookmarkConfigs = [
|
||||||
{
|
{
|
||||||
suffix = "(Remote)";
|
suffix = "(Remote)";
|
||||||
urlTemplate = name: "https://${instances.${name}.domains.url0}";
|
urlTemplate = name: "https://${instances.${name}.domains.url0}";
|
||||||
services = [
|
services = instanceList;
|
||||||
instances.audiobookshelf.name
|
}
|
||||||
instances.forgejo.name
|
{
|
||||||
instances.glance.name
|
suffix = "(Server)";
|
||||||
instances.jellyfin.name
|
urlTemplate =
|
||||||
instances.mastodon.name
|
name: "http://${instances.${name}.interface.ip}:${builtins.toString instances.${name}.ports.port0}";
|
||||||
instances.ollama.name
|
services = instanceList;
|
||||||
instances.opencloud.name
|
|
||||||
instances.searx.name
|
|
||||||
instances.vaultwarden.name
|
|
||||||
instances.prompter.name
|
|
||||||
instances.firefly-iii.name
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
suffix = "(Desktop)";
|
suffix = "(Desktop)";
|
||||||
|
|
@ -47,15 +43,6 @@ let
|
||||||
instances.syncthing.name
|
instances.syncthing.name
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
|
||||||
suffix = "(Server)";
|
|
||||||
urlTemplate =
|
|
||||||
name: "http://${ceres.ip.address0}:${builtins.toString instances.${name}.ports.port0}";
|
|
||||||
services = [
|
|
||||||
instances.jellyfin.name
|
|
||||||
instances.firefly-iii.name
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
|
|
||||||
generatedBookmarks = builtins.concatLists (builtins.map makeBookmarks bookmarkConfigs);
|
generatedBookmarks = builtins.concatLists (builtins.map makeBookmarks bookmarkConfigs);
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ in
|
||||||
plasma
|
plasma
|
||||||
plymouth
|
plymouth
|
||||||
sddm
|
sddm
|
||||||
|
tuios
|
||||||
wireguard
|
wireguard
|
||||||
microvm
|
microvm
|
||||||
defenseio
|
defenseio
|
||||||
|
|
|
||||||
|
|
@ -41,8 +41,14 @@ in
|
||||||
autostart = true;
|
autostart = true;
|
||||||
config =
|
config =
|
||||||
let
|
let
|
||||||
|
ceresCpu = 45;
|
||||||
|
erisCpu = 5;
|
||||||
|
marsCpu = 20;
|
||||||
|
deimosCpu = 5;
|
||||||
|
phobosCpu = 5;
|
||||||
|
|
||||||
macAddress = "02:00:00:00:00:${macOctet}";
|
macAddress = "02:00:00:00:00:${macOctet}";
|
||||||
workers = deviceLogic 35 4 18 5 6;
|
workers = deviceLogic ceresCpu erisCpu marsCpu deimosCpu phobosCpu;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
|
|
@ -67,7 +73,16 @@ in
|
||||||
mac = macAddress;
|
mac = macAddress;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
mem = deviceLogic 45000 5120 22000 6144 7168;
|
mem =
|
||||||
|
let
|
||||||
|
num = 1024;
|
||||||
|
ceresRam = num * 50;
|
||||||
|
erisRam = num * 7;
|
||||||
|
marsRam = num * 24;
|
||||||
|
deimosRam = num * 7;
|
||||||
|
phobosRam = num * 7;
|
||||||
|
in
|
||||||
|
deviceLogic ceresRam erisRam marsRam deimosRam phobosRam;
|
||||||
shares = [
|
shares = [
|
||||||
{
|
{
|
||||||
mountPoint = "/nix/.ro-store";
|
mountPoint = "/nix/.ro-store";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue