Based on the work of rdesktop, xrdp uses the remote desktop protocol to
present a GUI to the user.
The goal of this project is to provide a fully functional Linux terminal
server, capable of accepting connections from rdesktop and Microsoft's own
terminal server / remote desktop clients.
Unlike Windows NT/2000/2003 server, xrdp will not display a Windows desktop
but an X window desktop to the user.
Xrdp uses Xvnc or X11rdp to manage the X session.
===> The following configuration options are available for xrdp-0.10.6.1_3,1:
DEBUG=off: Build with debugging support
FUSE=off: Enable drive redirection via FUSE (experimental)
IPV6=on: IPv6 protocol support
====> Options available for the group AUDIO_CODEC
FDKAAC=on: Enable Fraunhofer FDK AAC for audio redirection
MP3LAME=off: Enable MP3 Lame for audio redirection
OPUS=on: Enable Opus for audio redirection
====> Options available for the group VIDEO_CODEC
OPENH264=on: H.264 video codec support via OpenH264
X264=on: H.264 video codec support via x264
===> Use 'make config' to modify these settings
Reason:
xrdp supports H.264 encoding in graphics remoting since v0.10.2.
It reduces the amount of data transmitted over the network and provides
a much smoother and more responsive experience compared to previous
versions. When updating from older v0.10.x versions to v0.10.2, make
sure to merge the new xrdp.ini with the old one because xrdp.ini has
some new configuration parameters for H.264. See 20240704 if updating
from v0.9.x.
Furthermore, xrdp v0.10.2 supports running the xrdp daemon as an
unprivileged user. See the xrdp.ini(5) man page for configuring xrdp to
run as an unprivileged user. You can also check if xrdp is properly
configured to run as an unprivileged user using the script located at:
%%PREFIX%%/share/xrdp/xrdp-chkpriv
Affects: users of net/xrdp and x11-drivers/xorgxrdp
Author: meta@FreeBSD.org
Reason:
xrdp has been updated to the releases of the latest stable branch v0.10.
This version significantly improves performance improvement especially if the
client is Windows 11. There are two things to be careful about when updating.
1) Make sure to update both net/xrdp and x11-drivers/xorgxrdp ports
simultaneously.
2) Config files require manual migration (follow the steps below).
Review and backup changes you made to xrdp.ini and sesman.ini before updating
xrdp. The following example only mentions xrdp.ini however make sure to do the
same review, backup and migration for sesman.ini as well.
Before updating xrdp, review and backup your changes.
# cd /usr/local/etc/xrdp
# diff -u xrdp.ini.sample xrdp.ini > xrdp.ini.diff
After updating xrdp, migrate your changes to new configuration files.
xrdp.ini.sample is replaced with new version at this point. See diff and
manually apply changes.
# cp xrdp.ini.sample xrdp.ini
# vi xrdp.ini
2022-08-25
Affects: users of net/xrdp or net/xrdp-devel
Author: meta@FreeBSD.org
Reason:
After xorg upgrade to 21.1.4, xorgxrdp session doesn't start as before
This is because bin/Xorg has been replaced with X server binary wrapper.
You must manually edit the Xorg section in etc/xrdp/sesman.ini to get it
working again.
The following is a short example of where, how to modify sesman.ini.
Make sure to replace LOCALBASE with your actual path.
[Xorg]
; Specify the path of non-suid Xorg executable. It might differ depending
; on your distribution and version. Find out the appropreate path for your
; environment. The typical path is known as follows:
;
; Fedora 26 or later : param=/usr/libexec/Xorg
; Debian 9 or later : param=/usr/lib/xorg/Xorg
; Ubuntu 16.04 or later : param=/usr/lib/xorg/Xorg
; Arch Linux : param=/usr/lib/Xorg
; CentOS 7 : param=/usr/bin/Xorg or param=Xorg
; CentOS 8 : param=/usr/libexec/Xorg
;
-param=Xorg
+param=LOCALBASE/libexec/Xorg
net/xrdp: Generate default keys/certs at first startup instead of post-install
Generating keys/certs during post-install leads to duplicate keys when
provisioning multiple hosts from a single VM image.
The default snakeoil certificate has been switched to a 5-year Ed25519
certificate.
Reported by: cperciva (via email)
Obtained from: https://github.com/neutrinolabs/xrdp/pull/3874
Sponsored by: Cybertrust Japan
net/xrdp: Use canonical spelling of USERS/GROUPS
When the _xrdp user and group were added, they were listed as
USER= _xrdp
GROUP= _xrdp
which did not result in the user and group being created when the
package is installed.
Reviewed by: meta
Fixes: ee46045d223a ("net/xrdp: Update to 0.10.2-rc.1")
Sponsored by: Amazon
Differential Revision: https://reviews.freebsd.org/D59324
net/xrdp: Relax dependency on x11-drivers/xorgxrdp
Now x11-drivers/xorgxrdp provides the default xorg flavor and the xlibre
flavor.
To avoid tying xrdp to a specific xorgxrdp flavor, the runtime
dependency on xorgxrdp has been removed. In addition, pkg-message has
been updated to instruct users to install either flavor of xorgxrdp
according to their environment.
net/xrdp: Adjust the default configuration to FreeBSD part 2
The "xrdp" user in sesman.ini should also be replaced with "_xrdp".
PR: 289138
Reported by: eduardo
net/xrdp: Adjust the default configuration to FreeBSD
Since xrdp 0.10.2, it supports running xrdp daemon as unpriviled user
(See also UPDATING 20241224).
The user/group to run xrdp daemon is "_xrdp" and will be created
automatically, but "xrdp" is specified with commented out in upstream
default config. This might mislead some users that they need to create
"xrdp" user manually.
PR: 289138
*/*: Bump multimedia/openh264 consumers after dc94e01
net/freerdp{,3} have been already bumped in e447cd0, so not being bumped
again.
Bumped by the following one-liner:
$ git grep -l libopenh264 | \
grep '^.*/.*/Makefile$'| \
xargs -t -n1 portedit bump-revision -i
Approved by: portmgr (blanket)
net/xrdp: sort pkg-plist, update files/pkg-*.in
to sync them with net/xrdp-devel. And finally bump PORTREVISION which
wasn't actually bumped despite the previous commit message.
net/xrdp: Pet portclippy/portfmt and bump PORTREVISION
after OPTIONS changes in the previous commit.
PR: 283627
Approved by: meta@ (myself, maintainer)
net/xrdp: Update to 0.9.25.1-7-g2d78ee85
The patch I applied before (ba2202e) [1] is not included in the latest
release, updating to the upstream snapshot.
[1] https://cgit.freebsd.org/ports/commit/?id=07d011a
net/xrdp: Update to 0.9.25
Dropped runtime dependency on audio/pulseaudio-module-xrdp to allow
users to choose either PipeWire or PulseAudio to meet environment.
Changes: https://github.com/neutrinolabs/xrdp/releases/tag/v0.9.25
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
net: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <ports@c0decafe.net>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Straup Cope <ascope@cpan.org>
* Aaron Zauner <az_mail@gmx.at>
* Adam Jette <jettea46@yahoo.com>
* Adam Weinberger <adamw@FreeBSD.org>
* Alan Eldridge <alane@geeksrus.net>
* Alex Bakhtin <Alex.Bakhtin@gmail.com>
* Alex Deiter <Alex.Deiter@Gmail.COM>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
(Only the first 15 lines of the commit message are shown above )
net/xrdp: adjust configure arguments
Set --enable-pam-config=freebsd explicitly. If this is not given, PAM
configuration will be autodetected however it might be misdetected on some
environments. Quit relying on autodetection.
Force rebuild because built packages might include misconfigured pam files
as reported in the bugzilla issue..
PR: 248481
Reported by: Sascha Folie <sascha.folie@safo.at>
Sponsored by: HAW International
net/xrdp: Update to 0.9.13.1
This update only includes a security fix for CVE-2020-4044.
Since 2020Q3 hasn't been branched yet, shipping it to 2020Q2.
MFH: 2020Q2
Relnotes: https://github.com/neutrinolabs/xrdp/releases/tag/v0.9.13.1
Security: CVE-2020-4044
Security: 2675f0db-baa5-11ea-aa12-80ee73419af3
Sponsored by: HAW International
net/xrdp: fix build on GCC architectures
C11 compiler is necessary:
irp.h:33: error: redefinition of typedef 'XFUSE_INFO'
chansrv_fuse.h:47: error: previous declaration of 'XFUSE_INFO' was here
MFH: 2020Q1 (fix build blanket)
Add USES=xorg USES=gl, ports categories n
Add USES=xorg and USES=gl to ports in categories starting with 'n'.
While here, try to sprinkle other USES (mostly gnome and sdl) as needed.
net/xrdp: Update to 0.9.11
New features
* Suppress output (do not draw screen when client window is minimized)
* Audio input (microphone) redirection compatible with MS-RDPEAI
* Now xrdp can listen on more than one port
Bug fixes
* Fix the issue audio redirection sometimes sounds with long delay
* Check term event for more responsive shutdown
Sponsored by: HAW International, Inc.
net/xrdp: Set MP3LAME option disabled by default
because audio/lame has no-pkg and xrdp doesn't work properly because of missing
library dependency on lame when xrdp is "pkg install"-ed.
[1] https://lists.freebsd.org/pipermail/freebsd-ports/2019-June/116470.html
Reported by: Janky Jay, III [1]
Remove esound support from pulseaudio as audio/esound expired.
Bump PORTREVISIONs of dependent ports.
Build-tested in poudriere on a head-amd64 jail for audio/pulseaudio*
net/xrdp: Fix build on 13-CURRENT with base OpenSSL
As base OpenSSL doesn't install a .pc file, some flags such as -lcrypto
cannot be obtained automatically via pkgconfig. When compiled with base
OpenSSL, it needs to be specified explicitly.
Reported by: pkg-fallout
net/xrdp: Fix build with audio/fdk-aac 2.0.0 etc
Submitter's patch has been merged into upstream with minor changes.
Also while here, cleanup some leftovers. This port generates private key
and server certificate in post-install script. Poudriere complains that
these files are left over after deinstall. Now these auto-generated files
will be removed when deinstall. If certificate and private key are replaced
with user's own files, they should be kept.
PR: 233558
Submitted by: takefu@airport.fm (original version)
Approved by: mentors (implicit)
Obtained from: https://github.com/neutrinolabs/xrdp/pull/1257
Sponsored by: HAW International, Inc.
net/xrdp: Update to 0.9.8
Also, update audio/pulseaudio-module to the latest release 0.2.
pulseaudio-module-xrdp 0.2 no longer have build time dependency on xrdp.
Accordingly, add runtime dependency on pulseaudio-module-xrdp to xrdp to
enable audio redirection by default it doesn't cause circular dependency
now.
While here,
- Pet portlint
- Switch PORTVERSION to DISTVERSION
Approved by: pi (mentor)
Relnotes: https://github.com/neutrinolabs/xrdp/releases/tag/v0.9.8
Sponsored by: HAW International, Inc.
Differential Revision: https://reviews.freebsd.org/D17326
New port: audio/pulseaudio-module-xrdp: separate PulseAudio modules from
net/xrdp
This update separates PulseAudio modules from net/xrdp port.
There're two reasons to separete them. The one is upstream now provides
them as separated repositories. The another one is PulseAudio modules
need to be rebuilt after the version of audio/pulseaudio changed but
the most part of net/xrdp port doesn't need rebuild. This minimizes
time for rebuilding.
Approved by: hrs (mentor)
Differential Revision: https://reviews.freebsd.org/D16621
Remove non-default REALVNC option from net/xrdp and net/xrdp-devel,
it depends on the expired net/vnc port.
PR: 214472
Submitted by: myself
Approved by: maintainer (meta+ports@vmeta.jp)
Update USE_GITHUB so it does not require GH_COMMIT.
Using this new scheme allows only setting the _tag_ or _commit hash_ in
GH_TAGNAME and not having to know the hash for a tag. This scheme will
download a tarball that has a different checksum than before due to a changed
directory name for extraction.
The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
GH -> GHL
GITHUB -> GITHUB_LEGACY
Differential Revision: https://reviews.freebsd.org/D748
Submitted by: amdmi3
Reviewed by: mat, swills, antoine, bdrewery
With hat: portmgr