From bc7a9d96daf2a0dd2ce59a50b274e18cbcc79e84 Mon Sep 17 00:00:00 2001 From: naturallaw77 Date: Fri, 3 Apr 2026 07:10:40 -0500 Subject: [PATCH] deeper fix for RDP regeneration --- modules/rdp.nix | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/modules/rdp.nix b/modules/rdp.nix index 40cdbb2..50386e7 100755 --- a/modules/rdp.nix +++ b/modules/rdp.nix @@ -1,3 +1,39 @@ +{ config, lib, pkgs, ... }: + +lib.mkIf config.sovran_systemsOS.features.rdp { + + users.users.gnome-remote-desktop = { + isSystemUser = true; + group = "gnome-remote-desktop"; + home = "/var/lib/gnome-remote-desktop"; + createHome = true; + }; + users.groups.gnome-remote-desktop = {}; + + systemd.tmpfiles.rules = [ + "d /var/lib/gnome-remote-desktop 0750 gnome-remote-desktop gnome-remote-desktop -" + "d /var/lib/gnome-remote-desktop/.local 0750 gnome-remote-desktop gnome-remote-desktop -" + "d /var/lib/gnome-remote-desktop/.local/share 0750 gnome-remote-desktop gnome-remote-desktop -" + "d /var/lib/gnome-remote-desktop/.local/share/gnome-remote-desktop 0750 gnome-remote-desktop gnome-remote-desktop -" + ]; + + systemd.services.gnome-remote-desktop-setup = { + description = "Configure GNOME Remote Desktop RDP"; + wantedBy = [ "multi-user.target" ]; + before = [ "gnome-remote-desktop.service" ]; + after = [ "systemd-tmpfiles-setup.service" "network-online.target" ]; + wants = [ "network-online.target" ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + path = [ + pkgs.gnome-remote-desktop + pkgs.polkit + pkgs.openssl + pkgs.hostname + pkgs.gawk + ]; script = '' # Ensure directory structure exists mkdir -p /var/lib/gnome-remote-desktop/.local/share/gnome-remote-desktop @@ -74,4 +110,6 @@ grdctl --system rdp set-credentials sovran "$PASSWORD" echo "GNOME Remote Desktop RDP configured successfully" - ''; \ No newline at end of file + ''; + }; +} \ No newline at end of file