Compare commits

...

5 commits

Author SHA1 Message Date
Nick
f8a430380a feat: added tuios 2025-11-20 02:36:04 -06:00
Nick
e92a3de355 feat: increased resources 2025-11-20 02:35:53 -06:00
Nick
aca06b9d5f feat: added defenseio miner 2025-11-20 00:39:25 -06:00
Nick
8a0e8183bb chore: updated ips 2025-11-20 00:39:18 -06:00
Nick
d3f98327aa feat: added port 80 2025-11-20 00:38:54 -06:00
4 changed files with 37 additions and 31 deletions

View file

@ -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";

View file

@ -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);

View file

@ -14,6 +14,7 @@ in
plasma plasma
plymouth plymouth
sddm sddm
tuios
wireguard wireguard
microvm microvm
defenseio defenseio

View file

@ -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";