Skip to content

Instantly share code, notes, and snippets.

@HarmfulBreeze
Last active January 19, 2026 04:01
Show Gist options
  • Select an option

  • Save HarmfulBreeze/9d013676301d784ce9783a39b0e66a84 to your computer and use it in GitHub Desktop.

Select an option

Save HarmfulBreeze/9d013676301d784ce9783a39b0e66a84 to your computer and use it in GitHub Desktop.
Setting up Hyper-V Enhanced Session Mode with Fedora 43

Tested working on Fedora Workstation 39, 40, 41, 42, and 43.

(Commands prefixed with a # should be run as the root user or with sudo. Commands prefixed with a $ should be run as a regular/unprivileged user.)

  1. # dnf install xrdp (with Xorg session support: # dnf install xrdp xorgxrdp)
  2. If using GNOME: # $EDITOR /etc/pam.d/xrdp-sesman and comment and uncomment the appropriate lines.
  3. If using Xfce: $ echo startxfce4 > $HOME/.xsession and $ chmod +x $HOME/.xsession.
  4. Optionally, rename the shared drives mount: # $EDITOR /etc/xrdp/sesman.ini and set FuseMountName=shared-drives
  5. # $EDITOR /etc/xrdp/xrdp.ini and set:
    • port=vsock://-1:3389 ([Globals] section)
    • vmconnect=true (uncomment)
    • security_layer=rdp
    • bitmap_compression=false
    • If you chose to install the xorgxrdp package: uncomment the whole [Xorg] section.
  6. $ systemctl enable xrdp xrdp-sesman
  7. Shut down the virtual machine (do NOT reboot) and close the Virtual Machine Connection window.
  8. On your host, in PowerShell (as admin or as a user in the "Hyper-V Administrators" group): Set-VM -VMName "Name of your Fedora VM" -EnhancedSessionTransportType HvSocket
  9. Connect to your VM by reopening the Virtual Machine Connection window, and boot it.

You can now enable Enhanced Session Mode.

@LantosIstvan
Copy link

Yes, my use case was exactly like that, unfortunately, I cannot help in the setup with WSL2:

  • Windows host with Hyper-V hypervisor
    • -> Fedora 43 Workstation (Gnome) guest machine with RDP enabled in settings
      • -> Using a regular Remote Desktop session window (mstsc).

@beastwick
Copy link

beastwick commented Dec 24, 2025

This might be less to do with getting an enhanced session to work, but I had trouble booting into a fresh 43 install using the non rescue kernel. The rescue kernel did work, so it seems that some modules/drivers were missing from the other kernel image. I had to do the following, otherwise I would get an indefinite hang looking for a device that doesn't exist:

The error:

image

Create a new config file specifically for Hyper-V drivers

echo 'add_drivers+=" hv_vmbus hv_netvsc hv_storvsc hv_utils "' | sudo tee /etc/dracut.conf.d/hyperv.conf

Get the version of the bad kernel.

ls /lib/modules

Replace [VERSION] with the string from step 2

sudo dracut -f --kver [VERSION]

Update initramfs.

$ dracut -f --kver 6.17.12-300.fc43.x86_64

Then I was able to boot under Hyper-V.

Can confirm that this guide got enhanced session working for me.

@harahauk
Copy link

@HarmfulBreeze you mention that this is working in Fedora 43? That is interesting. I've had no luck with it. I've been using xrdp on a myriad of distros as a means to enable Hyper-V enhanced-session, but Wayland is kicking my ass right now..

@nreith
Copy link

nreith commented Jan 19, 2026

@harahauk It's very sad still after so many years of Wayland, that we don't have a reliable way to enable remote desktop on a headless machine. There are comments in Fedora forums that claim to have solved this on Fedora 42 or 41, but I have never gotten them working. And it seems very user-unfriendly, having to create certificates and a bunch of other stuff manually.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment