[-- Attachment #1: Type: text/plain, Size: 266 bytes --] Hai! Packaged this on a whim, it was rather straightforward. Caveat: it crashes (segfaults) due to a UPnP related error, i have not yet determined why. It's an optional dependency, so I disabled it for now. Tested it through an Yggdrasil connection and it worked. [-- Attachment #2: 0001-gnu-Added-drawpile-without-UPnP-support-see-comment-.patch --] [-- Type: text/x-patch, Size: 3773 bytes --] From 17fd09841ceedb2f15adce22992ccc02be8ef525 Mon Sep 17 00:00:00 2001 From: your friendly localhost admin <raingloom@riseup.net> Date: Thu, 6 Aug 2020 00:23:34 +0200 Subject: [PATCH] gnu: Added drawpile (without UPnP support, see comment) at version 2.1.17 * gnu/packages/graphics.scm (drawpile): New variable. --- gnu/packages/graphics.scm | 54 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index cdb13c2619..f03016c737 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -49,6 +49,7 @@ #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages datastructures) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) @@ -59,12 +60,14 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnunet) #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages jemalloc) + #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages maths) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pdf) @@ -81,12 +84,14 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) + #:use-module (gnu packages upnp) #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system qt) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix hg-download) @@ -1431,3 +1436,52 @@ and PC Engine formats") the graphics formats of the SNES, Game Boy Color and PC Engine game consoles. Automated palette selection is supported.") (license license:expat))) + +(define-public drawpile + (package + (name "drawpile") + (version "2.1.17") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/drawpile/Drawpile/archive/" + version + ".tar.gz")) + (sha256 + (base32 + "0brscm95nay31xa1c02n1w144gg9hm8pxwa9sfnis0x5dj2nkrb7")))) + (build-system qt-build-system) + (arguments '(#:tests? #f)) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("giflib" ,giflib) + ("karchive" ,karchive) + ("kdnssd" ,kdnssd) + ("libmicrohttpd" ,libmicrohttpd) + ("libsodium" ,libsodium) + ("libvpx" ,libvpx) + ;("miniupnpc" ,miniupnpc) ;; TODO segfaults for some reason + ("qtbase" ,qtbase) + ("qtkeychain" ,qtkeychain) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg))) + (home-page "https://drawpile.net") + (synopsis "Collaborative drawing program") + (description +"Drawpile is a drawing program that lets you share the canvas with other users +in real time. + +Some feature highlights: +Runs on Linux, Windows and OSX +Shared canvas using the built-in server or a dedicated server +Record, play back and export drawing sessions +Simple animation support +Layers and blending modes +Text layers +Supports pressure sensitive Wacom tablets +Built-in chat +Supports OpenRaster file format +Encrypted connections using SSL +Automatic port forwarding with UPnP") + (license license:gpl3+))) -- 2.28.0
Hello, > + (method url-fetch) > + (uri (string-append "https://github.com/drawpile/Drawpile/archive/" > + version > + ".tar.gz")) We prefer not to use those github archives that can be re-generated and prefer to use "git-fetch" method instead. > + (sha256 > + (base32 > + "0brscm95nay31xa1c02n1w144gg9hm8pxwa9sfnis0x5dj2nkrb7")))) > + (build-system qt-build-system) > + (arguments '(#:tests? #f)) You should explain why tests are not run with a comment. > + (native-inputs > + `(("extra-cmake-modules" ,extra-cmake-modules))) > + (inputs > + `(("giflib" ,giflib) > + ("karchive" ,karchive) > + ("kdnssd" ,kdnssd) > + ("libmicrohttpd" ,libmicrohttpd) > + ("libsodium" ,libsodium) > + ("libvpx" ,libvpx) > + ;("miniupnpc" ,miniupnpc) ;; TODO segfaults for some reason No need to comment twice. > + ("qtbase" ,qtbase) > + ("qtkeychain" ,qtkeychain) > + ("qtmultimedia" ,qtmultimedia) > + ("qtsvg" ,qtsvg))) > + (home-page "https://drawpile.net") > + (synopsis "Collaborative drawing program") > + (description > +"Drawpile is a drawing program that lets you share the canvas with other users > +in real time. > + > +Some feature highlights: > +Runs on Linux, Windows and OSX No need to talk about those operating systems I think. > +Shared canvas using the built-in server or a dedicated server > +Record, play back and export drawing sessions > +Simple animation support > +Layers and blending modes > +Text layers > +Supports pressure sensitive Wacom tablets > +Built-in chat > +Supports OpenRaster file format > +Encrypted connections using SSL > +Automatic port forwarding with UPnP") You could use texinfo to render this list nicely. See "libmemcached" package for an example. Could you send an updated patch? Thanks, Mathieu
[-- Attachment #1: Type: text/plain, Size: 2447 bytes --] On Fri, 07 Aug 2020 10:34:22 +0200 Mathieu Othacehe <othacehe@gnu.org> wrote: > Hello, > > > + (method url-fetch) > > + (uri (string-append > > "https://github.com/drawpile/Drawpile/archive/" > > + version > > + ".tar.gz")) > > We prefer not to use those github archives that can be re-generated > and prefer to use "git-fetch" method instead. Done! > > + (sha256 > > + (base32 > > + "0brscm95nay31xa1c02n1w144gg9hm8pxwa9sfnis0x5dj2nkrb7")))) > > + (build-system qt-build-system) > > + (arguments '(#:tests? #f)) > > You should explain why tests are not run with a comment. It didn't generate a "test" target, but I figured out how to enable it. Now it runs them! Also enabled some more functionality that could be useful. > > + (native-inputs > > + `(("extra-cmake-modules" ,extra-cmake-modules))) > > + (inputs > > + `(("giflib" ,giflib) > > + ("karchive" ,karchive) > > + ("kdnssd" ,kdnssd) > > + ("libmicrohttpd" ,libmicrohttpd) > > + ("libsodium" ,libsodium) > > + ("libvpx" ,libvpx) > > + ;("miniupnpc" ,miniupnpc) ;; TODO segfaults for some reason > > > > No need to comment twice. Makes it easier to enable the dependency and still keep the TODO note without causing a syntax error. > > + ("qtbase" ,qtbase) > > + ("qtkeychain" ,qtkeychain) > > + ("qtmultimedia" ,qtmultimedia) > > + ("qtsvg" ,qtsvg))) > > + (home-page "https://drawpile.net") > > + (synopsis "Collaborative drawing program") > > + (description > > +"Drawpile is a drawing program that lets you share the canvas with > > other users +in real time. > > + > > +Some feature highlights: > > +Runs on Linux, Windows and OSX > > No need to talk about those operating systems I think. Done. > > +Shared canvas using the built-in server or a dedicated server > > +Record, play back and export drawing sessions > > +Simple animation support > > +Layers and blending modes > > +Text layers > > +Supports pressure sensitive Wacom tablets > > +Built-in chat > > +Supports OpenRaster file format > > +Encrypted connections using SSL > > +Automatic port forwarding with UPnP") > > You could use texinfo to render this list nicely. See "libmemcached" > package for an example. > > Could you send an updated patch? > > Thanks, > > Mathieu Thanks for the quick response! Here it is :D [-- Attachment #2: 0001-gnu-Added-drawpile-UPnP-support-pending-at-version-2.patch --] [-- Type: text/x-patch, Size: 3971 bytes --] From 0b0751f31bca2b8861e6ef43e9c5f0fbad43fca7 Mon Sep 17 00:00:00 2001 From: your friendly localhost admin <raingloom@riseup.net> Date: Thu, 6 Aug 2020 00:23:34 +0200 Subject: [PATCH] gnu: Added drawpile (UPnP support pending) at version 2.1.17 * gnu/packages/graphics.scm (drawpile): New variable. --- gnu/packages/graphics.scm | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index cdb13c2619..be66bed479 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -49,6 +49,7 @@ #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages datastructures) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) @@ -59,12 +60,14 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnunet) #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages jemalloc) + #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages maths) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pdf) @@ -81,12 +84,14 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) + #:use-module (gnu packages upnp) #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system qt) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix hg-download) @@ -1431,3 +1436,57 @@ and PC Engine formats") the graphics formats of the SNES, Game Boy Color and PC Engine game consoles. Automated palette selection is supported.") (license license:expat))) + +(define-public drawpile + (package + (name "drawpile") + (version "2.1.17") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/drawpile/Drawpile/archive/" + version + ".tar.gz")) + (sha256 + (base32 + "0brscm95nay31xa1c02n1w144gg9hm8pxwa9sfnis0x5dj2nkrb7")))) + (build-system qt-build-system) + (arguments + '(#:configure-flags (list "-DTESTS=ON" "-DTOOLS=ON" "-DKIS_TABLET=ON"))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (inputs + `(("giflib" ,giflib) + ("karchive" ,karchive) + ("kdnssd" ,kdnssd) + ("libmicrohttpd" ,libmicrohttpd) + ("libsodium" ,libsodium) + ("libvpx" ,libvpx) + ("libxi" ,libxi) + ;("miniupnpc" ,miniupnpc) ;; TODO segfaults for some reason + ("qtbase" ,qtbase) + ("qtkeychain" ,qtkeychain) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (home-page "https://drawpile.net") + (synopsis "Collaborative drawing program") + (description +"Drawpile is a drawing program that lets you share the canvas with other users +in real time. + +Some feature highlights: +@itemize +@item Shared canvas using the built-in server or a dedicated server +@item Record, play back and export drawing sessions +@item Simple animation support +@item Layers and blending modes +@item Text layers +@item Supports pressure sensitive Wacom tablets +@item Built-in chat +@item Supports OpenRaster file format +@item Encrypted connections using SSL +@item Automatic port forwarding with UPnP +@end itemize") + (license license:gpl3+))) -- 2.28.0
[-- Attachment #1.1: Type: text/plain, Size: 140 bytes --] Hi, Apologies for delay and thank you for the patch! Pushed to master as 9ac2a4ee3424dd216b1b67056968e0585197952a with following changes: [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1.2: drawpile-diff --] [-- Type: text/x-patch, Size: 2178 bytes --] diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index dabd297c40..c7fefbd57d 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1439,15 +1439,15 @@ Automated palette selection is supported.") (package (name "drawpile") (version "2.1.17") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/drawpile/Drawpile/archive/" - version - ".tar.gz")) - (sha256 - (base32 - "0brscm95nay31xa1c02n1w144gg9hm8pxwa9sfnis0x5dj2nkrb7")))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/drawpile/Drawpile") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08w8vad8pw4a8kkshys1kd2kjvzpj62klxxxp904rx0qazw5hl80")))) (build-system qt-build-system) (arguments '(#:configure-flags (list "-DTESTS=ON" "-DTOOLS=ON" "-DKIS_TABLET=ON"))) @@ -1462,7 +1462,7 @@ Automated palette selection is supported.") ("libsodium" ,libsodium) ("libvpx" ,libvpx) ("libxi" ,libxi) - ;("miniupnpc" ,miniupnpc) ;; TODO segfaults for some reason + ;; ("miniupnpc" ,miniupnpc) ;segfaults for some reason ("qtbase" ,qtbase) ("qtkeychain" ,qtkeychain) ("qtmultimedia" ,qtmultimedia) @@ -1470,9 +1470,8 @@ Automated palette selection is supported.") ("qtx11extras" ,qtx11extras))) (home-page "https://drawpile.net") (synopsis "Collaborative drawing program") - (description -"Drawpile is a drawing program that lets you share the canvas with other users -in real time. + (description "Drawpile is a drawing program that allows share the canvas +with other users in real time. Some feature highlights: @itemize @@ -1486,5 +1485,5 @@ Some feature highlights: @item Supports OpenRaster file format @item Encrypted connections using SSL @item Automatic port forwarding with UPnP -@end itemize") +@end itemize\n") (license license:gpl3+))) [-- Attachment #1.3: Type: text/plain, Size: 8 bytes --] Oleg. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 832 bytes --]