Message ID | 20230803061517.27336-1-aurtzy@gmail.com |
---|---|
State | New |
Headers | show |
Series | [bug#65031] gnu: Add syncplay. | expand |
Hi, aurtzy <aurtzy@gmail.com> writes: > * gnu/packages/networking.scm (syncplay): New variable. > --- > gnu/packages/networking.scm | 52 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 52 insertions(+) > > diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm > index 488d015107..10eb19e980 100644 > --- a/gnu/packages/networking.scm > +++ b/gnu/packages/networking.scm > @@ -60,6 +60,7 @@ > ;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu> > ;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream> > ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> > +;;; Copyright © 2023 aurtzy <aurtzy@gmail.com> > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -4644,3 +4645,54 @@ (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")))) > + (build-system gnu-build-system) > + (arguments > + (list #:imported-modules `(,@%gnu-build-system-modules (guix build > + qt-utils) > + (guix build utils)) > + #:modules '((guix build gnu-build-system) > + (guix build qt-utils) > + (guix build utils)) > + #:make-flags #~`("DESTDIR=" ,(string-append "PREFIX=" > + (assoc-ref %outputs > + "out"))) > + #:phases #~(modify-phases %standard-phases > + (delete 'configure) > + (delete 'build) > + (delete 'check) > + (add-after 'install 'wrap-qt > + (lambda* (#:key inputs #:allow-other-keys) > + (wrap-qt-program "syncplay" > + #:output #$output > + #:inputs inputs)))))) > + (inputs (list bash-minimal qtwayland-5)) Is it compatible with Qt 6? To try it, replace qtwayland-5 with qtwayland, and specify a #:qtbase qtbase argument. > + (propagated-inputs (list python > + python-service-identity > + python-twisted > + python-pyside-2 > + python-certifi > + python-idna)) These should be inputs, not propagated-inputs, unless it can be used as a library? Also, please sort the inputs alphabetically. > + (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))) The rest LGTM. Could you please send a v2?
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 488d015107..10eb19e980 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -60,6 +60,7 @@ ;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu> ;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream> ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> +;;; Copyright © 2023 aurtzy <aurtzy@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -4644,3 +4645,54 @@ (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")))) + (build-system gnu-build-system) + (arguments + (list #:imported-modules `(,@%gnu-build-system-modules (guix build + qt-utils) + (guix build utils)) + #:modules '((guix build gnu-build-system) + (guix build qt-utils) + (guix build utils)) + #:make-flags #~`("DESTDIR=" ,(string-append "PREFIX=" + (assoc-ref %outputs + "out"))) + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (delete 'check) + (add-after 'install 'wrap-qt + (lambda* (#:key inputs #:allow-other-keys) + (wrap-qt-program "syncplay" + #:output #$output + #:inputs inputs)))))) + (inputs (list bash-minimal qtwayland-5)) + (propagated-inputs (list python + python-service-identity + python-twisted + python-pyside-2 + python-certifi + python-idna)) + (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)))