Headscale and Tailscale config modules
This commit is contained in:
parent
53ce9740bd
commit
eb0a31cce6
@ -67,7 +67,6 @@
|
|||||||
comma
|
comma
|
||||||
coreutils
|
coreutils
|
||||||
devenv
|
devenv
|
||||||
fabric-ai
|
|
||||||
fd
|
fd
|
||||||
gcc
|
gcc
|
||||||
go
|
go
|
||||||
@ -79,7 +78,7 @@
|
|||||||
llm
|
llm
|
||||||
lf
|
lf
|
||||||
nix-index
|
nix-index
|
||||||
procs
|
nushellPlugins.skim
|
||||||
progress
|
progress
|
||||||
ripgrep
|
ripgrep
|
||||||
rocmPackages.rocm-smi
|
rocmPackages.rocm-smi
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
|
|
||||||
features = {
|
features = {
|
||||||
cli = {
|
cli = {
|
||||||
fish.enable = true;
|
nushell.enable = true;
|
||||||
fzf.enable = true;
|
skim.enable = true;
|
||||||
nitch.enable = true;
|
nitch.enable = true;
|
||||||
secrets.enable = false;
|
secrets.enable = false;
|
||||||
starship.enable = true;
|
starship.enable = true;
|
||||||
|
@ -48,8 +48,8 @@ in {
|
|||||||
};
|
};
|
||||||
features = {
|
features = {
|
||||||
cli = {
|
cli = {
|
||||||
fish.enable = true;
|
nushell.enable = true;
|
||||||
fzf.enable = true;
|
skim.enable = true;
|
||||||
nitch.enable = true;
|
nitch.enable = true;
|
||||||
secrets.enable = true;
|
secrets.enable = true;
|
||||||
starship.enable = true;
|
starship.enable = true;
|
||||||
|
@ -12,10 +12,6 @@ in {
|
|||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.ollama = {
|
services.ollama = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package =
|
|
||||||
if config.services.xserver.videoDrivers == ["amdgpu"] # rocblas-6.0.2 broken
|
|
||||||
then pkgs.pinned.ollama
|
|
||||||
else pkgs.ollama;
|
|
||||||
acceleration =
|
acceleration =
|
||||||
if config.services.xserver.videoDrivers == ["amdgpu"]
|
if config.services.xserver.videoDrivers == ["amdgpu"]
|
||||||
then "rocm"
|
then "rocm"
|
||||||
|
@ -22,6 +22,9 @@
|
|||||||
searx = {
|
searx = {
|
||||||
file = ../../secrets/searx.age;
|
file = ../../secrets/searx.age;
|
||||||
};
|
};
|
||||||
|
tailscale-key = {
|
||||||
|
file = ../../secrets/tailscale-key.age;
|
||||||
|
};
|
||||||
traefik = {
|
traefik = {
|
||||||
file = ../../secrets/traefik.age;
|
file = ../../secrets/traefik.age;
|
||||||
owner = "traefik";
|
owner = "traefik";
|
||||||
|
@ -1,23 +1,26 @@
|
|||||||
{pkgs, ...}: {
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
services.tailscale = {
|
services.tailscale = {
|
||||||
enable = true;
|
enable = true;
|
||||||
useRoutingFeatures = "both";
|
useRoutingFeatures = "both";
|
||||||
|
authKeyFile = config.age.secrets.tailscale-key.path;
|
||||||
extraUpFlags = [
|
extraUpFlags = [
|
||||||
"--login-server https://va.m3tam3re.com"
|
"--login-server=${config.services.headscale.settings.server_url}"
|
||||||
"--advertise-exit-node"
|
"--advertise-exit-node"
|
||||||
"--accept-routes"
|
"--accept-routes"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Persistent systemd service for network settings
|
services.networkd-dispatcher = {
|
||||||
systemd.services.configure-network-offload = {
|
enable = true;
|
||||||
description = "Configure network offload settings";
|
rules."50-tailscale" = {
|
||||||
after = ["network.target"];
|
onState = ["routable"];
|
||||||
wantedBy = ["multi-user.target"];
|
script = ''
|
||||||
serviceConfig = {
|
"${pkgs.ethtool} NETDEV=$(ip -o route get 8.8.8.8 | cut -f 5 -d " ") | -K $NETDEV rx-udp-gro-forwarding on rx-gro-list off
|
||||||
Type = "oneshot";
|
'';
|
||||||
RemainAfterExit = true;
|
|
||||||
ExecStart = "${pkgs.ethtool}/bin/ethtool -K ens3 rx-udp-gro-forwarding on rx-gro-list off";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -37,5 +40,6 @@
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
ethtool
|
ethtool
|
||||||
tailscale
|
tailscale
|
||||||
|
networkd-dispatcher
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user