Subject: [PATCH v5 1/2] gnu: Add xrdp

From: Andy Tai <[email-masked]>
Date: Fri, 28 Jul 2023 20:53:24 -0700

* gnu/packages/rdesktop.scm (xrdp): New variable
---
 gnu/packages/rdesktop.scm | 76 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 76 insertions(+)

diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm
index be4fe83cdc..04d3db610d 100644
--- a/gnu/packages/rdesktop.scm
+++ b/gnu/packages/rdesktop.scm
@@ -31,19 +31,29 @@ (define-module (gnu packages rdesktop)
   #:use-module (guix utils)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cups)
   #:use-module (gnu packages docbook)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages image)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages mp3)
   #:use-module (gnu packages nettle)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages tls)
+  #:use-module (gnu packages version-control)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
@@ -137,3 +147,69 @@ (define-public freerdp
 functionality, and Windows Portable Runtime (WinPR), a portable implementation
 of parts of the Windows API.")
     (license license:asl2.0)))
+
+(define-public xrdp
+  (package
+    (name "xrdp")
+    (version "0.9.22.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/neutrinolabs/xrdp/releases/download/v"
+                    version "/xrdp-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1jzknwy003fk5lqzrncbypirq3smpghxy2prg2m2ljjrx77j1lvd"))))
+    (build-system gnu-build-system)
+    (inputs (list check
+                  fuse
+                  imlib2
+                  lame
+                  libjpeg-turbo
+                  libx11
+                  libxfixes
+                  libxml2
+                  libxpm
+                  libxrandr
+                  libxslt
+                  libxt
+                  linux-pam
+                  openssl
+                  pixman
+                  python
+                  python-libxml2))
+    (native-inputs (list autoconf
+                         automake
+                         libtool
+                         bison
+                         flex
+                         gettext-minimal
+                         intltool
+                         nasm
+                         pkg-config
+                         pixman))
+
+    (arguments
+     (list #:configure-flags #~(list "--enable-strict-locations=yes"
+                                     "--enable-fuse=yes"
+                                     "--enable-mp3lame=yes"
+                                     "--enable-pixman=yes"
+                                     "--enable-imlib2=yes"
+                                     "--enable-pam-config=unix"
+                                     "--enable-ipv6=yes")))
+    (home-page "https://www.xrdp.org")
+    (synopsis "Remote Desktop Protocol (RDP) server")
+    (description
+     "Xrdp provides a graphical login to remote machines using
+Microsoft Remote Desktop Protocol (RDP).  Xrdp accepts connections from a
+variety of RDP clients:
+@itemize
+@item FreeRDP
+@item rdesktop
+@item KRDC
+@item NeutrinoRDP
+@item Windows MSTSC (Microsoft Terminal Services Client, aka mstsc.exe)
+@item Microsoft Remote Desktop (found on Microsoft Store, which is distinct from MSTSC).
+@end itemize")
+    (license license:asl2.0)))
+

base-commit: e43cbeafd1b632f39b08b3644af5230d5350a656
-- 
2.41.0