Merge branch 'main' of codeberg.org:muon/home

This commit is contained in:
muon 2025-07-03 22:08:14 +00:00
commit 018e8fa677
8 changed files with 224 additions and 19 deletions

View file

@ -13,6 +13,20 @@
}, },
"version": "1.6.6" "version": "1.6.6"
}, },
"valheim.arearepair": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "valheim.arearepair",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-5eRobZrlGB5ECpyXldYMOt+0xKzU9rBeCSVPIs3PZd8=",
"type": "tarball",
"url": "https://thunderstore.io/package/download/Azumatt/AzuAreaRepair/1.1.6/"
},
"version": "1.1.6"
},
"valheim.autostore": { "valheim.autostore": {
"cargoLocks": null, "cargoLocks": null,
"date": null, "date": null,
@ -27,6 +41,20 @@
}, },
"version": "3.0.8" "version": "3.0.8"
}, },
"valheim.backpacks": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "valheim.backpacks",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-xSfcLisLLPALx6l1Rtbt10YFUo112HV2I6BO/zCjr5w=",
"type": "tarball",
"url": "https://thunderstore.io/package/download/Smoothbrain/Backpacks/1.3.6/"
},
"version": "1.3.6"
},
"valheim.betternetworking": { "valheim.betternetworking": {
"cargoLocks": null, "cargoLocks": null,
"date": null, "date": null,
@ -111,6 +139,20 @@
}, },
"version": "2.25.0" "version": "2.25.0"
}, },
"valheim.mining": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "valheim.mining",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-SxQ+Z4T5Hg5w4X4+L++eArWZXhoXuarecKl6gdpcpNQ=",
"type": "tarball",
"url": "https://thunderstore.io/package/download/Smoothbrain/Mining/1.1.5/"
},
"version": "1.1.5"
},
"valheim.multiuserchest": { "valheim.multiuserchest": {
"cargoLocks": null, "cargoLocks": null,
"date": null, "date": null,
@ -125,6 +167,20 @@
}, },
"version": "0.6.1" "version": "0.6.1"
}, },
"valheim.planteasily": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "valheim.planteasily",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-HvjwiVBWs723LhHR7Xk6knugOU8eQewGiV+mZaAN5YU=",
"type": "tarball",
"url": "https://thunderstore.io/package/download/Advize/PlantEasily/2.0.3/"
},
"version": "2.0.3"
},
"valheim.quickteleport": { "valheim.quickteleport": {
"cargoLocks": null, "cargoLocks": null,
"date": null, "date": null,
@ -209,6 +265,20 @@
}, },
"version": "1.3.8" "version": "1.3.8"
}, },
"valheim.swimequip": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "valheim.swimequip",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-UotiInuJAZsR1sL9aquTBQf7sw5kzG+2fG8QlFl+2Fc=",
"type": "tarball",
"url": "https://thunderstore.io/package/download/blacks7ar/WieldEquipmentWhileSwimming/1.1.2/"
},
"version": "1.1.2"
},
"vesktop.micfix": { "vesktop.micfix": {
"cargoLocks": null, "cargoLocks": null,
"date": null, "date": null,

View file

@ -9,6 +9,14 @@
sha256 = "sha256-cObo71X0wOzW3pZwAy7/dh7IRghu7EMPw7vWuoPWPlk="; sha256 = "sha256-cObo71X0wOzW3pZwAy7/dh7IRghu7EMPw7vWuoPWPlk=";
}; };
}; };
"valheim.arearepair" = {
pname = "valheim.arearepair";
version = "1.1.6";
src = fetchTarball {
url = "https://thunderstore.io/package/download/Azumatt/AzuAreaRepair/1.1.6/";
sha256 = "sha256-5eRobZrlGB5ECpyXldYMOt+0xKzU9rBeCSVPIs3PZd8=";
};
};
"valheim.autostore" = { "valheim.autostore" = {
pname = "valheim.autostore"; pname = "valheim.autostore";
version = "3.0.8"; version = "3.0.8";
@ -17,6 +25,14 @@
sha256 = "sha256-ooghhDinwLTwEpTTQFj/brdb9Yj5aLGr+zYsjrsq9A0="; sha256 = "sha256-ooghhDinwLTwEpTTQFj/brdb9Yj5aLGr+zYsjrsq9A0=";
}; };
}; };
"valheim.backpacks" = {
pname = "valheim.backpacks";
version = "1.3.6";
src = fetchTarball {
url = "https://thunderstore.io/package/download/Smoothbrain/Backpacks/1.3.6/";
sha256 = "sha256-xSfcLisLLPALx6l1Rtbt10YFUo112HV2I6BO/zCjr5w=";
};
};
"valheim.betternetworking" = { "valheim.betternetworking" = {
pname = "valheim.betternetworking"; pname = "valheim.betternetworking";
version = "2.3.2"; version = "2.3.2";
@ -65,6 +81,14 @@
sha256 = "sha256-Tso4/Sf4Evt5kpBrVqZrjE9Qs2MSZV04WB1w+uX+TX8="; sha256 = "sha256-Tso4/Sf4Evt5kpBrVqZrjE9Qs2MSZV04WB1w+uX+TX8=";
}; };
}; };
"valheim.mining" = {
pname = "valheim.mining";
version = "1.1.5";
src = fetchTarball {
url = "https://thunderstore.io/package/download/Smoothbrain/Mining/1.1.5/";
sha256 = "sha256-SxQ+Z4T5Hg5w4X4+L++eArWZXhoXuarecKl6gdpcpNQ=";
};
};
"valheim.multiuserchest" = { "valheim.multiuserchest" = {
pname = "valheim.multiuserchest"; pname = "valheim.multiuserchest";
version = "0.6.1"; version = "0.6.1";
@ -73,6 +97,14 @@
sha256 = "sha256-PhXW6vBtEMnhE93RAALEucPU9q3VpdMrooFawWYXl2A="; sha256 = "sha256-PhXW6vBtEMnhE93RAALEucPU9q3VpdMrooFawWYXl2A=";
}; };
}; };
"valheim.planteasily" = {
pname = "valheim.planteasily";
version = "2.0.3";
src = fetchTarball {
url = "https://thunderstore.io/package/download/Advize/PlantEasily/2.0.3/";
sha256 = "sha256-HvjwiVBWs723LhHR7Xk6knugOU8eQewGiV+mZaAN5YU=";
};
};
"valheim.quickteleport" = { "valheim.quickteleport" = {
pname = "valheim.quickteleport"; pname = "valheim.quickteleport";
version = "1.1.0"; version = "1.1.0";
@ -121,6 +153,14 @@
sha256 = "sha256-QCEYnx0I6onWEAJy851wS0WdC35L18DyJL1wAAwHFaU="; sha256 = "sha256-QCEYnx0I6onWEAJy851wS0WdC35L18DyJL1wAAwHFaU=";
}; };
}; };
"valheim.swimequip" = {
pname = "valheim.swimequip";
version = "1.1.2";
src = fetchTarball {
url = "https://thunderstore.io/package/download/blacks7ar/WieldEquipmentWhileSwimming/1.1.2/";
sha256 = "sha256-UotiInuJAZsR1sL9aquTBQf7sw5kzG+2fG8QlFl+2Fc=";
};
};
"vesktop.micfix" = { "vesktop.micfix" = {
pname = "vesktop.micfix"; pname = "vesktop.micfix";
version = "1.0.1"; version = "1.0.1";

View file

@ -40,9 +40,10 @@ in {
mods.server.vault.enable = true; mods.server.vault.enable = true;
mods.server.git.enable = true; mods.server.git.enable = true;
mods.server.cal.enable = true; mods.server.cal.enable = true;
mods.server.chat.enable = true; mods.server.chat.enable = false;
mods.server.ntfy.enable = true; mods.server.ntfy.enable = true;
mods.server.lemmy.enable = true; mods.server.lemmy.enable = true;
mods.server.audio.enable = true;
mods.server.dash.enable = false; mods.server.dash.enable = false;
mods.server.nginx.ports.dash = 3009; mods.server.nginx.ports.dash = 3009;

View file

@ -1,4 +1,5 @@
{ config, lib, pkgs, modulesPath, ... }: let { config, lib, pkgs, modulesPath, ... }:
let
ip = "93.95.230.11"; ip = "93.95.230.11";
gateway = "93.95.230.1"; gateway = "93.95.230.1";
hostname = "vpsorvhm2v"; hostname = "vpsorvhm2v";
@ -6,32 +7,37 @@
dns1 = "93.95.224.29"; dns1 = "93.95.224.29";
in { in {
imports = imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
[ (modulesPath + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "sr_mod" "virtio_blk" ]; boot.initrd.availableKernelModules =
[ "ata_piix" "uhci_hcd" "virtio_pci" "sr_mod" "virtio_blk" ];
boot.initrd.kernelModules = [ "dm-snapshot" ]; boot.initrd.kernelModules = [ "dm-snapshot" ];
boot.kernelModules = [ ]; boot.kernelModules = [ ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/031e2049-33ed-4d21-a208-8da3fc250260"; device = "/dev/disk/by-uuid/031e2049-33ed-4d21-a208-8da3fc250260";
fsType = "ext4"; fsType = "ext4";
}; };
swapDevices = [{ # swapDevices = [{
device = "/dev/disk/by-uuid/bc6acd1f-98bb-4f94-b52c-40aa7312e838"; # device = "/dev/disk/by-uuid/bc6acd1f-98bb-4f94-b52c-40aa7312e838";
} { # } {
device = "/var/lib/swapfile"; # device = "/var/lib/swapfile";
size = 2*1024; # size = 2*1024;
}]; # }];
networking.useDHCP = lib.mkForce false; networking.useDHCP = lib.mkForce false;
networking.domain = ""; networking.domain = "";
networking.interfaces.ens3.ipv4.addresses = [{ address = ip; prefixLength = 24; }]; networking.interfaces.ens3.ipv4.addresses = [{
networking.defaultGateway = { address = gateway; interface = "ens3"; }; address = ip;
prefixLength = 24;
}];
networking.defaultGateway = {
address = gateway;
interface = "ens3";
};
networking.nameservers = [ dns0 dns1 ]; networking.nameservers = [ dns0 dns1 ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";

View file

@ -17,6 +17,7 @@
chat = 3008; chat = 3008;
# dash = 3009; # dash = 3009;
ntfy = 3010; ntfy = 3010;
audio = 3011;
search = 8081; search = 8081;
videos = 8082; videos = 8082;
@ -27,6 +28,10 @@
lemmy-api = 5002; lemmy-api = 5002;
lemmy-ui = 5003; lemmy-ui = 5003;
pict-rs = 5004; pict-rs = 5004;
readarr = 5005;
prowlarr = 5006;
flaresolverr = 5007;
torrent = 5008;
}; };
}; };
} }

View file

@ -0,0 +1,57 @@
{ pkgs, lib, config, ... }:
let
cfg = config.mods.server.audio;
arr.read.port = config.mods.server.local.ports.readarr;
arr.prowl.port = config.mods.server.local.ports.prowlarr;
arr.flare.port = config.mods.server.local.ports.flaresolverr;
arr.torrent.port = config.mods.server.local.ports.torrent;
port = config.mods.server.nginx.ports.audio;
in with lib; {
options.mods.server = {
audio = {
enable = mkEnableOption {
default = false;
description = "enables audiobook servers";
};
};
};
config = mkIf cfg.enable {
services.readarr = {
enable = true;
openFirewall = true;
settings.server.port = arr.read.port;
};
services.prowlarr = {
enable = true;
openFirewall = true;
settings.server.port = arr.prowl.port;
};
services.flaresolverr = {
enable = true;
openFirewall = true;
port = arr.flare.port;
};
services.transmission = {
enable = true;
openFirewall = true;
openRPCPort = true;
port = arr.torrent.port;
settings = {
download-dir = "/storage1/download";
rpc-port = arr.torrent.port;
rpc-bind-address = "0.0.0.0";
};
};
services.audiobookshelf = {
inherit port;
enable = true;
openFirewall = true;
host = "0.0.0.0";
};
};
}

View file

@ -23,5 +23,6 @@
./nvr.nix ./nvr.nix
./ntfy.nix ./ntfy.nix
./lemmy.nix ./lemmy.nix
./audio.nix
]; ];
} }

View file

@ -17,6 +17,11 @@ src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuAutoStore/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuAutoStore/$ver/" fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuAutoStore/$ver/"
["valheim.arearepair"]
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuAreaRepair/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Azumatt/AzuAreaRepair/$ver/"
["valheim.extendedinv"] ["valheim.extendedinv"]
src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuExtendedPlayerInventory/" src.webpage = "https://thunderstore.io/c/valheim/p/Azumatt/AzuExtendedPlayerInventory/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"
@ -57,6 +62,11 @@ src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/VikingsDoSwim/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/blacks7ar/VikingsDoSwim/$ver/" fetch.tarball = "https://thunderstore.io/package/download/blacks7ar/VikingsDoSwim/$ver/"
["valheim.swimequip"]
src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/WieldEquipmentWhileSwimming/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/blacks7ar/WieldEquipmentWhileSwimming/$ver/"
["valheim.seedbed"] ["valheim.seedbed"]
src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/SeedBed/" src.webpage = "https://thunderstore.io/c/valheim/p/blacks7ar/SeedBed/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"
@ -72,6 +82,21 @@ src.webpage = "https://thunderstore.io/c/valheim/p/Smoothbrain/SmoothSave/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/SmoothSave/$ver/" fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/SmoothSave/$ver/"
["valheim.backpacks"]
src.webpage = "https://thunderstore.io/c/valheim/p/Smoothbrain/Backpacks/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/Backpacks/$ver/"
["valheim.mining"]
src.webpage = "https://thunderstore.io/c/valheim/p/Smoothbrain/Mining/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Smoothbrain/Mining/$ver/"
["valheim.planteasily"]
src.webpage = "https://thunderstore.io/c/valheim/p/Advize/PlantEasily/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)"
fetch.tarball = "https://thunderstore.io/package/download/Advize/PlantEasily/$ver/"
["valheim.betternetworking"] ["valheim.betternetworking"]
src.webpage = "https://thunderstore.io/c/valheim/p/CW_Jesse/BetterNetworking_Valheim/" src.webpage = "https://thunderstore.io/c/valheim/p/CW_Jesse/BetterNetworking_Valheim/"
src.regex = "v(\\d+\\.\\d+\\.\\d+)" src.regex = "v(\\d+\\.\\d+\\.\\d+)"