From 593c4cfc7dc07d7b0bdcbbf7c63726766d28c05b Mon Sep 17 00:00:00 2001 From: Gigiaj Date: Thu, 17 Apr 2025 16:56:11 -0500 Subject: [PATCH] add synergy update w/ wayland support --- gchannel/packages/synergy.scm | 89 +++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 gchannel/packages/synergy.scm diff --git a/gchannel/packages/synergy.scm b/gchannel/packages/synergy.scm new file mode 100644 index 0000000..ea06859 --- /dev/null +++ b/gchannel/packages/synergy.scm @@ -0,0 +1,89 @@ +(define-module (gnu packages synergy) + #:use-module (guix gexp) + #:use-module (guix packages) + #:use-module (guix build utils) ; Added: Provides substitute* used in phases + #:use-module ((guix licenses) #:select (gpl2 expat)) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system meson) + #:use-module (gnu packages) + #:use-module (gnu packages avahi) + #:use-module (gnu packages curl) + #:use-module (gnu packages cpp) + #:use-module (gnu packages compression) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gtk) + #:use-module (gnu packages linux) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages tls) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg) + #:use-module (srfi srfi-26)) + +(define-public synergy + (package + (name "synergy") + (version "1.17.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/symless/synergy-core") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1d3v2zp3vf2wb5ddxagl8s554h7rpgjwnwjkc0lpx0rp6g6hm3z9")))) + (build-system cmake-build-system) + (arguments + (list + #:tests? #f ; No 'make check' or 'ctest' target observed + + ;; Add CMAKE_MODULE_PATH to point to the 'ext' directory in the source tree + ;; where custom Find*.cmake modules like Findpugixml.cmake might reside. + #:configure-flags + #~(list (string-append "-D " "CMAKE_INSTALL_PREFIX=" (assoc-ref %outputs "out")) + "-DBUILD_TESTS=OFF") + + #:phases + #~(modify-phases %standard-phases ; Ensure phases are within the G-expression + (add-after 'unpack 'patch-cmake-install-prefix + (lambda* (#:key #:allow-other-keys) + (system* "sed" "-i" "s|set(CMAKE_INSTALL_PREFIX /usr)| |g" "cmake/Packaging.cmake") + #t)) ; +))) + (native-inputs + (list qttools pkg-config)) ; for Qt5LinguistTools + (inputs + `(("avahi" ,avahi) + ("python" ,python-wrapper) + ("openssl" ,openssl) + ("curl" ,curl) + ("cli11" ,cli11) + ("gdk-pixbuf" ,gdk-pixbuf) + ("libei" ,libei) + ("libnotify" ,libnotify) + ("libportal" ,libportal) + ("libxi" ,libxi) + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("libxtst" ,libxtst) + ("pugixml" ,pugixml) + ("tomlplusplus" ,tomlplusplus) + ("qtbase" ,qtbase) + )) + (home-page "https://symless.com/synergy") + (synopsis "Mouse and keyboard sharing utility") + (description + "Synergy brings your computers together in one cohesive experience; it's +software for sharing one mouse and keyboard between multiple computers on your +desk.") + (license gpl2))) + +synergy \ No newline at end of file