Package: guix-patches;
Reported by: aurtzy <aurtzy <at> gmail.com>
Date: Thu, 3 Aug 2023 06:55:02 UTC
Severity: normal
Tags: moreinfo, patch
Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: aurtzy <aurtzy <at> gmail.com> To: 65031 <at> debbugs.gnu.org Cc: aurtzy <aurtzy <at> gmail.com> Subject: [bug#65031] [PATCH v2] gnu: Add syncplay. Date: Thu, 21 Sep 2023 15:37:06 -0400
* gnu/packages/networking.scm (syncplay): New variable. * gnu/packages/patches/syncplay-fix-typeerror.patch: New file. --- > Is it compatible with Qt 6? To try it, replace qtwayland-5 with > qtwayland, and specify a #:qtbase qtbase argument. Looks like it is! #:qtbase doesn't seem to be supported by gnu-build-system or python-build-system (switched to the latter for this v2; elaborated further below) and I had to make a few other adjustments to get it working, so I may need advice if I've missed anything here. A patch has been added to fix a Qt 6 issue causing Syncplay to crash. > These should be inputs, not propagated-inputs, unless it can be used as > a library? Also, please sort the inputs alphabetically. Fixed; not a library. It appears I was using an inappropriate build system for this package - I originally made them propagated because gnu-build-system wasn't doing whatever wrapping python-build-system does to make the inputs available, so this v2 uses python-build-system instead now. Best, aurtzy gnu/packages/networking.scm | 54 +++++++++++++++++++ .../patches/syncplay-fix-typeerror.patch | 25 +++++++++ 2 files changed, 79 insertions(+) create mode 100644 gnu/packages/patches/syncplay-fix-typeerror.patch diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index c1cab1fe0d..a7fde61ea8 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -60,6 +60,7 @@ ;;; Copyright © 2023 Bruno Victal <mirai <at> makinata.eu> ;;; Copyright © 2023 Yovan Naumovski <yovan <at> gorski.stream> ;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com> +;;; Copyright © 2023 aurtzy <aurtzy <at> gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -4700,3 +4701,56 @@ (define-public dropwatch recording packets that are dropped by the kernel. It provides the commands @command{dropwatch} and @command{dwdump}.") (license license:gpl2+))) + +(define-public syncplay + (package + (name "syncplay") + (version "1.7.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Syncplay/syncplay.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "061kpnb48lad8rr8v58xac33mwpbrixfbhn7d0xa63zpxg43bvsd")) + (patches (search-patches "syncplay-fix-typeerror.patch")))) + (build-system python-build-system) + (arguments + (list #:imported-modules `(,@%python-build-system-modules + (guix build qt-utils) + (guix build utils)) + #:modules '((guix build python-build-system) + (guix build qt-utils) + (guix build utils)) + #:phases #~(modify-phases %standard-phases + (delete 'check) + (replace 'install + (lambda _ + (invoke "make" "install" "DESTDIR=" + (string-append "PREFIX=" + (assoc-ref %outputs "out"))))) + (add-after 'install 'wrap-qt + (lambda* (#:key inputs #:allow-other-keys) + (wrap-qt-program "syncplay" + #:output #$output + #:inputs inputs + #:qt-major-version "6")))))) + (native-inputs (list python-pyside-6)) + (inputs (list bash-minimal + python-certifi + python-idna + python-service-identity + python-twisted + qtwayland)) + (home-page "https://syncplay.pl") + (synopsis "Client/server to synchronize media playback on many computers") + (description + "Syncplay is a solution to synchronize video playback across multiple +instances of media players over the Internet. When one person pauses/unpauses +playback or skips to a position in the video, this is replicated across all +media players connected to the same server and in the same \"room\" (viewing +session). A built-in text chat for discussing the synced media is also +included for convenience.") + (license license:asl2.0))) diff --git a/gnu/packages/patches/syncplay-fix-typeerror.patch b/gnu/packages/patches/syncplay-fix-typeerror.patch new file mode 100644 index 0000000000..6b1168a0e9 --- /dev/null +++ b/gnu/packages/patches/syncplay-fix-typeerror.patch @@ -0,0 +1,25 @@ +From b62b038cdf58c54205987dfc52ebf228505ad03b Mon Sep 17 00:00:00 2001 +From: Etoh <etoh <at> syncplay.pl> +Date: Tue, 11 Apr 2023 20:22:52 +0100 +Subject: [PATCH] Fix ArchLinux GUI TypeError (#600) + +--- + syncplay/ui/gui.py | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py +index 7c100542..ca0f5d4a 100755 +--- a/syncplay/ui/gui.py ++++ b/syncplay/ui/gui.py +@@ -2106,7 +2106,10 @@ def __init__(self, passedBar=None): + if isMacOS(): + self.setWindowFlags(self.windowFlags()) + else: +- self.setWindowFlags(self.windowFlags() & Qt.AA_DontUseNativeMenuBar) ++ try: ++ self.setWindowFlags(self.windowFlags() & Qt.AA_DontUseNativeMenuBar) ++ except TypeError: ++ self.setWindowFlags(self.windowFlags()) + self.setWindowTitle("Syncplay v" + version + revision) + self.mainLayout = QtWidgets.QVBoxLayout() + self.addTopLayout(self) -- 2.41.0
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.