Headless gnome-remote-desktop on NixOS

Hello all, working on trying to set up gnome-remote-desktop (via wayland) with a headless monitor using RDP: Add support for virtual monitors + enhance hardware acceleration support (!69) · Merge requests · GNOME / gnome-remote-desktop · GitLab – while the GUI interface is not yet configured, there is a gsettings key that can be set.

However, even on GNOME 42 on nixos-unstable, even with gnome.gnome-remote-desktop specifically installed (just to make sure I’m not missing the obvious answer), the org.gnome.desktop.remote-desktop.rdp screen-share-mode key appears to be nonexistent, which upstream suggests means a misconfiguration or incorrect install of the package.

Does creating this key require an adjustment to the nixos modules themselves or is this something I should be overriding on the user side?

NixOS intentionally does not expose GSettings schemas globally to avoid conflicts. Each program is expected to have the schemas it needs passed to it through XDG_DATA_DIRS by wrapGAppsHook.

Of course, the corollary is that you can no longer edit system-wide settings. It would be possible to modify gsettings and dconf-editor programs to scan the system for schemas as described in gedit gsettings schema not reachable · Issue #33277 · NixOS/nixpkgs · GitHub but for now, you can get access to the schemas with nix-shell:

nix-shell -I nixpkgs="nixpkgs=channel:nixos-unstable" -p glib gnome.gnome-remote-desktop --run 'XDG_DATA_DIRS=$GSETTINGS_SCHEMAS_PATH gsettings get org.gnome.desktop.remote-desktop.rdp screen-share-mode'
1 Like

Excellent. Many thanks!