Compare commits
27
Commits
01753a10f6
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
437697cbd5 | ||
|
|
367c4bde11 | ||
|
|
af50f7f39d | ||
|
|
627c848d1d | ||
|
|
09b138391b | ||
|
|
0aa0cc0e0d | ||
|
|
5d9cd9d835 | ||
|
|
656fc82d7f | ||
|
|
f37b4db130 | ||
|
|
52c6a60404 | ||
|
|
f7c68efe3d | ||
|
|
07c53ac387 | ||
|
|
0ea3a46059 | ||
|
|
b4443ea131 | ||
|
|
e47eef6e56 | ||
|
|
f4ac164633 | ||
|
|
b14d48b3e2 | ||
|
|
3475d0cde1 | ||
|
|
65d251504a | ||
|
|
2b24333e3f | ||
|
|
8d0589e157 | ||
|
|
bb549a8ad9 | ||
|
|
9ab0508157 | ||
|
|
ca6e2b5a57 | ||
|
|
ce139a1eec | ||
|
|
679d18b278 | ||
|
|
b4f0765591 |
No files matched your search
@@ -0,0 +1,5 @@
|
|||||||
|
## Me
|
||||||
|
|
||||||
|
[mcp_servers.nixos]
|
||||||
|
command = "nix"
|
||||||
|
args = ["run", "github:utensils/mcp-nixos", "--"]
|
||||||
@@ -1,3 +1 @@
|
|||||||
- Evaluate Plasma Manager when Plasma 6.7 support improves
|
|
||||||
- Review system-wide package list periodically
|
- Review system-wide package list periodically
|
||||||
- Add additional hosts
|
|
||||||
Generated
+32
-31
@@ -37,11 +37,11 @@
|
|||||||
"sf-pro": "sf-pro"
|
"sf-pro": "sf-pro"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787373040,
|
"lastModified": 1789419105,
|
||||||
"narHash": "sha256-mSpL69LSAA/+cQx+v9tC2XC/DD7cUepUmhiMx0/Hw64=",
|
"narHash": "sha256-T5A/AqlF4iL908aIZh45e35Mvj8lTJKq8ddS5bk7nd8=",
|
||||||
"owner": "Lyndeno",
|
"owner": "Lyndeno",
|
||||||
"repo": "apple-fonts.nix",
|
"repo": "apple-fonts.nix",
|
||||||
"rev": "69f20e9ba294420e4b6407a827c6b5aea3afcc12",
|
"rev": "3861e2249cb244bfbc7cfab2303c152cf5f9d9e9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -96,15 +96,16 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784665499,
|
"lastModified": 1788011267,
|
||||||
"narHash": "sha256-9BMxlTxCCDAeoNLtb1a/st7udtTIJep+wpUzquA29VU=",
|
"narHash": "sha256-mEq2kU+ljompTToZ44Afvm7d/rHJ5iMBl0tjZuyShJs=",
|
||||||
"owner": "nix-community",
|
"owner": "Mic92",
|
||||||
"repo": "bun2nix",
|
"repo": "bun2nix",
|
||||||
"rev": "0f2a1f0b6f42cebe3b149bf62d38754c5e0e9729",
|
"rev": "5765b0614591f75ee8ba5596e81ae85c167d1071",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "Mic92",
|
||||||
|
"ref": "fix-structured-attrs-hook",
|
||||||
"repo": "bun2nix",
|
"repo": "bun2nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -161,11 +162,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787559586,
|
"lastModified": 1788450739,
|
||||||
"narHash": "sha256-onL0VLf9vPllmT0H/OlURIU5r5t5WIEl7t4tVNKT0Nw=",
|
"narHash": "sha256-glZLQlzIn1fXH6PazR2iUmTo7kzzyYSshrWhLS9TqCU=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "9d0d87172c374f89da73c1cfe6d81ae62feac1f1",
|
"rev": "31729ca8cbdb4fa927b34e5f4353e6a83f39e993",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -220,11 +221,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787680808,
|
"lastModified": 1789978077,
|
||||||
"narHash": "sha256-9168tNt0NZdtlx5RM5huEuc9NCWMLACJA9O4UK/l2Zc=",
|
"narHash": "sha256-p/e37FfVifxJQJM7OiiVbUXdpj6eXmOJk34TKLKyYe4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "6840c9a8f50722944eb106ce8bb237c138584f2a",
|
"rev": "a26f7158fbc4aa740fcc7fa79a01e1ed29910bc2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -242,11 +243,11 @@
|
|||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787704590,
|
"lastModified": 1789987094,
|
||||||
"narHash": "sha256-WxaT4eXm7WynrXjyi8XZHVD8y7bEE086AFa0zTtxy6A=",
|
"narHash": "sha256-jzlT1EofmNifqUjpiSJMPbm/GiU17r65WUi44Kfkmdc=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "llm-agents.nix",
|
"repo": "llm-agents.nix",
|
||||||
"rev": "4c7c50e9c7aab5a1fbc8d4e26d196a76fde00fc3",
|
"rev": "7c0157f864d113d9f0ce324a78496de6da6e7e07",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -276,11 +277,11 @@
|
|||||||
"nixpkgs": "nixpkgs_3"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787708809,
|
"lastModified": 1789964597,
|
||||||
"narHash": "sha256-g8nkh08udC9gGpHnSb10+yjaw7Ie3bxCz2VmDy1XjRM=",
|
"narHash": "sha256-L+tPmy48VrsS/qVrj504pETaGEcVFMs1QpU5kKpBo0U=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-vscode-extensions",
|
"repo": "nix-vscode-extensions",
|
||||||
"rev": "60132c95fbfebfc9db33217b4eca3b921ff98d38",
|
"rev": "fa4ec37adf8d8c725bfd8915c497ed41c7cb0f70",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -322,11 +323,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787424095,
|
"lastModified": 1789813231,
|
||||||
"narHash": "sha256-dWLO5AHhKaw6rdWCtTes8hnntT1r0/J5yhQGm0f0ZgU=",
|
"narHash": "sha256-dsU+UU4X3ND95E/O6Z33qK5jPxIeB/7akn/+NfAk+nY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "174eb786fb68e3a13e4e535a3deea479a0c07a6a",
|
"rev": "c80073788adf88abfdc443465311f00e7a231600",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -354,11 +355,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1787498568,
|
"lastModified": 1789785513,
|
||||||
"narHash": "sha256-9i/VTdusq/+NM/tz+J1Re+ojkMB8MBf0QshnYfzHz30=",
|
"narHash": "sha256-B44WL6h0XoLjJ41bUPJk0X5SDinLCII//6EcBLXKiJ0=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "56c02bc00adcf003215cc4bd996d6efaf4cff188",
|
"rev": "20b1ddd1aa5ace70c9468305030aa4f9ef79671b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -444,7 +445,7 @@
|
|||||||
"sf-compact": {
|
"sf-compact": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"narHash": "sha256-83JwqfF9O4+gemMQXWHLRg2GNz2jHxsej1F1IkM2dug=",
|
"narHash": "sha256-KjCzuJOrNxgptsMLGaR8wcrU/bBxCpwtUGzGDcCxJTc=",
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"
|
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"
|
||||||
},
|
},
|
||||||
@@ -492,7 +493,7 @@
|
|||||||
"sf-pro": {
|
"sf-pro": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"narHash": "sha256-vINUEMyFmNzZRBOX2aQ4heScWur6RyA/MPmsqlMPIx4=",
|
"narHash": "sha256-dvGLO786y9ygKRSKDJlhIF6AGmn2NTJ5tBulKinPRxY=",
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"
|
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"
|
||||||
},
|
},
|
||||||
@@ -508,11 +509,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1786706192,
|
"lastModified": 1789899222,
|
||||||
"narHash": "sha256-NViIxuTn4VA6w5JPpzamwkCnFUmhFc4CFMemIKsC/B8=",
|
"narHash": "sha256-B00sDpFqhTYuVQIesCdR7GeYJFNogz5U1VmJlSEJnmc=",
|
||||||
"owner": "wimpysworld",
|
"owner": "wimpysworld",
|
||||||
"repo": "sidra",
|
"repo": "sidra",
|
||||||
"rev": "8ace425cda0f462acc7a00ada1e71f87aa30c2cf",
|
"rev": "ebba6a85eadd15de9d324503b012f84bf5eaf4ce",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ let
|
|||||||
in
|
in
|
||||||
{
|
{
|
||||||
home.packages = with agents; [
|
home.packages = with agents; [
|
||||||
antigravity-cli
|
codex
|
||||||
|
codex-acp
|
||||||
claude-code
|
claude-code
|
||||||
|
claude-agent-acp
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./git.nix
|
./git.nix
|
||||||
@@ -7,12 +8,14 @@
|
|||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
programs.btop.enable = true;
|
programs.btop.enable = true;
|
||||||
|
|
||||||
# Per-project toolchain resolution (nix-shell / flake devShell), used by
|
# Per-project toolchain resolution through nix-shell / flake devShell.
|
||||||
# nixvim's LSP servers so they don't need language toolchains installed globally.
|
|
||||||
programs.direnv = {
|
programs.direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nix-direnv.enable = true;
|
nix-direnv.enable = true;
|
||||||
};
|
};
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
fastfetch
|
||||||
|
];
|
||||||
|
|
||||||
home.stateVersion = "25.11";
|
home.stateVersion = "25.11";
|
||||||
}
|
}
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
programs.btop.package = pkgs.btop.override { cudaSupport = false; rocmSupport = true; };
|
programs.btop.package = pkgs.btop.override { cudaSupport = false; rocmSupport = true; };
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# --- Base y Terminal ---
|
|
||||||
vim
|
|
||||||
fastfetch
|
|
||||||
nvtopPackages.full
|
nvtopPackages.full
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../modules/profiles/desktop.nix
|
../../modules/profiles/desktop.nix
|
||||||
../../modules/profiles/server.nix
|
../../modules/profiles/server.nix
|
||||||
|
../../modules/services/ollama.nix
|
||||||
../../modules/services/samba.nix
|
../../modules/services/samba.nix
|
||||||
../../modules/system/home-profile.nix
|
../../modules/system/home-profile.nix
|
||||||
../../modules/system/nix-ld.nix
|
../../modules/system/nix-ld.nix
|
||||||
@@ -36,7 +37,7 @@
|
|||||||
hostName = "miku-homelab";
|
hostName = "miku-homelab";
|
||||||
useNetworkManager = true;
|
useNetworkManager = true;
|
||||||
staticIp = {
|
staticIp = {
|
||||||
interface = "enp6s0";
|
interface = "enp9s0";
|
||||||
address = "10.1.1.21";
|
address = "10.1.1.21";
|
||||||
prefixLength = 24;
|
prefixLength = 24;
|
||||||
gateway = "10.1.1.1";
|
gateway = "10.1.1.1";
|
||||||
@@ -110,7 +111,35 @@
|
|||||||
plymouth.enable = true;
|
plymouth.enable = true;
|
||||||
initrd.kernelModules = [ "amdgpu" ];
|
initrd.kernelModules = [ "amdgpu" ];
|
||||||
kernelPackages = pkgs.linuxPackages_latest;
|
kernelPackages = pkgs.linuxPackages_latest;
|
||||||
kernelParams = [ "quiet" "splash" "boot.shell_on_fail" "loglevel=3" "iommu=pt" ];
|
kernelParams = [
|
||||||
|
"quiet"
|
||||||
|
"splash"
|
||||||
|
"boot.shell_on_fail"
|
||||||
|
"loglevel=3"
|
||||||
|
"iommu=pt"
|
||||||
|
"zswap.enabled=1"
|
||||||
|
"zswap.compressor=zstd"
|
||||||
|
"zswap.max_pool_percent=20"
|
||||||
|
"zswap.zpool=zsmalloc"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{
|
||||||
|
device = "/dev/disk/by-label/optane-swap-1";
|
||||||
|
priority = 50;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
device = "/dev/disk/by-label/optane-swap-2";
|
||||||
|
priority = 50;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
zramSwap = {
|
||||||
|
enable = true;
|
||||||
|
algorithm = "zstd";
|
||||||
|
memoryPercent = 50;
|
||||||
|
priority = 100;
|
||||||
};
|
};
|
||||||
|
|
||||||
time.timeZone = "America/Argentina/Buenos_Aires";
|
time.timeZone = "America/Argentina/Buenos_Aires";
|
||||||
@@ -146,7 +175,7 @@
|
|||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
ExecStart = "${pkgs.ethtool}/bin/ethtool -K enp6s0 rx-udp-gro-forwarding on rx-gro-list on";
|
ExecStart = "${pkgs.ethtool}/bin/ethtool -K enp9s0 rx-udp-gro-forwarding on rx-gro-list on";
|
||||||
RemainAfterExit = true;
|
RemainAfterExit = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
+11
-1
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
age.secrets.vps-wg.file = ../../secrets/vps-wg.age;
|
age.secrets.vps-wg.file = ../../secrets/vps-wg.age;
|
||||||
|
|
||||||
myHomeProfile.extraPrograms = [
|
myHomeProfile.extraPrograms = [
|
||||||
../../home/emmatherock/agents.nix
|
../../home/emmatherock/agents.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -41,6 +41,10 @@
|
|||||||
publicKey = "bqxDHQNxOSFpTo3We9ujC2WljtaRBgiNEewW+Rlu10k=";
|
publicKey = "bqxDHQNxOSFpTo3We9ujC2WljtaRBgiNEewW+Rlu10k=";
|
||||||
allowedIPs = [ "10.20.0.2/32" ];
|
allowedIPs = [ "10.20.0.2/32" ];
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
publicKey = "6aw0w7v9uFGvLn/eSdf7z/ljvzz4kviYlSOSj0LKp1E=";
|
||||||
|
allowedIPs = [ "10.20.0.3/32" ];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -70,6 +74,12 @@
|
|||||||
boot.loader.systemd-boot.configurationLimit = 10;
|
boot.loader.systemd-boot.configurationLimit = 10;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
# Required for this host to act as a Tailscale/Headscale exit node.
|
||||||
|
boot.kernel.sysctl = {
|
||||||
|
"net.ipv4.ip_forward" = 1;
|
||||||
|
"net.ipv6.conf.all.forwarding" = 1;
|
||||||
|
};
|
||||||
|
|
||||||
time.timeZone = "America/Argentina/Buenos_Aires";
|
time.timeZone = "America/Argentina/Buenos_Aires";
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
|||||||
@@ -9,5 +9,7 @@
|
|||||||
options = "--delete-older-than 14d";
|
options = "--delete-older-than 14d";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.journald.extraConfig = "SystemMaxUse=500M";
|
services.journald.settings.Journal = {
|
||||||
|
SystemMaxUse = "500M";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.ollama = {
|
||||||
|
enable = true;
|
||||||
|
# `services.ollama.acceleration` does not exist (that option only lives on
|
||||||
|
# services.tabby); GPU backend selection for ollama is done by package choice.
|
||||||
|
package = pkgs.ollama-rocm;
|
||||||
|
|
||||||
|
# Same "don't expose services directly" pattern as the rest of the homelab:
|
||||||
|
# bind to localhost only. If this needs to be reachable from other devices
|
||||||
|
# later, put it behind Traefik + Headscale like the other services instead
|
||||||
|
# of opening it up directly.
|
||||||
|
host = "127.0.0.1";
|
||||||
|
port = 11434;
|
||||||
|
|
||||||
|
environmentVariables = {
|
||||||
|
# Ollama is on-demand by design: it loads a model into VRAM on the first
|
||||||
|
# request and unloads it after this much idle time. 5m is already the
|
||||||
|
# ollama default, set explicitly so it's not an implicit behavior.
|
||||||
|
OLLAMA_KEEP_ALIVE = "5m";
|
||||||
|
};
|
||||||
|
|
||||||
|
# RDNA4 (gfx1200/gfx1201, incl. the RX 9060 XT) has official ROCm support
|
||||||
|
# since ROCm 6.4.4. Verified on this host (2026-08-30) with rocmPackages.clr
|
||||||
|
# 7.2.3: `rocminfo` correctly reports "Name: gfx1200" and `rocm-smi
|
||||||
|
# --showmeminfo vram` reports the full 16GiB, so the "detected with 0 VRAM,
|
||||||
|
# falls back to CPU" issue does not reproduce here and rocmOverrideGfx is
|
||||||
|
# not needed. If a future nixpkgs bump regresses this, re-check with:
|
||||||
|
# nix shell nixpkgs#rocmPackages.rocminfo -c rocminfo | grep -i gfx
|
||||||
|
# nix shell nixpkgs#rocmPackages.rocm-smi -c rocm-smi --showmeminfo vram
|
||||||
|
# and only then set rocmOverrideGfx = "12.0.0"; (gfx1200) if VRAM reports 0.
|
||||||
|
# rocmOverrideGfx = "12.0.0";
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in new issue
Block a user