NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.4k stars 14.35k forks source link

xrdp server missing KDE option #57717

Closed Zhen-hao closed 4 years ago

Zhen-hao commented 5 years ago

When I log on to remote NixOS via Microsoft Remote Desktop, I get xterm instead of KDE desktop though Plasma 5 is installed on the server.

Steps to reproduce

I used the setting found on https://nixos.wiki/wiki/Remote_Desktop.

Technical details

Please run nix-shell -p nix-info --run "nix-info -m" and paste the results.

these paths will be fetched (0.05 MiB download, 0.28 MiB unpacked): /nix/store/ial8a56ys2rswfq4j2abm3cl99li5b6p-bash-interactive-4.4-p23-dev copying path '/nix/store/ial8a56ys2rswfq4j2abm3cl99li5b6p-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...

sveeke commented 5 years ago

I run to the same problem. Maybe someone can help us out? It doesn't matter what I do, it always defaults to xterm, while I use KDE on the computer I want to take over with it.

I added the following:

services.xrdp.enable = true;
networking.firewall.allowedTCPPorts = [ 3389 ];

And tried lots of different ways of writing kde/startkde/plasma5 etc. in the following line: services.xrdp.defaultWindowManager = "${pkgs.plasma5}";

In https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/networking/xrdp.nix it says that you could also use ~/startwm.sh, so I added that (with execution permission) with different stuff in it, but also to no avail.

Can anyone figure out what I (and @Zhen-hao) are doing wrong?

yugawara commented 4 years ago

Except for icewm, none of above suggestions work

nixos-discourse commented 4 years ago

This issue has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/please-post-working-xrdp-setting-in-configuration-nix/7404/9

davidak commented 4 years ago

I noticed that i had to reboot to get xrdp working.

It works with xfce and icewm on stable.

davidak commented 4 years ago

When setting something like this

services.xrdp.defaultWindowManager = "${config.services.xserver.displayManager.session.script} pantheon+none";

rebuild fails with

error: value is a list while a set was expected, at /root/nixos/machines/zipper/configuration.nix:46:43

even on unstable. but that setting should be a string, as it is. the error makes no sense

same with the mentioned examples like

services.xrdp.defaultWindowManager = "${config.services.xserver.displayManager.session.script} mate+none";

Coda-Coda commented 4 years ago

I get the same error. I can only get icewm to work.

yugawara commented 4 years ago

A few days ago, I decided to switch to Guix - it will take a while but I will see if this issue is any better in the Guix world :-)

Coda-Coda commented 4 years ago

I managed to get KDE+xrdp working! I have it working on NixOS on AWS. Here is my configuration.nix:

{ config, pkgs, ... }:
{
  imports = [ <nixpkgs/nixos/modules/virtualisation/amazon-image.nix> ];
  ec2.hvm = true;
  time.timeZone = "Pacific/Auckland";
   users.users.daniel = {
     isNormalUser = true;
     extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
   };

  environment.systemPackages = with pkgs; [
      plasma-desktop
      sddm
  ];

  services.udisks2.enable = pkgs.lib.mkForce true; # Necessary to override this from amazon-image.nix because it is set to true as a part of KDE
  services.xserver.enable = true;
  services.xserver.displayManager.sddm.enable = true;
  services.xserver.desktopManager.plasma5.enable = true;

  services.xrdp.enable = true;
  services.xrdp.defaultWindowManager = "startplasma-x11";
  networking.firewall.allowedTCPPorts = [ 3389 ];

}

This and this turned out to be the most useful while figuring this out.

Note: weirdly, when "share clipboard" is on (using Microsoft Remote Desktop on MacOS) it fails to connect successfully.

tbenst commented 4 years ago

@Coda-Coda fantastic, I can verify this works on 20.09! Make sure to reboot after rebuilding before trying.

nixos-discourse commented 4 years ago

This issue has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/please-post-working-xrdp-setting-in-configuration-nix/7404/10

Coda-Coda commented 4 years ago

@tbenst thanks, just wondering - does "share clipboard" work for you?

tbenst commented 4 years ago

Yes it’s working for me

On Wed, Nov 25, 2020 at 2:48 PM Daniel Britten notifications@github.com wrote:

@tbenst https://github.com/tbenst thanks, just wondering - does "share clipboard" work for you?

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/NixOS/nixpkgs/issues/57717#issuecomment-733979283, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGSYX2VO6RTDEKCRWPZP2DSRWCVRANCNFSM4G64WYIA .

--

Tyler Benster | tylerbenster.com Twitter: @tbenst http://twitter.com/tbenst | LinkedIn: tylerbenster http://www.linkedin.com/in/tylerbenster/

Coda-Coda commented 4 years ago

@tbenst Ok thanks, good to hear :)

gotjoshua commented 7 months ago

i wanted to run gnome when i login locally, and plasma for xrdp, needed this tweek:

#  services.xserver.displayManager.sddm.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
programs.ssh.askPassword = lib.mkForce "${pkgs.plasma5Packages.ksshaskpass.out}/bin/ksshaskpass";

chose the plasma askpass based on this comment on nixOS forums