Add RustDesk service and nginx configuration

This commit is contained in:
matthew.binning 2026-02-13 08:01:23 -08:00
parent 651cc2be63
commit 0a9981870d
3 changed files with 49 additions and 8 deletions

View file

@ -15,6 +15,7 @@ in
./forgejo.nix
./radicale.nix
./ollama.nix
./rustdesk.nix
# ./llama-server.nix # disabled: source build broken (LLVM 22 vs 19 mismatch in strix-halo overlay)
# ./docuseal.nix
];

View file

@ -117,6 +117,7 @@ in
};
# LM Studio with Bearer token authentication
# Proxies https://lmstudio.binning.net/v1 to http://localhost:1234/v1.
"lmstudio.binning.net" = {
forceSSL = true;
@ -133,8 +134,9 @@ in
return 403 "Forbidden: Invalid API key\n";
}
# Proxy to LM Studio
proxy_pass http://localhost:1234;
# Proxy to LM Studio (running on port 1234)
# Note: The trailing slash is important - it preserves the /v1 path
proxy_pass http://localhost:1234/;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
@ -204,6 +206,20 @@ in
proxyWebsockets = true;
};
};
# RustDesk
"rustdesk.binning.net" = {
forceSSL = true;
#enableACME = true;
sslCertificate = "/srv/nginx/binning.net.pem";
sslCertificateKey = "/srv/nginx/binning.net.key.pem";
locations."/" = {
proxyPass = "http://127.0.0.1:16484";
proxyWebsockets = true;
};
};
};
};

View file

@ -0,0 +1,24 @@
{ config, pkgs, lib, ... }:
{
services.rustdesk = {
enable = true;
server = {
port = 16484;
# Optional: Set a password for the server
# password = "your-password";
};
client = {
# Optional: Set a password for the client
# password = "your-password";
};
};
# Open firewall port for RustDesk
networking.firewall.allowedTCPPorts = [ 16484 ];
# Install RustDesk
environment.systemPackages = with pkgs; [
rustdesk
];
}