1
0
mirror of https://github.com/kmein/niveum synced 2026-03-16 18:21:07 +01:00

10 Commits

Author SHA1 Message Date
b9a222855e pi: update plugins 2026-03-04 17:59:51 +01:00
f8bb3c04bf pdf-ocr: fix 2026-03-04 17:59:51 +01:00
dce42c7e80 mp3player-write: do not check disk space 2026-03-04 17:59:51 +01:00
5bedd897c9 switch manakish and kabsa 2026-03-04 17:59:51 +01:00
d952ecf17a meteora: host on ful 2026-03-04 17:59:51 +01:00
df36954fed kpaste: reenable 2026-03-04 17:59:51 +01:00
697100f85f cyberlocker-tools: reenable 2026-03-04 17:59:51 +01:00
8eccb752dc getty: always enable autologinOnce 2026-03-04 17:59:51 +01:00
6bb16ff6ed Revert "cuda: build ollama"
This reverts commit fb86f8c7f7.
2026-03-04 17:59:51 +01:00
8fe9e80522 panoptikon: use from new repo 2026-03-04 17:59:51 +01:00
12 changed files with 129 additions and 94 deletions

View File

@@ -26,8 +26,6 @@
})
];
services.getty.autologinOnce = lib.mkForce false;
# to run nspawn in nix sandbox
nix.settings = {
auto-allocate-uids = true;

View File

@@ -193,6 +193,8 @@ in
#krebs
pkgs.nur.repos.mic92.ircsink
cyberlocker-tools
kpaste
(haskellPackages.ghcWithHoogle (hs: [
hs.text

151
flake.lock generated
View File

@@ -12,11 +12,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1770165109,
"narHash": "sha256-9VnK6Oqai65puVJ4WYtCTvlJeXxMzAp/69HhQuTdl/I=",
"lastModified": 1762618334,
"narHash": "sha256-wyT7Pl6tMFbFrs8Lk/TlEs81N6L+VSybPfiIgzU8lbQ=",
"owner": "ryantm",
"repo": "agenix",
"rev": "b027ee29d959fda4b60b57566d64c98a202e0feb",
"rev": "fcdea223397448d35d9b31f798479227e80183f6",
"type": "github"
},
"original": {
@@ -122,11 +122,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1771437256,
"narHash": "sha256-bLqwib+rtyBRRVBWhMuBXPCL/OThfokA+j6+uH7jDGU=",
"lastModified": 1769353768,
"narHash": "sha256-zI+7cbMI4wMIR57jMjDSEsVb3grapTnURDxxJPYFIW0=",
"owner": "numtide",
"repo": "blueprint",
"rev": "06ee7190dc2620ea98af9eb225aa9627b68b0e33",
"rev": "c7da5c70ad1c9b60b6f5d4f674fbe205d48d8f6c",
"type": "github"
},
"original": {
@@ -189,11 +189,11 @@
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1771657407,
"narHash": "sha256-ZkKTcOgfy8lIkdTNpGfc01G21d5oT7xMqGT4cazFl60=",
"lastModified": 1769842381,
"narHash": "sha256-0dPzo1ElvAIZ0RwEwx5FfqAUiFj22K9QJOU9stiMCrw=",
"owner": "nix-community",
"repo": "fenix",
"rev": "6d86ae5186ba275b7874d02908505fc658448658",
"rev": "b2344f384a82db1410ab09769eb8c4a820de667f",
"type": "github"
},
"original": {
@@ -384,11 +384,11 @@
]
},
"locked": {
"lastModified": 1770260404,
"narHash": "sha256-3iVX1+7YUIt23hBx1WZsUllhbmP2EnXrV8tCRbLxHc8=",
"lastModified": 1769580047,
"narHash": "sha256-tNqCP/+2+peAXXQ2V8RwsBkenlfWMERb+Uy6xmevyhM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0d782ee42c86b196acff08acfbf41bb7d13eed5b",
"rev": "366d78c2856de6ab3411c15c1cb4fb4c2bf5c826",
"type": "github"
},
"original": {
@@ -405,11 +405,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1771694905,
"narHash": "sha256-ldh1F4nFz1RI0ptxWklRQ3JM01GdFapSBDc3CkLEX30=",
"lastModified": 1771167156,
"narHash": "sha256-hvlg7rTzAmfX2HW0GgrVGvbXoNioTK0bidbRv42QEhY=",
"owner": "numtide",
"repo": "llm-agents.nix",
"rev": "2f38010877d8ddc57c803a0c7c88c1ec26426900",
"rev": "bbd22c02ac546b7ba07147eb14194128b44ff209",
"type": "github"
},
"original": {
@@ -464,6 +464,24 @@
"type": "github"
}
},
"meteora": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1772641269,
"narHash": "sha256-o8G09GrqHjZO9BYbsCvYds+baGxLC0PhhlGTllkHC54=",
"ref": "refs/heads/master",
"rev": "0b2255c2e4003b208f19153e6fb7e484544c4399",
"revCount": 1377,
"type": "git",
"url": "ssh://git@github.com/kmein/meteora.git"
},
"original": {
"type": "git",
"url": "ssh://git@github.com/kmein/meteora.git"
}
},
"naersk": {
"inputs": {
"fenix": [
@@ -516,11 +534,11 @@
]
},
"locked": {
"lastModified": 1771130777,
"narHash": "sha256-UIKOwG0D9XVIJfNWg6+gENAvQP+7LO46eO0Jpe+ItJ0=",
"lastModified": 1765267181,
"narHash": "sha256-d3NBA9zEtBu2JFMnTBqWj7Tmi7R5OikoU2ycrdhQEws=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "efec7aaad8d43f8e5194df46a007456093c40f88",
"rev": "82befcf7dc77c909b0f2a09f5da910ec95c5b78f",
"type": "github"
},
"original": {
@@ -537,11 +555,11 @@
]
},
"locked": {
"lastModified": 1769983422,
"narHash": "sha256-/zQdD8Aogh16eD5lgFokRMA0EYCm5uQITKCA90/01Oo=",
"lastModified": 1769018862,
"narHash": "sha256-x3eMpPQhZwEDunyaUos084Hx41XwYTi2uHY4Yc4YNlk=",
"owner": "oddlama",
"repo": "nix-topology",
"rev": "20b5c5c698d45cc0f950889b3f6379ced5ce9c4a",
"rev": "a15cac71d3399a4c2d1a3482ae62040a3a0aa07f",
"type": "github"
},
"original": {
@@ -574,11 +592,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1771423359,
"narHash": "sha256-yRKJ7gpVmXbX2ZcA8nFi6CMPkJXZGjie2unsiMzj3Ig=",
"lastModified": 1769302137,
"narHash": "sha256-QEDtctEkOsbx8nlFh4yqPEOtr4tif6KTqWwJ37IM2ds=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "740a22363033e9f1bb6270fbfb5a9574067af15b",
"rev": "a351494b0e35fd7c0b7a1aae82f0afddf4907aa8",
"type": "github"
},
"original": {
@@ -589,11 +607,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1771207753,
"narHash": "sha256-b9uG8yN50DRQ6A7JdZBfzq718ryYrlmGgqkRm9OOwCE=",
"lastModified": 1770843696,
"narHash": "sha256-LovWTGDwXhkfCOmbgLVA10bvsi/P8eDDpRudgk68HA8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d1c15b7d5806069da59e819999d70e1cec0760bf",
"rev": "2343bbb58f99267223bc2aac4fc9ea301a155a16",
"type": "github"
},
"original": {
@@ -636,11 +654,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1771369470,
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
"lastModified": 1770197578,
"narHash": "sha256-AYqlWrX09+HvGs8zM6ebZ1pwUqjkfpnv8mewYwAo+iM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0182a361324364ae3f436a63005877674cf45efb",
"rev": "00c21e4c93d963c50d4c0c89bfa84ed6e0694df2",
"type": "github"
},
"original": {
@@ -652,11 +670,27 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1771574726,
"narHash": "sha256-D1PA3xQv/s4W3lnR9yJFSld8UOLr0a/cBWMQMXS+1Qg=",
"lastModified": 1772479524,
"narHash": "sha256-u7nCaNiMjqvKpE+uZz9hE7pgXXTmm5yvdtFaqzSzUQI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c217913993d6c6f6805c3b1a3bda5e639adfde6d",
"rev": "4215e62dc2cd3bc705b0a423b9719ff6be378a43",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1769598131,
"narHash": "sha256-e7VO/kGLgRMbWtpBqdWl0uFg8Y2XWFMdz0uUJvlML8o=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fa83fd837f3098e3e678e6cf017b2b36102c7211",
"type": "github"
},
"original": {
@@ -666,7 +700,7 @@
"type": "github"
}
},
"nixpkgs_3": {
"nixpkgs_4": {
"locked": {
"lastModified": 1771369470,
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
@@ -690,11 +724,11 @@
]
},
"locked": {
"lastModified": 1771709783,
"narHash": "sha256-6BDqxI2tPZMHPy1lUKz5C3GpLPSf7o32xXihUtue3GI=",
"lastModified": 1769867112,
"narHash": "sha256-n3YYhO6VpGadtVOiL/eAxnm9JBC6GfXsJfj8O6V/JvU=",
"owner": "nix-community",
"repo": "NUR",
"rev": "8cf8a5cd5ab665eba66bf3408b144f565cca80e9",
"rev": "c74b53b75a4219cdecea1194a95e36a222981860",
"type": "github"
},
"original": {
@@ -753,14 +787,14 @@
},
"panoptikon": {
"inputs": {
"nixpkgs": "nixpkgs_3"
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1771688635,
"narHash": "sha256-tKmjgdeoQV5W96Chr2B5WOFXC70FvcfxhNCmBT1YZUY=",
"lastModified": 1771686951,
"narHash": "sha256-+s19xrH0kVVDT48TtpulmuWFMagi/ysjWL+PjKcmF/k=",
"ref": "refs/heads/main",
"rev": "30e15d8f95693ba82d2d93ef9acbc1ceb65ef430",
"revCount": 4,
"rev": "8868eb8736c3395186fa410c040e0000abca56bd",
"revCount": 3,
"type": "git",
"url": "https://code.kmein.de/kfm/panoptikon"
},
@@ -793,12 +827,13 @@
"llm-agents": "llm-agents",
"menstruation-backend": "menstruation-backend",
"menstruation-telegram": "menstruation-telegram",
"meteora": "meteora",
"naersk": "naersk",
"niphas": "niphas",
"nix-index-database": "nix-index-database",
"nix-topology": "nix-topology",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs_3",
"nixpkgs-old": "nixpkgs-old",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
@@ -819,11 +854,11 @@
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1771585531,
"narHash": "sha256-xMDlGXSLxr5F2lt7ydy3ve4rE7xFVvBx1u8OyYOXyDI=",
"lastModified": 1769786006,
"narHash": "sha256-ax6cH54Nc20QuxlHNC8RMt1P8quMECY4gaACFAdd5ec=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "46a214b5d35f2e2a02c0b278d9287b20760821eb",
"rev": "eb0588812b041ebbf2645555f2a4df3bcd853c6d",
"type": "github"
},
"original": {
@@ -868,11 +903,11 @@
]
},
"locked": {
"lastModified": 1771194122,
"narHash": "sha256-qfig6BV9SEmyXOaNkJdvCMsSbX4+f4Q0FRCT5BZQUng=",
"lastModified": 1769038106,
"narHash": "sha256-k558r83lvHbqDlEFEf3zCX1/WuMNgnp1bjMbwMhg5wM=",
"owner": "krebs",
"repo": "stockholm",
"rev": "095d45d1a520ff905ae9695edab330338808efad",
"rev": "0122ded2137e568e771e753c0c3a17b1b20d9ca7",
"type": "github"
},
"original": {
@@ -902,11 +937,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1771628068,
"narHash": "sha256-+9nD7qc815g+RMMFM0YJGTIPuBcLWHg35it5Ao8eVms=",
"lastModified": 1769829895,
"narHash": "sha256-J2jDCqzdtUxKVstC/zwy4TaSYgUxyzInGZ1qU7W2LaE=",
"owner": "danth",
"repo": "stylix",
"rev": "83bf151687138c82a99451af49bc92527f9a8d4e",
"rev": "413e927522d65ca8a37b283f4e88ada4865971dd",
"type": "github"
},
"original": {
@@ -1159,11 +1194,11 @@
]
},
"locked": {
"lastModified": 1770228511,
"narHash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk=",
"lastModified": 1769691507,
"narHash": "sha256-8aAYwyVzSSwIhP2glDhw/G0i5+wOrren3v6WmxkVonM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "337a4fe074be1042a35086f15481d763b8ddc0e7",
"rev": "28b19c5844cc6e2257801d43f2772a4b4c050a1b",
"type": "github"
},
"original": {
@@ -1236,11 +1271,11 @@
]
},
"locked": {
"lastModified": 1771451129,
"narHash": "sha256-THH/4ykNzg5DRzKFMX1PI+OG4SIvo/roMRKeo+Gq+FU=",
"lastModified": 1770311206,
"narHash": "sha256-gzTvuaJZaymgxQC4rOZ9HlMRRWHVF2moEEaTnCG556A=",
"owner": "lassulus",
"repo": "wrappers",
"rev": "3c61ecaa13e5b25be07d55730b64ad41f2ef763f",
"rev": "241f2f7dfcac0dbb2338105bdba7f03f412c5847",
"type": "github"
},
"original": {

View File

@@ -28,6 +28,7 @@
wrappers.url = "github:lassulus/wrappers";
llm-agents.url = "github:numtide/llm-agents.nix";
opencrow.url = "github:pinpox/opencrow";
meteora.url = "git+ssh://git@github.com/kmein/meteora.git";
voidrice.flake = false;
@@ -96,6 +97,7 @@
stylix,
voidrice,
wetter,
meteora,
...
}:
let
@@ -302,6 +304,7 @@
autorenkalender = autorenkalender.packages.${prev.stdenv.hostPlatform.system}.default;
onomap = scripts.packages.${prev.stdenv.hostPlatform.system}.onomap;
tinc-graph = tinc-graph.packages.${prev.stdenv.hostPlatform.system}.tinc-graph;
meteora-website = meteora.packages.${prev.stdenv.hostPlatform.system}.website;
# krebs
brainmelter = prev.callPackage packages/brainmelter.nix { };
@@ -513,7 +516,7 @@
++ profiles.desktop
++ [
systems/manakish/configuration.nix
nixos-hardware.nixosModules.lenovo-thinkpad-x230
nixos-hardware.nixosModules.lenovo-thinkpad-x220
];
};
kabsa = nixpkgs.lib.nixosSystem {
@@ -524,7 +527,7 @@
++ profiles.desktop
++ [
systems/kabsa/configuration.nix
nixos-hardware.nixosModules.lenovo-thinkpad-x220
nixos-hardware.nixosModules.lenovo-thinkpad-x230
];
};
fatteh = nixpkgs.lib.nixosSystem {

View File

@@ -35,26 +35,6 @@ writers.writeBashBin "mp3player-write" ''
exit 1
fi
TOTAL_SIZE=0
for f in "''${FILES[@]}"; do
if [ ! -f "$f" ]; then
echo "Warning: File '$f' does not exist, skipping."
continue
fi
FILE_SIZE=$(${lib.getExe' coreutils "stat"} --printf="%s" "$f")
TOTAL_SIZE=$((TOTAL_SIZE + FILE_SIZE / 2))
done
AVAILABLE=$(${lib.getExe' coreutils "df"} --output=avail "$MOUNT_POINT" | ${lib.getExe' coreutils "tail"} -n 1)
AVAILABLE=$((AVAILABLE * 1024))
if [ "$TOTAL_SIZE" -gt "$AVAILABLE" ]; then
echo "Error: Not enough space. Required: $TOTAL_SIZE bytes, Available: $AVAILABLE bytes"
exit 1
fi
echo "Enough space available. Starting conversion..."
sanitize_filename() {
local name
name=$(${lib.getExe' coreutils "basename"} "$1")

View File

@@ -2,7 +2,7 @@
{
lib,
writers,
poppler_utils,
poppler-utils,
tesseract,
coreutils,
}:
@@ -21,7 +21,7 @@ writers.writeDashBin "pdf-ocr" ''
cd "$tmpdir"
${lib.getExe' poppler_utils "pdftoppm"} -png "$pdf_path" pdf-ocr
${lib.getExe' poppler-utils "pdftoppm"} -png "$pdf_path" pdf-ocr
for png in pdf-ocr*.png; do
${lib.getExe tesseract} "$png" "$png.txt" 2>/dev/null
done

View File

@@ -18,7 +18,7 @@ let
];
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = "sha256-YrrQ5m8XYKFNR2+dn97GYxKxcWPBndomPZsqKfwD6w0=";
outputHash = "sha256-+XaHU/Ale2YLQmdvfG73nG+tjRkWyb27bdLgI3JFLlU=";
impureEnvVars = [
"http_proxy"
"https_proxy"

Submodule secrets updated: 4fa163a68e...0c10b2e8bb

View File

@@ -1,4 +1,5 @@
secrets/alertmanager-token-reporters.age
secrets/anthropic-api-key.age
secrets/brevo-key.age
secrets/cifs-credentials-zodiac.age
secrets/copecart-ipn.age
@@ -54,6 +55,7 @@ secrets/matrix-token-lakai.age
secrets/matrix-token-lakai-env.age
secrets/maxmind-license-key.age
secrets/mega-password.age
secrets/meteora-auth.age
secrets/miniflux-api-token.age
secrets/miniflux-credentials.age
secrets/nextcloud-password-admin.age
@@ -61,7 +63,11 @@ secrets/nextcloud-password-database.age
secrets/nextcloud-password-fysi.age
secrets/nextcloud-password-kieran.age
secrets/onlyoffice-jwt-key.age
secrets/openclaw-gateway-token.age
secrets/openclaw-telegram-token.age
secrets/opencrow-gemini-key.age
secrets/opencrow-matrix-token.age
secrets/opencrow-openrouter-key.age
secrets/opencrow-soul.age
secrets/openweathermap-api-key.age
secrets/restic.age

View File

@@ -1,4 +1,3 @@
{ pkgs, ... }:
{
nixpkgs.config = {
allowUnfree = true;
@@ -22,14 +21,7 @@
};
};
services.ollama = {
enable = true;
acceleration = "cuda"; # Force it to use the MX150
package = pkgs.ollama-cuda;
};
nix.settings.system-features = [ "cuda" ];
nixpkgs.config.cudaCapabilities = [ "6.1" ];
programs.nix-required-mounts = {
enable = true;

View File

@@ -17,6 +17,7 @@
./wallabag.nix
./nethack.nix
./opencrow.nix
./meteora.nix
];
niveum.passport = {

18
systems/ful/meteora.nix Normal file
View File

@@ -0,0 +1,18 @@
{ config, pkgs, ... }: {
age.secrets.meteora-auth = {
file = ../../secrets/meteora-auth.age;
owner = "nginx";
};
services.nginx = {
enable = true;
virtualHosts."meteora.xn--kiern-0qa.de" = {
forceSSL = true;
enableACME = true;
root = "${pkgs.meteora-website}";
locations."/" = {
basicAuthFile = config.age.secrets.meteora-auth.path;
};
};
};
}