From cc9ffaf75430b7336517e71a677831e26f929a88 Mon Sep 17 00:00:00 2001 From: Daniel Olsen Date: Fri, 25 Apr 2025 23:20:19 +0200 Subject: [PATCH] girigiri --- flake.lock | 40 ++++++++++++++--------------- hosts/asuka/soryu/ai-container.nix | 36 ++++++++++++++++++++++++++ hosts/asuka/soryu/configuration.nix | 1 + 3 files changed, 57 insertions(+), 20 deletions(-) create mode 100644 hosts/asuka/soryu/ai-container.nix diff --git a/flake.lock b/flake.lock index 06f239d..0390f39 100644 --- a/flake.lock +++ b/flake.lock @@ -242,11 +242,11 @@ ] }, "locked": { - "lastModified": 1743808813, - "narHash": "sha256-2lDQBOmlz9ggPxcS7/GvcVdzXMIiT+PpMao6FbLJSr0=", + "lastModified": 1744743431, + "narHash": "sha256-iyn/WBYDc7OtjSawbegINDe/gIkok888kQxk3aVnkgg=", "owner": "nix-community", "repo": "home-manager", - "rev": "a9f8b3db211b4609ddd83683f9db89796c7f6ac6", + "rev": "c61bfe3ae692f42ce688b5865fac9e0de58e1387", "type": "github" }, "original": { @@ -421,11 +421,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1743420942, - "narHash": "sha256-b/exDDQSLmENZZgbAEI3qi9yHkuXAXCPbormD8CSJXo=", + "lastModified": 1744633460, + "narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "de6fc5551121c59c01e2a3d45b277a6d05077bc4", + "rev": "9a049b4a421076d27fee3eec664a18b2066824cb", "type": "github" }, "original": { @@ -453,11 +453,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1743703532, - "narHash": "sha256-s1KLDALEeqy+ttrvqV3jx9mBZEvmthQErTVOAzbjHZs=", + "lastModified": 1744440957, + "narHash": "sha256-FHlSkNqFmPxPJvy+6fNLaNeWnF1lZSgqVCl/eWaJRc4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bdb91860de2f719b57eef819b5617762f7120c70", + "rev": "26d499fc9f1d567283d5d56fcf367edd815dba1d", "type": "github" }, "original": { @@ -531,11 +531,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1743583204, - "narHash": "sha256-F7n4+KOIfWrwoQjXrL2wD9RhFYLs2/GGe/MQY1sSdlE=", + "lastModified": 1744932701, + "narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2c8d3f48d33929642c1c12cd243df4cc7d2ce434", + "rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef", "type": "github" }, "original": { @@ -548,8 +548,8 @@ "nixpkgs_3": { "locked": { "lastModified": 0, - "narHash": "sha256-7PCBQ4aGVF8OrzMkzqtYSKyoQuU2jtpPi4lmABpe5X4=", - "path": "/nix/store/yl6bc4g0axk5z4v0lsz8fzpxkc3yv1jl-source", + "narHash": "sha256-FHlSkNqFmPxPJvy+6fNLaNeWnF1lZSgqVCl/eWaJRc4=", + "path": "/nix/store/hzaj4d6ari2wq2cbg1j60n9zw42gnshy-source", "type": "path" }, "original": { @@ -564,11 +564,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1743848787, - "narHash": "sha256-LyE0Sr3mTb/ElWjueF+Lp6bL2FtJcltREd/qvBM0C04=", + "lastModified": 1745267475, + "narHash": "sha256-tEP3odwByxCKdFFtnXIG6r80BAGUMt/AtUC8YPV5LxU=", "owner": "nix-community", "repo": "NUR", - "rev": "5ec7bc0851c41c90f2b62f976fcbf2a0f6f4a88c", + "rev": "af348f73e190e52b6527d33ffb21f1d3e441f35f", "type": "github" }, "original": { @@ -691,11 +691,11 @@ }, "unstable": { "locked": { - "lastModified": 1743689281, - "narHash": "sha256-y7Hg5lwWhEOgflEHRfzSH96BOt26LaYfrYWzZ+VoVdg=", + "lastModified": 1744868846, + "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2bfc080955153be0be56724be6fa5477b4eefabb", + "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", "type": "github" }, "original": { diff --git a/hosts/asuka/soryu/ai-container.nix b/hosts/asuka/soryu/ai-container.nix new file mode 100644 index 0000000..a5309e1 --- /dev/null +++ b/hosts/asuka/soryu/ai-container.nix @@ -0,0 +1,36 @@ +{ config, lib, pkgs, ... }: + +{ + systemd.nspawn.ubuntu-ai = { + execConfig = { + Boot = true; + }; + networkConfig = { + Private = false; + }; + filesConfig = { + BindReadOnly = [ + "/etc/resolv.conf:/etc/resolv.conf" + ]; + Bind = [ + "/dev/dri:/dev/dri" + "/dev/kfd:/dev/kfd" + "/mnt/human/sd:/sd:idmap" + ]; + }; + }; + + systemd.services."systemd-nspawn@ubuntu-ai" = { + environment = { + SYSTEMD_NSPAWN_TMPFS_TMP = "0"; + }; + serviceConfig = { + CPUQuota = "1400%"; + MemoryHigh = "90G"; + MemoryMax = "94G"; + MemorySwapMax = "40G"; + ExecStart = "systemd-nspawn --quiet --keep-unit --boot --link-journal=try-guest --network-veth -U --settings=override --machine=%i -D /mnt/human/machines/ubuntu-ai"; + }; + # overrideStrategy = "asDropin"; + }; +} diff --git a/hosts/asuka/soryu/configuration.nix b/hosts/asuka/soryu/configuration.nix index f1d9e5b..e0bf916 100644 --- a/hosts/asuka/soryu/configuration.nix +++ b/hosts/asuka/soryu/configuration.nix @@ -10,6 +10,7 @@ ./hardware-configuration.nix # ./wack.nix ./ollama.nix + ./ai-container.nix ../../common/builder.nix ];