You are not logged in.

#1 2022-11-06 23:28:35

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Hyper-V enhanced session

Following the arch wiki at https://wiki.archlinux.org/title/Hyper- … ssion_mode

I get an error while trying to build xorgxrdp-devel-git AUR package (in the makepkg.sh of the git)


Package dependency requirement 'xrdp >= 0.9.80' could not be satisfied.
Package 'xrdp' has version '0.9.19', required version is '>= 0.9.80'

There is no AUR >=0.9.80 package for xrdp in AUR

Any help appreciated!

Offline

#2 2022-11-07 00:36:31

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,132

Re: Hyper-V enhanced session

Try xrdp-git? That should build the current version.


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#3 2022-11-07 00:49:48

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Re: Hyper-V enhanced session

i should have said that but i tried all of them already. xrdp-git builds 0.9.18

Offline

#4 2022-11-07 01:32:10

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,132

Re: Hyper-V enhanced session

bangbangpow wrote:

i should have said that but i tried all of them already. xrdp-git builds 0.9.18

It shouldn't. However, when I tried it, it didn't build anything at all.

==> WARNING: PACKAGER should have the format 'Example Name <email@address.invalid>'
==> Making package: xrdp-git 1:0.9.18.r35.ge1c6afa3-1 (Dydd Llun 07 mis Tachwedd 2022 01:29:20 GMT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Cloning xrdp-git git repo...
Cloning into bare repository '/home/software/sources/xrdp-git'...
remote: Enumerating objects: 30375, done.
remote: Counting objects: 100% (570/570), done.
remote: Compressing objects: 100% (339/339), done.
remote: Total 30375 (delta 287), reused 415 (delta 209), pack-reused 29805
Receiving objects: 100% (30375/30375), 16.18 MiB | 5.80 MiB/s, done.
Resolving deltas: 100% (20917/20917), done.
  -> Found arch-config.diff
==> Validating source files with sha256sums...
    xrdp-git ... Skipped
    arch-config.diff ... Passed
==> Extracting sources...
  -> Creating working copy of xrdp-git git repo...
Cloning into 'xrdp-git'...
done.
Switched to a new branch 'makepkg'
==> Starting prepare()...
patching file instfiles/xrdp.service.in
patching file instfiles/xrdp-sesman.service.in
patching file sesman/sesman.ini.in
Hunk #1 FAILED at 94.
1 out of 1 hunk FAILED -- saving rejects to file sesman/sesman.ini.in.rej
patching file sesman/startwm.sh
==> ERROR: A failure occurred in prepare().
    Aborting...

EDIT: According to the AUR comments, you might need xrdp-devel-git, though xrdp-git also seems to use the development branch.

Last edited by cfr (2022-11-07 01:43:31)


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#5 2022-11-07 02:25:12

loqs
Member
Registered: 2014-03-06
Posts: 17,372

Re: Hyper-V enhanced session

Try applying the following to https://aur.archlinux.org/packages/xrdp which hopefully updates it to 0.9.20

diff --git a/PKGBUILD b/PKGBUILD
index e48408e..c6fe696 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,14 +6,14 @@
 # Contributor: Mathias R. <pu154r@overlinux.org>
 
 pkgname=xrdp
-pkgver=0.9.19
-pkgrel=2
+pkgver=0.9.20
+pkgrel=1
 pkgdesc="An open source remote desktop protocol (RDP) server"
 url="https://github.com/neutrinolabs/xrdp"
 arch=(i686 x86_64 armv6h armv7l aarch64)
 license=('Apache')
 makedepends=('nasm')
-depends=('tigervnc' 'libxrandr' 'fuse' 'libfdk-aac' 'ffmpeg' 'imlib2')
+depends=('libxrandr' 'fuse' 'libfdk-aac' 'ffmpeg' 'imlib2')
 checkdepends=('check')
 backup=('etc/xrdp/sesman.ini'
 	'etc/xrdp/xrdp.ini'
@@ -23,12 +23,12 @@ backup=('etc/xrdp/sesman.ini'
 install="${pkgname}.install"
 source=("https://github.com/neutrinolabs/xrdp/releases/download/v${pkgver}/xrdp-${pkgver}.tar.gz"
 	"arch-config.diff")
-sha256sums=('94017d30e475c6d7a24f651e16791551862ae46f82d8de62385e63393f5f93d0'
-            '28a58f9cdf8cffc29b0d7738ee6b4d1bdab7fc7361be54282a49e0fa00c57d3c')
+sha256sums=('db693401da95b71b4d4e4c99aeb569a546dbdbde343f6d3302b0c47653277abb'
+            '43ffb40a6787ca1ff4be2ce921093ac9a5ad45c096b5908f334294ce3dc49bbd')
 
 prepare() {
   cd "${pkgname}-${pkgver}"
-  patch -Np2 -b -z .orig <../arch-config.diff
+  patch -Np1 -i ../arch-config.diff
   ./bootstrap
 }
 
diff --git a/arch-config.diff b/arch-config.diff
index d036f9f..7218a35 100644
--- a/arch-config.diff
+++ b/arch-config.diff
@@ -1,54 +1,58 @@
-diff -up src/xrdp-0.9.16/instfiles/xrdp.service.in.orig src/xrdp-0.9.16/instfiles/xrdp.service.in
---- src/xrdp-0.9.16/instfiles/xrdp.service.in.orig	2020-06-26 05:13:58.000000000 -0600
-+++ src/xrdp-0.9.16/instfiles/xrdp.service.in	2021-05-12 17:06:31.680000000 -0600
-@@ -6,11 +6,9 @@ After=network.target xrdp-sesman.service
+diff --git a/instfiles/xrdp-sesman.service.in b/instfiles/xrdp-sesman.service.in
+index 8f754d6..8223dc5 100644
+--- a/instfiles/xrdp-sesman.service.in
++++ b/instfiles/xrdp-sesman.service.in
+@@ -7,11 +7,9 @@ BindsTo=xrdp.service
  
  [Service]
  Type=forking
--PIDFile=@localstatedir@/run/xrdp.pid
+-PIDFile=@localstatedir@/run/xrdp-sesman.pid
 -EnvironmentFile=-@sysconfdir@/sysconfig/xrdp
 -EnvironmentFile=-@sysconfdir@/default/xrdp
--ExecStart=@sbindir@/xrdp $XRDP_OPTIONS
--ExecStop=@sbindir@/xrdp $XRDP_OPTIONS --kill
-+PIDFile=/run/xrdp.pid
-+ExecStart=@sbindir@/xrdp
-+ExecStop=@sbindir@/xrdp --kill
+-ExecStart=@sbindir@/xrdp-sesman $SESMAN_OPTIONS
+-ExecStop=@sbindir@/xrdp-sesman $SESMAN_OPTIONS --kill
++PIDFile=/run/xrdp-sesman.pid
++ExecStart=@sbindir@/xrdp-sesman
++ExecStop=@sbindir@/xrdp-sesman --kill
  
  [Install]
  WantedBy=multi-user.target
-diff -up src/xrdp-0.9.16/instfiles/xrdp-sesman.service.in.orig src/xrdp-0.9.16/instfiles/xrdp-sesman.service.in
---- src/xrdp-0.9.16/instfiles/xrdp-sesman.service.in.orig	2020-06-26 05:13:58.000000000 -0600
-+++ src/xrdp-0.9.16/instfiles/xrdp-sesman.service.in	2021-05-12 17:06:31.690000000 -0600
-@@ -7,11 +7,9 @@ BindsTo=xrdp.service
+diff --git a/instfiles/xrdp.service.in b/instfiles/xrdp.service.in
+index 576c1c2..95f0e48 100644
+--- a/instfiles/xrdp.service.in
++++ b/instfiles/xrdp.service.in
+@@ -6,11 +6,9 @@ After=network.target xrdp-sesman.service
  
  [Service]
  Type=forking
--PIDFile=@localstatedir@/run/xrdp-sesman.pid
+-PIDFile=@localstatedir@/run/xrdp.pid
 -EnvironmentFile=-@sysconfdir@/sysconfig/xrdp
 -EnvironmentFile=-@sysconfdir@/default/xrdp
--ExecStart=@sbindir@/xrdp-sesman $SESMAN_OPTIONS
--ExecStop=@sbindir@/xrdp-sesman $SESMAN_OPTIONS --kill
-+PIDFile=/run/xrdp-sesman.pid
-+ExecStart=@sbindir@/xrdp-sesman
-+ExecStop=@sbindir@/xrdp-sesman --kill
+-ExecStart=@sbindir@/xrdp $XRDP_OPTIONS
+-ExecStop=@sbindir@/xrdp $XRDP_OPTIONS --kill
++PIDFile=/run/xrdp.pid
++ExecStart=@sbindir@/xrdp
++ExecStop=@sbindir@/xrdp --kill
  
  [Install]
  WantedBy=multi-user.target
-diff -up src/xrdp-0.9.16/sesman/sesman.ini.orig src/xrdp-0.9.16/sesman/sesman.ini
---- src/xrdp-0.9.16/sesman/sesman.ini.orig	2021-04-30 06:26:36.000000000 -0600
-+++ src/xrdp-0.9.16/sesman/sesman.ini	2021-05-12 17:09:30.930000000 -0600
-@@ -94,7 +94,7 @@ EnableSyslog=true
- ; CentOS 7              :  param=/usr/bin/Xorg or param=Xorg
+diff --git a/sesman/sesman.ini b/sesman/sesman.ini
+index 00c14cb..40eeffe 100644
+--- a/sesman/sesman.ini
++++ b/sesman/sesman.ini
+@@ -111,7 +111,7 @@ EnableSyslog=true
  ; CentOS 8              :  param=/usr/libexec/Xorg
+ ; FreeBSD (from 2022Q4) :  param=/usr/local/libexec/Xorg
  ;
 -param=Xorg
 +param=/usr/lib/Xorg
- ; Leave the rest paramaters as-is unless you understand what will happen.
+ ; Leave the rest parameters as-is unless you understand what will happen.
  param=-config
  param=xrdp/xorg.conf
-diff -up src/xrdp-0.9.16/sesman/startwm.sh.orig src/xrdp-0.9.16/sesman/startwm.sh
---- src/xrdp-0.9.16/sesman/startwm.sh.orig	2020-12-28 07:03:43.000000000 -0700
-+++ src/xrdp-0.9.16/sesman/startwm.sh	2021-05-12 17:06:31.690000000 -0600
+diff --git a/sesman/startwm.sh b/sesman/startwm.sh
+index 4bbb2c1..057cbd0 100755
+--- a/sesman/startwm.sh
++++ b/sesman/startwm.sh
 @@ -58,11 +58,26 @@ post_start()
  #start the window manager
  wm_start()

Last edited by loqs (2022-11-07 02:37:06)

Offline

#6 2022-11-07 19:44:47

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Re: Hyper-V enhanced session

Could you please tell me how to apply this patch? also, I'm not sure how to download the package xrdp without installing it? I normally use yay

Offline

#7 2022-11-07 20:07:57

loqs
Member
Registered: 2014-03-06
Posts: 17,372

Re: Hyper-V enhanced session

git clone https://aur.archlinux.org/xrdp.git
cd xrdp
curl -F 'f:1=<-' ix.io < PKGBUILD.diff
git apply PKGBUILD.diff
makepkg -rsi

https://wiki.archlinux.org/title/Makepkg#Usage

Offline

#8 2022-11-08 00:02:32

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Re: Hyper-V enhanced session

thank you, i got xrdp 0.9.20 installed but xorgxrdp-devel-git still won't install:

configure: error: Package requirements (xrdp >= 0.9.80) were not met:

Package dependency requirement 'xrdp >= 0.9.80' could not be satisfied.
Package 'xrdp' has version '0.9.20', required version is '>= 0.9.80'

So instead of xorgxrdp-devel-git i tried both xorgxrdp-git and xorgxrdp and I get a build error on both

rdpClientCon.c: In function 'rdpClientConProcessMsgClientInfo':
rdpClientCon.c:981:31: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  981 |     if (clientCon->client_info.monitorCount > 0)
      |                               ^
rdpClientCon.c:984:84: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  984 |         LLOGLN(0, ("  client monitor data, monitorCount=%d", clientCon->client_info.monitorCount));
      |                                                                                    ^
rdpClientCon.c:57:43: note: in definition of macro 'LLOGLN'
   57 |     do { if (_level < LOG_LEVEL) { ErrorF _args ; ErrorF("\n"); } } while (0)
      |                                           ^~~~~
rdpClientCon.c:987:50: error: 'struct xrdp_client_info' has no member named 'minfo'
  987 |         memcpy(dev->minfo, clientCon->client_info.minfo, sizeof(dev->minfo));
      |                                                  ^
rdpClientCon.c:988:51: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  988 |         dev->monitorCount = clientCon->client_info.monitorCount;
      |                                                   ^
make[3]: *** [Makefile:679: rdpClientCon.lo] Error 1

Offline

#9 2022-11-08 21:12:39

jtrouth
Member
Registered: 2022-11-08
Posts: 1

Re: Hyper-V enhanced session

Looks like there's a bug in the dev branch for xorgxrdp. Updating the repo refs in the makepkg.sh script fixed it for me:

sed -i 's/-devel-git/-git/g' makepkg.sh

Offline

#10 2022-11-08 23:04:24

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Re: Hyper-V enhanced session

i get an error while building the package if i use xorgxrpd

rdpClientCon.c: In function 'rdpClientConProcessMsgClientInfo':
rdpClientCon.c:981:31: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  981 |     if (clientCon->client_info.monitorCount > 0)
      |                               ^
rdpClientCon.c:984:84: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  984 |         LLOGLN(0, ("  client monitor data, monitorCount=%d", clientCon->client_info.monitorCount));
      |                                                                                    ^
rdpClientCon.c:57:43: note: in definition of macro 'LLOGLN'
   57 |     do { if (_level < LOG_LEVEL) { ErrorF _args ; ErrorF("\n"); } } while (0)
      |                                           ^~~~~
rdpClientCon.c:987:50: error: 'struct xrdp_client_info' has no member named 'minfo'
  987 |         memcpy(dev->minfo, clientCon->client_info.minfo, sizeof(dev->minfo));
      |                                                  ^
rdpClientCon.c:988:51: error: 'struct xrdp_client_info' has no member named 'monitorCount'
  988 |         dev->monitorCount = clientCon->client_info.monitorCount;
      |                                                   ^
make[3]: *** [Makefile:679: rdpClientCon.lo] Error 1

Last edited by bangbangpow (2022-11-09 00:12:06)

Offline

#11 2022-11-09 01:02:23

bangbangpow
Member
Registered: 2022-11-06
Posts: 6

Re: Hyper-V enhanced session

I cheated and changed the version number to 0.9.80 in the PKGBUILD file for xrdp so I could install the aur package xorgxrdp-devel-git ...

Last edited by bangbangpow (2022-11-09 01:04:11)

Offline

#12 2022-11-14 21:21:03

k247tEK
Member
Registered: 2022-06-25
Posts: 6
Website

Re: Hyper-V enhanced session

hi bangbangpow,
I updated arch today with..

$ sudo pacman -Syu
$ yay -Syu

& xrdp stopped running on startup..

archlinuxVM
OS: Arch Linux x86_64
Host: Virtual Machine Hyper-V UEFI Release v4.0
Kernel: 6.0.8-arch1-1
Shell: bash 5.1.16
DE: Xfce 4.16
WM: Xfwm4
CPU: Intel i5 M 430 (2) @ 2.260GHz
Memory: 231MiB / 1910MiB

using X11, XFCE... sooo.. after looking at logs with

$ journalctl -r | grep xrdp | lnav -q

found some errors...

.."xrdp.service: Job xrdp.service/start failed with result 'dependency'."..
.."Dependency failed for xrdp daemon"..
.."/usr/bin/xrdp-sesman: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory"..

soo.. made sure xrdp & xrdp-sesman were enabled with..

$ sudo systemctl enable xrdp
$ sudo systemctl enable xrdp-sesman

& installed openssl-1.1 for "shared libraries: libssl.so.1.1" with..

$ sudo pacman -S openssl-1.1

Also installed "paru" from AUR with..

$ yay -S paru

but... I'm not sure if this is required...
then.. generate rsakeys keys for xrdp with..

$ sudo xrdp-keygen xrdp /etc/xrdp/rsakeys.ini

note.. before reboot.. reinstall packages...

$ yay -Rns xrdp xorgxrdp sbc pulseaudio-module-xrdp
$ yay -S xrdp
$ yay -S xorgxrdp
$ yay -S sbc
$ yay -S pulseaudio-module-xrdp

then configure the XRDP server..

$ cd Downloads
$ git clone https://github.com/Microsoft/linux-vm-tools
$ cd linux-vm-tools/arch
$ sudo ./install-config.sh

note.. Edit ~/.xinitrc to start Desktop Environment add..

...
exec startxfce4
...

to start xfce4-Desktop without dbus-lanuch, dbus-x11 has to be installed & dbus removed..

$ yay -S dbus-x11

now.... just reboot system ;-]..

That is how I got my hyper-V / VM to start xrdp on startup again...

more info..
Arch Linux virtual machine on Windows10 Hyper-V with Enhanced Session Mode

Hope it helps,
k..

Last edited by k247tEK (2022-11-16 20:03:18)


(tEK_Newbie)
we live & learn..]]]....

Offline

#13 2023-01-14 07:31:47

lynuxxdreamzzz
Member
Registered: 2023-01-14
Posts: 1

Re: Hyper-V enhanced session

sed -i "/cd xorgxrdp/a \        sed -i \"/bootstrap/i \  sed -i \'s/9.80/9.21.1/g\' configure.ac\" PKGBUILD" makepkg.sh

Offline

#14 2024-03-27 14:09:31

Dexter23
Member
Registered: 2022-02-19
Posts: 16

Re: Hyper-V enhanced session

Hi k247tEK
I try to enable enhanced session on Hyper-V with ArchLinux VM, i follow the arch wiki:
https://wiki.archlinux.org/title/Hyper- … ssion_mode
But when i run "makepkg.sh" i get an error same for the guys open this thread but different version.
So i follow your article on github:
https://github.com/k247tEK/archVM-Hyper-V
But when shutdown the vm and do the command on powershell and start the windows for set resolution for the enhanced mode not appear, if i do "systemclt statux xrdp" i have this errors:
zBSSuqY.png

Last edited by Dexter23 (2024-03-27 14:10:53)

Offline

#15 2024-03-29 16:50:34

Dexter23
Member
Registered: 2022-02-19
Posts: 16

Re: Hyper-V enhanced session

UPDATE:
I check hyper-v settings for server and enable enhanced mode session and it works!!
You can close this thread.

Offline

Board footer

Powered by FluxBB