Compare commits
2 Commits
885a38eb7d
...
6f2048fd32
| Author | SHA1 | Date | |
|---|---|---|---|
|
6f2048fd32
|
|||
|
1bbd8e1a53
|
@@ -17,7 +17,8 @@
|
||||
./services/immich.nix
|
||||
./services/gitea.nix
|
||||
./services/minecraft.nix
|
||||
./services/llm.nix
|
||||
# ./services/llm.nix
|
||||
# ./services/soulseek.nix
|
||||
];
|
||||
|
||||
systemd.targets = {
|
||||
@@ -48,11 +49,12 @@
|
||||
};
|
||||
|
||||
boot = {
|
||||
# kernelPackages = pkgs.linuxPackages_6_10;
|
||||
kernelPackages = pkgs.linuxPackages;
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
supportedFilesystems = [ "zfs" ];
|
||||
zfs.extraPools = [ "tank" ];
|
||||
zfs.package = pkgs.zfsUnstable;
|
||||
|
||||
loader = {
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
systemd-boot.enable = true;
|
||||
@@ -207,6 +209,7 @@
|
||||
hostId = "0f712d56";
|
||||
firewall.enable = true;
|
||||
useDHCP = false;
|
||||
enableIPv6 = false;
|
||||
|
||||
interfaces.${eth_interface} = {
|
||||
ipv4.addresses = [
|
||||
@@ -215,6 +218,12 @@
|
||||
prefixLength = 24;
|
||||
}
|
||||
];
|
||||
ipv6.addresses = [
|
||||
{
|
||||
address = "2603:9001:3900:f005:1779:17ed:4698:6259";
|
||||
prefixLength = 64;
|
||||
}
|
||||
];
|
||||
};
|
||||
defaultGateway = {
|
||||
address = "10.1.1.1";
|
||||
@@ -240,9 +249,6 @@
|
||||
"render"
|
||||
|
||||
"minecraft"
|
||||
config.services.gitea.group
|
||||
config.services.jellyfin.group
|
||||
config.services.caddy.group
|
||||
];
|
||||
hashedPasswordFile = "/etc/nixos/secrets/hashedPass";
|
||||
|
||||
|
||||
37
flake.lock
generated
37
flake.lock
generated
@@ -34,22 +34,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"jellyfin": {
|
||||
"locked": {
|
||||
"lastModified": 1730145036,
|
||||
"narHash": "sha256-amYxkGRsSbDe8YNgJ9x0lxDAgDvi3xxO3pRjImdy5DQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "bf8b641d2d58a80650ac486525d7ec5a306b69da",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "pull/351966/head",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-minecraft": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
@@ -59,11 +43,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730426071,
|
||||
"narHash": "sha256-2BkSiHqyWikpz9HSgTBk5kikaQ5m0Rs60C9KA2kf53o=",
|
||||
"lastModified": 1731375802,
|
||||
"narHash": "sha256-CvWPEzrl2EA3xrtg9X6K8aqV7T5r0SaDz6PLpGA0yIY=",
|
||||
"owner": "Infinidoge",
|
||||
"repo": "nix-minecraft",
|
||||
"rev": "4b371c3d119493051d081ff5b6cff689a97ad1a1",
|
||||
"rev": "b873a123366b9a62f9262414ada8d83b03f1f0bf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -74,11 +58,11 @@
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1730368399,
|
||||
"narHash": "sha256-F8vJtG389i9fp3k2/UDYHMed3PLCJYfxCqwiVP7b9ig=",
|
||||
"lastModified": 1731403644,
|
||||
"narHash": "sha256-T9V7CTucjRZ4Qc6pUEV/kpgNGzQbHWfGcfK6JJLfUeI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "da14839ac5f38ee6adbdb4e6db09b5eef6d6ccdc",
|
||||
"rev": "f6581f1c3b137086e42a08a906bdada63045f991",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -90,16 +74,16 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1730200266,
|
||||
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
|
||||
"lastModified": 1731432729,
|
||||
"narHash": "sha256-xMIgn4+PJrb9IQh/Llq4EOmeoHnz2rDWSqlF2BDPkNQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
|
||||
"rev": "9c66a68772c91490d7991b5136873e09e75d517d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"ref": "master",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -126,7 +110,6 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"jellyfin": "jellyfin",
|
||||
"nix-minecraft": "nix-minecraft",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
description = "Flake for server muffin";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
# nixpkgs.url = "github:NixOS/nixpkgs/master";
|
||||
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/master";
|
||||
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
|
||||
quadlet-nix.url = "github:SEIAROTg/quadlet-nix";
|
||||
quadlet-nix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
jellyfin.url = "github:NixOS/nixpkgs/pull/351966/head";
|
||||
|
||||
nix-minecraft.url = "github:Infinidoge/nix-minecraft";
|
||||
nix-minecraft.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
{ config, service_configs, ... }:
|
||||
{
|
||||
config,
|
||||
service_configs,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
{
|
||||
services.caddy = {
|
||||
enable = true;
|
||||
@@ -38,4 +43,8 @@
|
||||
networking.firewall.allowedUDPPorts = [
|
||||
service_configs.ports.https
|
||||
];
|
||||
|
||||
users.users.${username}.extraGroups = [
|
||||
config.services.caddy.group
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
config,
|
||||
service_configs,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
{
|
||||
@@ -39,4 +40,8 @@
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
users.users.${username}.extraGroups = [
|
||||
config.services.gitea.group
|
||||
];
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
config,
|
||||
service_configs,
|
||||
inputs,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
{
|
||||
@@ -17,9 +18,6 @@
|
||||
# used for local streaming
|
||||
openFirewall = true;
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/pull/351966
|
||||
# package = inputs.jellyfin.legacyPackages.${pkgs.system}.jellyfin;
|
||||
|
||||
dataDir = service_configs.jellyfin.dir;
|
||||
cacheDir = config.services.jellyfin.dataDir + "_cache";
|
||||
};
|
||||
@@ -28,4 +26,8 @@
|
||||
"video"
|
||||
"render"
|
||||
];
|
||||
|
||||
users.users.${username}.extraGroups = [
|
||||
config.services.jellyfin.group
|
||||
];
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ in
|
||||
|
||||
servers.${service_configs.minecraft.server_name} = {
|
||||
enable = true;
|
||||
package = pkgs.fabricServers.fabric-1_21_1;
|
||||
package = pkgs.fabricServers.fabric-1_21_3;
|
||||
|
||||
jvmOpts = "-Xmx${heap_size} -Xms${heap_size} -XX:+UseZGC -XX:+ZGenerational";
|
||||
|
||||
@@ -41,8 +41,8 @@ in
|
||||
"mods" = pkgs.linkFarmFromDrvs "mods" (
|
||||
builtins.attrValues {
|
||||
FabricApi = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/thGkUOxt/fabric-api-0.107.0%2B1.21.1.jar";
|
||||
sha512 = "04cf3f205c83882c7c741da392d10cbf9ab471fb44836d753f9673b7b37ddb9b2842cc8e72d6d7f36c48d121715f9f9dae8d20e597f2c0de3bb8abd37037baaa";
|
||||
url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/MawoBGbv/fabric-api-0.107.3%2B1.21.3.jar";
|
||||
sha512 = "84e6bbdcd9819999e9d8873be7b6470bc9de898cdc0b878caeb8deb26e7cf3a1c532710e239815565d40afdb06db423746506f4c174fc3938c2790b5e6d5266f";
|
||||
};
|
||||
|
||||
# https://github.com/malte0811/FerriteCore/issues/164
|
||||
@@ -52,18 +52,13 @@ in
|
||||
# };
|
||||
|
||||
Lithium = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/gvQqBUqZ/versions/9x0igjLz/lithium-fabric-mc1.21.1-0.13.1.jar";
|
||||
sha512 = "4250a630d43492da35c4c197ae43082186938fdcb42bafcb6ccad925b79f583abdfdc17ce792c6c6686883f7f109219baecb4906a65d524026d4e288bfbaf146";
|
||||
url = "https://cdn.modrinth.com/data/gvQqBUqZ/versions/2Ea7RMWZ/lithium-fabric-0.14.1-snapshot%2Bmc1.21.3-build.89.jar";
|
||||
sha512 = "d122b23a520cb2573c2eaba9556c07846ae5f2f8ee9aabdf5dce914334e44027a273c8cf2ef2243fe03cf86a8858eab2ddcc247d95661dee40cd783cf444aeff";
|
||||
};
|
||||
|
||||
NoChatReports = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/qQyHxfxd/versions/sOHvPS0X/NoChatReports-FABRIC-1.21.1-v2.9.0.jar";
|
||||
sha512 = "3326d278e57cc2d7bdb4348570c3876ed096af872e166241209ef5ac7c823829596a81570db029ac751e5a11b7686046f72119f259365350ca2eba10037f6d24";
|
||||
};
|
||||
|
||||
krypton = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/fQEb0iXm/versions/Acz3ttTp/krypton-0.2.8.jar";
|
||||
sha512 = "5f8cf96c79bfd4d893f1d70da582e62026bed36af49a7fa7b1e00fb6efb28d9ad6a1eec147020496b4fe38693d33fe6bfcd1eebbd93475612ee44290c2483784";
|
||||
url = "https://cdn.modrinth.com/data/qQyHxfxd/versions/Cg7X9iDa/NoChatReports-FABRIC-1.21.3-v2.10.1.jar";
|
||||
sha512 = "8f1163ad515ebdfab5ef54a4985af05e643749c2efc0bf7b62e00074bbe61d91789b0c9e558bbe1b5c5d21a89b88084ce6350a11a5a9a3bea59eea9764a27171";
|
||||
};
|
||||
|
||||
tick-stasis = pkgs.fetchurl {
|
||||
@@ -71,14 +66,9 @@ in
|
||||
sha512 = "346fae7e0f1a62636525a9331643ac4343b781c240db6ef9bafe1b3a295d24d131d2b4b20cef8edc33835e9069fcaf1c2e2b3ce9ced9a2ec6e4e3d82770f52c6";
|
||||
};
|
||||
|
||||
noisium = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/KuNKN7d2/versions/4sGQgiu2/noisium-fabric-2.3.0%2Bmc1.21-1.21.1.jar";
|
||||
sha512 = "606ba78cf7f30d99e417c96aa042f600c1b626ed9c783919496d139de650013f1434fcf93545782e3889660322837ce6e85530d9e1a5cc20f9ad161357ede43e";
|
||||
};
|
||||
|
||||
moonrise = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/KOHu7RCS/versions/1ZrRaRbq/Moonrise-Fabric-0.1.0-beta.8%2B68ea18b.jar";
|
||||
sha512 = "7510ce6a908d384031b8134c719a6e4f959f35cc9f7889a12f5fc2188937c61f84c916eff8639786fa2c3411141316802437b1cbc105e00dee0f6a8cc6d96b92";
|
||||
url = "https://cdn.modrinth.com/data/KOHu7RCS/versions/S7ZBVFid/Moonrise-Fabric-0.2.0-beta.3%2Bbad5cae.jar";
|
||||
sha512 = "84831de3f402bd2f69fba1329412064f487571527fbb4182c45433eba3d716ef52c057d4f2e9f794821ac5147dbae774ef5c83776f4e376fc10ba3d80015cfde";
|
||||
};
|
||||
|
||||
mixintrace = pkgs.fetchurl {
|
||||
@@ -87,9 +77,15 @@ in
|
||||
};
|
||||
|
||||
better-fabric-console = pkgs.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/Y8o1j1Sf/versions/6FB2l9zd/better-fabric-console-mc1.21.1-1.2.0.jar";
|
||||
sha512 = "3120f168a201a0d7eee55dc34788f0b1134754895d86ceca082f72b16902a00fc70ca05c73712b1d45bae8b74176af30a1821e636ba528f2abd60d94b1f35297";
|
||||
url = "https://cdn.modrinth.com/data/Y8o1j1Sf/versions/QGfoAASu/better-fabric-console-mc1.21.3-1.2.1.jar";
|
||||
sha512 = "3a88c281a65f26e44b17b3a7a5cc9f84046b013931bd3af7f2553f462987a96357b21c104a41593ca0516038e6c4398a890ee118046fe95a7e0c7f2d743d944a";
|
||||
};
|
||||
|
||||
# hasn't updated to 1.21.3 yet (https://modrinth.com/mod/vivecraft/versions)
|
||||
# vivecraft = pkgs.fetchurl {
|
||||
# url = "https://cdn.modrinth.com/data/wGoQDPN5/versions/55ml9ENB/vivecraft-1.21.1-1.1.14-b2-fabric.jar";
|
||||
# sha512 = "6241183987d6197a5e2b4b17f86db2ee9c594f0b6ec335153f1733c2c9ace9f21d07007150a9082e2834deead68b2c287e9443b23be5cd09a366db3f1593975b";
|
||||
# };
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
volumes = [ "${service_configs.gluetun.dir}:/gluetun:z" ];
|
||||
podmanArgs = [
|
||||
"--device=/dev/net/tun"
|
||||
"--security-opt label=disable"
|
||||
];
|
||||
};
|
||||
|
||||
@@ -36,6 +35,7 @@
|
||||
environments = {
|
||||
WEBUI_PORT = service_configs.ports.torrent;
|
||||
DOCKER_MODS = "ghcr.io/gabe565/linuxserver-mod-vuetorrent";
|
||||
# PUID = config.users.users.${config.services.jellyfin.user}.uid;
|
||||
PGID = config.users.groups.${config.services.jellyfin.group}.gid;
|
||||
};
|
||||
|
||||
|
||||
14
services/soulseek.nix
Normal file
14
services/soulseek.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
services.slskd = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
domain = "www.gardling.com";
|
||||
|
||||
settings = {
|
||||
shares = {
|
||||
directories = [ "/tank/music" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user