[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#67257] [PATCH v2 2/2] gnu: Add x2goclient.
From: |
Steve George |
Subject: |
[bug#67257] [PATCH v2 2/2] gnu: Add x2goclient. |
Date: |
Thu, 22 Feb 2024 22:08:20 +0000 |
From: nicodebo <nicolas.debonnaire@gmail.com>
* gnu/packages/nx.scm (x2goclient): New variable.
Reviewed-by: Steve George <steve@futurile.net>
Change-Id: Ib0ff6328ede3fb4a0b48462ac1a003438c53c862
---
gnu/packages/nx.scm | 79 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 79 insertions(+)
diff --git a/gnu/packages/nx.scm b/gnu/packages/nx.scm
index 92542c02a7b..be00e466fec 100644
--- a/gnu/packages/nx.scm
+++ b/gnu/packages/nx.scm
@@ -16,19 +16,25 @@
(define-module (gnu packages nx)
#:use-module (guix build utils)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages commencement)
+ #:use-module (gnu packages cups)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
+ #:use-module (gnu packages man)
#:use-module (gnu packages onc-rpc)
+ #:use-module (gnu packages openldap)
#:use-module (gnu packages patchutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages qt)
+ #:use-module (gnu packages ssh)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
@@ -139,3 +145,76 @@ (define-public nx-libs
developers and TheQVD.")
(home-page "https://github.com/ArcticaProject/nx-libs")
(license license:gpl2)))
+
+(define-public x2goclient
+ (package
+ (name "x2goclient")
+ (version "4.1.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://code.x2go.org/releases/source/x2goclient/x2goclient-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0g6aba8kpsixq4486a8mga945lp31y0mzwa2krs5qqiiip3v72xb"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; there aren't any tests
+ #:phases (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'fix-makefile
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (etc (string-append out "/etc")))
+ (mkdir-p etc)
+ (substitute* "Makefile"
+ (("= 4")
+ "= 5") ;use qt5 instead of qt4
+ (("-o root -g root") ;from archlinux
+ "")
+ (("/usr/local")
+ out)
+ (("/etc/x2go")
+ etc)
+ ;; Workaround to turn off invoking lrelease because
+ ;; it fails with a warning about qmake spec
+ (("lrelease")
+ "true")
+ (("qmake")
+ (which "qmake")))
+ (substitute* "src/onmainwindow.cpp"
+ (("/usr/sbin/sshd")
+ (which "sshd"))))))
+ ;; Avoid man2html by calling build_client then install_man
+ (replace 'build
+ (lambda _
+ (invoke "make" "build_client")))
+ (add-after 'build 'build-man
+ (lambda _
+ (invoke "make" "install_man")))
+ ;; Due to lrelease workaround above: run lrelease on each
+ ;; individual .ts file
+ (add-after 'build 'compile-ts-files
+ (lambda _
+ (for-each (lambda (file)
+ (invoke "lrelease" file))
+ (find-files "./" "\\.ts$")))))))
+ (native-inputs (list pkg-config
+ qttools-5
+ qtbase-5
+ qtx11extras
+ qtsvg-5
+ libssh
+ cups
+ libxpm
+ openldap
+ gcc-toolchain))
+ (propagated-inputs (list nx-libs
+ openssh))
+ (synopsis "Remote desktop and application solution")
+ (description
+ "X2goclient allows you to connect to a remote graphical desktop over the
+network through SSH.")
+ (home-page "http://x2go.org/")
+ (license license:gpl2)))
--
2.41.0