change disks paths

This commit is contained in:
Satria 2026-04-15 20:05:36 +07:00
commit e187cecb79
12 changed files with 24 additions and 23 deletions

View file

@ -27,14 +27,14 @@ in {
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJtdH1YqRH9xhuHMivezLvj/hpH77yfH3HUCaRboB/hb forgejo-deploy-runner" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJtdH1YqRH9xhuHMivezLvj/hpH77yfH3HUCaRboB/hb forgejo-deploy-runner"
]; ];
disks = { disks = {
gallery = ext4 "/dev/disk/by-uuid/834f51c1-90ee-4601-ba76-ef0419198d67"; # disk for photo gallery # gallery = ext4 "/dev/disk/by-uuid/834f51c1-90ee-4601-ba76-ef0419198d67"; # disk for photo gallery
data = ext4 "/dev/disk/by-uuid/a5752dd6-092d-484c-969c-2fdc7cb4a5f0"; # disk for app data # data = ext4 "/dev/disk/by-uuid/a5752dd6-092d-484c-969c-2fdc7cb4a5f0"; # disk for app data
host = ext4 "/dev/disk/by-uuid/968f14a4-631e-4325-8cd1-f9aec0da9e4d"; # disk for media collection (named host for backwards compatibility) # host = ext4 "/dev/disk/by-uuid/968f14a4-631e-4325-8cd1-f9aec0da9e4d"; # disk for media collection (named host for backwards compatibility)
# ^^ virtual disks # ^^ virtual disks
apps = ext4 "/dev/disk/by-uuid/aa453135-4b7a-4b12-8efc-f3dda093d2b7"; # app data
# achive = ext4 "/dev/disk/by-uuid/"; # long term archival # achive = ext4 "/dev/disk/by-uuid/"; # long term archival
share = btrfs "/dev/disk/by-uuid/f1ee1d17-e852-4e02-ae86-eaf6116a2aeb"; # file share data = ext4 "/dev/disk/by-uuid/aa453135-4b7a-4b12-8efc-f3dda093d2b7"; # app data
share = btrfs "/dev/disk/by-uuid/f1ee1d17-e852-4e02-ae86-eaf6116a2aeb"; # file server
}; };
dash = [ dash = [
[ "PocketID" "authentik" "https://auth.${domain}" "http://localhost:1411/" ] [ "PocketID" "authentik" "https://auth.${domain}" "http://localhost:1411/" ]

View file

@ -5,7 +5,7 @@
host = "127.0.0.1"; host = "127.0.0.1";
port = 11434; port = 11434;
user = "ollama"; user = "ollama";
home = "/mnt/data/ollama"; home = "/mnt/data/apps/ollama";
loadModels = [ loadModels = [
"gemma3n:e4b" # "gemma3n:e2b" "gemma3n:e4b" # "gemma3n:e2b"
"qwen3-coder-next:cloud" # "codellama:7b" "starcoder:3b" "qwen3-coder-next:cloud" # "codellama:7b" "starcoder:3b"
@ -14,7 +14,7 @@
open-webui = { open-webui = {
enable = true; enable = true;
port = 8080; port = 8080;
environmentFile = "/mnt/data/ollama/.env"; environmentFile = "/mnt/data/apps/ollama/.env";
environment = { environment = {
OLLAMA_BASE_URL = "http://localhost:11434"; OLLAMA_BASE_URL = "http://localhost:11434";
# WEBUI_AUTH = "False"; # WEBUI_AUTH = "False";

View file

@ -1,8 +1,8 @@
{ homelab, ... }: { { homelab, ... }: {
services.pocket-id = { services.pocket-id = {
enable = true; enable = true;
credentials.ENCRYPTION_KEY = "/mnt/data/pocketid/encryption-key"; credentials.ENCRYPTION_KEY = "/mnt/data/apps/pocketid/encryption-key";
dataDir = "/mnt/data/pocketid/data"; dataDir = "/mnt/data/apps/pocketid/data";
settings = { settings = {
PORT = "1411"; PORT = "1411";
HOST = "127.0.0.1"; HOST = "127.0.0.1";

View file

@ -6,8 +6,8 @@
user = username; user = username;
auth = "none"; auth = "none";
disableTelemetry = true; disableTelemetry = true;
extensionsDir = "/mnt/data/code-server/extensions"; extensionsDir = "/mnt/data/apps/code-server/extensions";
userDataDir = "/mnt/data/code-server/user-data"; userDataDir = "/mnt/data/apps/code-server/user-data";
extraPackages = with pkgs; []; extraPackages = with pkgs; [];
}; };
} }

View file

@ -1,5 +1,6 @@
{ homelab, lib, ... }: let { homelab, lib, ... }: let
stacks-dir = "/mnt/data/dockge/stacks"; dockge-dir = "/mnt/data/apps/dockge";
stacks-dir = "${dockge-dir}/stacks";
in { in {
virtualisation.oci-containers.containers."dockge" = { virtualisation.oci-containers.containers."dockge" = {
image = "louislam/dockge:nightly"; image = "louislam/dockge:nightly";
@ -8,7 +9,7 @@ in {
}; };
volumes = [ volumes = [
"${stacks-dir}:${stacks-dir}:rw" "${stacks-dir}:${stacks-dir}:rw"
"/mnt/data/dockge/data:/app/data:rw" "${dockge-dir}/data:/app/data:rw"
"/var/run/docker.sock:/var/run/docker.sock:rw" "/var/run/docker.sock:/var/run/docker.sock:rw"
]; ];
ports = [ ports = [

View file

@ -6,7 +6,7 @@
enable = true; enable = true;
port = 2283; port = 2283;
host = "127.0.0.1"; host = "127.0.0.1";
mediaLocation = "/mnt/gallery"; mediaLocation = "/mnt/data/gallery";
accelerationDevices = null; accelerationDevices = null;
environment.DB_URL = lib.mkForce "postgresql:///immich?host=/var/run/postgresql&user=immich"; # https://github.com/immich-app/immich/issues/26140 environment.DB_URL = lib.mkForce "postgresql:///immich?host=/var/run/postgresql&user=immich"; # https://github.com/immich-app/immich/issues/26140
machine-learning.enable = true; machine-learning.enable = true;

View file

@ -3,7 +3,7 @@
forgejo = { forgejo = {
enable = true; enable = true;
lfs.enable = true; lfs.enable = true;
stateDir = "/mnt/data/forgejo"; stateDir = "/mnt/data/apps/forgejo";
package = pkgs.forgejo; package = pkgs.forgejo;
settings = { settings = {
server = { server = {

View file

@ -2,8 +2,8 @@
services.vaultwarden = { services.vaultwarden = {
enable = true; enable = true;
domain = "pass.proxy.${homelab.domain}"; domain = "pass.proxy.${homelab.domain}";
backupDir = "/mnt/data/vaultwarden/backups"; backupDir = "/mnt/data/apps/vaultwarden/backups";
environmentFile = "/mnt/data/vaultwarden/.env"; environmentFile = "/mnt/data/apps/vaultwarden/.env";
config = { config = {
ROCKET_PORT = 8060; ROCKET_PORT = 8060;
ROCKET_ADDRESS = "127.0.0.1"; ROCKET_ADDRESS = "127.0.0.1";

View file

@ -21,7 +21,7 @@ in {
domain = "*.${homelab.proxy.base}"; domain = "*.${homelab.proxy.base}";
extraDomainNames = [ homelab.proxy.base ]; extraDomainNames = [ homelab.proxy.base ];
dnsProvider = "cloudflare"; dnsProvider = "cloudflare";
environmentFile = "/mnt/data/acme/.env"; environmentFile = "/mnt/data/apps/acme/.env";
# ^^^contents: CLOUDFLARE_DNS_API_TOKEN=XXXXX # ^^^contents: CLOUDFLARE_DNS_API_TOKEN=XXXXX
}; };
}; };

View file

@ -2,7 +2,7 @@
services.searx = { services.searx = {
enable = true; enable = true;
redisCreateLocally = true; redisCreateLocally = true;
environmentFile = "/mnt/data/searxng/.env"; environmentFile = "/mnt/data/apps/searxng/.env";
settings = { settings = {
server = { server = {
bind_address = "127.0.0.1"; bind_address = "127.0.0.1";

View file

@ -2,8 +2,8 @@
services.cloudflared = { services.cloudflared = {
enable = true; enable = true;
tunnels.homelab = { tunnels.homelab = {
credentialsFile = "/mnt/data/cloudflared/homelab.json"; credentialsFile = "/mnt/data/apps/cloudflared/homelab.json";
certificateFile = "/mnt/data/cloudflared/cert.pem"; certificateFile = "/mnt/data/apps/cloudflared/cert.pem";
default = "http_status:404"; default = "http_status:404";
ingress = homelab.routes; ingress = homelab.routes;
}; };
@ -23,7 +23,7 @@
script = lib.concatMapStringsSep "\n" (domain: '' script = lib.concatMapStringsSep "\n" (domain: ''
echo "Ensuring DNS route for ${domain}..." echo "Ensuring DNS route for ${domain}..."
${pkgs.cloudflared}/bin/cloudflared tunnel --origincert /mnt/data/cloudflared/cert.pem route dns ${homelab.cf-tunnel-id} ${domain} || true ${pkgs.cloudflared}/bin/cloudflared tunnel --origincert /mnt/data/apps/cloudflared/cert.pem route dns ${homelab.cf-tunnel-id} ${domain} || true
'') (builtins.attrNames homelab.routes); '') (builtins.attrNames homelab.routes);
}; };
} }

View file

@ -33,7 +33,7 @@ in {
services.tailscale = { services.tailscale = {
enable = true; enable = true;
authKeyFile = "/mnt/data/tailscale/authkey"; authKeyFile = "/mnt/data/apps/tailscale/authkey";
useRoutingFeatures = "server"; useRoutingFeatures = "server";
extraUpFlags = ts-flags; extraUpFlags = ts-flags;
extraSetFlags = ts-flags; extraSetFlags = ts-flags;