[PATCH 1/4] gnu: libmypaint: Update to 1.5.1.

  • Done
  • quality assurance status badge
Details
4 participants
  • guix
  • Leo Famulari
  • Lprndn
  • Christopher Baines
Owner
unassigned
Submitted by
Lprndn
Severity
normal
L
L
Lprndn wrote on 24 Mar 2020 14:34
(address . guix-patches@gnu.org)(name . L p R n d n)(address . guix@lprndn.info)
20200324133422.9510-1-lprndn@gmail.com
From: L p R n d n <guix@lprndn.info>

* gnu/packages/gimp.scm (libmypaint): Move variable to gnu/packages/drawing.scm.
* gnu/packages/drawing.scm: New file.
* gnu/local.mk: Register it.
* gnu/packages/drawing.scm (libmypaint): Update to 1.5.1.
---
gnu/local.mk | 1 +
gnu/packages/drawing.scm | 55 ++++++++++++++++++++++++++++++++++++++++
gnu/packages/gimp.scm | 29 +--------------------
3 files changed, 57 insertions(+), 28 deletions(-)
create mode 100644 gnu/packages/drawing.scm

Toggle diff (122 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index caa73d44d4..a4752fc7d8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -161,6 +161,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/docbook.scm \
%D%/packages/docker.scm \
%D%/packages/documentation.scm \
+ %D%/packages/drawing.scm \
%D%/packages/drones.scm \
%D%/packages/dunst.scm \
%D%/packages/dvtm.scm \
diff --git a/gnu/packages/drawing.scm b/gnu/packages/drawing.scm
new file mode 100644
index 0000000000..8aec7e7e2f
--- /dev/null
+++ b/gnu/packages/drawing.scm
@@ -0,0 +1,55 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 L p R n d n <guix@lprndn.info>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages drawing)
+ #:use-module (guix packages)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix build-system gnu)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages web))
+
+(define-public libmypaint
+ (package
+ (name "libmypaint")
+ (version "1.5.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/libmypaint/"
+ "releases/download/v" version "/libmypaint-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0aqcv4fyscpfhknxgfpq0v84aj2nzigqvpi4zgv2zkl41h51by5f"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
+ ;; As needed by 'libmypaint.pc'.
+ (propagated-inputs
+ `(("json-c" ,json-c)
+ ("gobject-introspection" ,gobject-introspection)))
+ (inputs
+ `(("glib" ,glib)))
+ (synopsis "Artistic brushes library")
+ (description "Libmypaint, also called \"brushlib\", is a library for making
+brushstrokes which is used by MyPaint and GIMP.")
+ (home-page "http://mypaint.org")
+ (license license:isc)))
diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm
index fcf613423c..0d9b2ec023 100644
--- a/gnu/packages/gimp.scm
+++ b/gnu/packages/gimp.scm
@@ -43,6 +43,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages pdf)
#:use-module (gnu packages photo)
+ #:use-module (gnu packages drawing)
#:use-module (gnu packages python)
#:use-module (gnu packages web)
#:use-module (gnu packages xorg))
@@ -264,34 +265,6 @@ can draw or apply filters in fourier space and get the modified image with an
inverse fourier transform.")
(license license:gpl3+)))
-(define-public libmypaint
- (package
- (name "libmypaint")
- (version "1.3.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/mypaint/libmypaint/"
- "releases/download/v" version "/libmypaint-"
- version ".tar.xz"))
- (sha256
- (base32
- "0wd6jk69vmhsq1mdw96v0fh7b28n3glkr5ca466zcq7agzaxj1va"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("intltool" ,intltool)
- ("pkg-config" ,pkg-config)))
- ;; As needed by 'libmypaint.pc'.
- (propagated-inputs
- `(("json-c" ,json-c)
- ("gobject-introspection" ,gobject-introspection)))
- (inputs
- `(("glib" ,glib)))
- (synopsis "Artistic brushes library")
- (description "Libmypaint, also called \"brushlib\", is a library for making
-brushstrokes which is used by MyPaint and GIMP.")
- (home-page "http://mypaint.org")
- (license license:isc)))
-
(define-public mypaint-brushes
(package
(name "mypaint-brushes")
--
2.25.1
G
[PATCH 3/4] gnu: Add mypaint-brushes-2.
(address . 40214@debbugs.gnu.org)(name . L p R n d n)(address . guix@lprndn.info)
20200324153508.14166-2-guix@lprndn.info
From: L p R n d n <guix@lprndn.info>

* gnu/packages/drawing.scm (mypaint-brushes-2): New variable.
---
gnu/packages/drawing.scm | 12 ++++++++++++
1 file changed, 12 insertions(+)

Toggle diff (22 lines)
diff --git a/gnu/packages/drawing.scm b/gnu/packages/drawing.scm
index e3f7dc0af2..8b9e6a2ea9 100644
--- a/gnu/packages/drawing.scm
+++ b/gnu/packages/drawing.scm
@@ -75,3 +75,15 @@ brushstrokes which is used by MyPaint and GIMP.")
MyPaint.")
(home-page "https://github.com/mypaint/mypaint-brushes")
(license license:cc0)))
+
+(define-public mypaint-brushes-2
+ (package (inherit mypaint-brushes)
+ (name "mypaint-brushes-2")
+ (version "2.0.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint-brushes/"
+ "releases/download/v" version "/mypaint-brushes-"
+ version ".tar.xz"))
+ (sha256 (base32
+ "0rmmkvj24gdk2ramqbv3dyimdads98i9nqnhfbc72igrvr7ag13r"))))))
--
2.25.1
G
[PATCH 4/4] gnu: Add mypaint.
(address . 40214@debbugs.gnu.org)(name . L p R n d n)(address . guix@lprndn.info)
20200324153508.14166-3-guix@lprndn.info
From: L p R n d n <guix@lprndn.info>

* gnu/packages/drawing.scm (mypaint): New variable.
---
gnu/packages/drawing.scm | 54 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (75 lines)
diff --git a/gnu/packages/drawing.scm b/gnu/packages/drawing.scm
index 8b9e6a2ea9..be8a40300a 100644
--- a/gnu/packages/drawing.scm
+++ b/gnu/packages/drawing.scm
@@ -21,10 +21,16 @@
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages gettext)
+ #:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages web))
(define-public libmypaint
@@ -87,3 +93,51 @@ MyPaint.")
version ".tar.xz"))
(sha256 (base32
"0rmmkvj24gdk2ramqbv3dyimdads98i9nqnhfbc72igrvr7ag13r"))))))
+
+(define-public mypaint
+ (package
+ (name "mypaint")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint/"
+ "releases/download/v" version "/mypaint-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0pja0w005qn0qzy01y0nwbvi7xnmpq5s2bdlhhg8r4s2wdk7imni"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-relinfo
+ (lambda _
+ ;; #1058 https://github.com/mypaint/mypaint/pull/1058
+ (substitute* "lib/meta.py"
+ (("relinfo_fp,") "relinfo_fp.read(),"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests need writing access
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)
+ ("swig" ,swig)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("libmypaint" ,libmypaint)
+ ("mypaint-brushes" ,mypaint-brushes-2)
+ ("json-c" ,json-c)
+ ("lcms" ,lcms)
+ ("python-numpy" ,python-numpy)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)))
+ (home-page "http://mypaint.org/")
+ (synopsis "Fast and dead-simple painting app for artists")
+ (description "MyPaint is a simple drawing and painting program
+ that works well with Wacom-style graphics tablets.")
+ (license license:gpl2+)))
--
2.25.1
G
[PATCH 2/4] gnu: mypaint-brushes: Update to 1.3.1.
(address . 40214@debbugs.gnu.org)(name . L p R n d n)(address . guix@lprndn.info)
20200324153508.14166-1-guix@lprndn.info
From: L p R n d n <guix@lprndn.info>

* gnu/packages/gimp.scm (mypaint-brushes): Move variable to gnu/packages/drawing.scm.
* gnu/packages/drawing.scm (mypaint-brushes): Update to 1.3.1.
[source]: Switch to url-fetch and use mypaint/mypaint-brushes as upstream.
[phases]: Delete 'relax-dependency-version.
[home-page]: Switch to mypaint/mypaint-brushes.
---
gnu/packages/drawing.scm | 22 ++++++++++++++++++++++
gnu/packages/gimp.scm | 32 --------------------------------
2 files changed, 22 insertions(+), 32 deletions(-)

Toggle diff (82 lines)
diff --git a/gnu/packages/drawing.scm b/gnu/packages/drawing.scm
index 8aec7e7e2f..e3f7dc0af2 100644
--- a/gnu/packages/drawing.scm
+++ b/gnu/packages/drawing.scm
@@ -22,6 +22,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages glib)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages web))
@@ -53,3 +54,24 @@
brushstrokes which is used by MyPaint and GIMP.")
(home-page "http://mypaint.org")
(license license:isc)))
+
+(define-public mypaint-brushes
+ (package
+ (name "mypaint-brushes")
+ (version "1.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint-brushes/"
+ "releases/download/v" version "/mypaint-brushes-"
+ version ".tar.xz"))
+ (sha256 (base32
+ "0w7yqfps2j7nbds4vvf4a75ii5kk7j9qwlcwkv95qz0v4ky6zxpy"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)))
+ (synopsis "Default brushes for MyPaint")
+ (description "This package provides the default set of brushes for
+MyPaint.")
+ (home-page "https://github.com/mypaint/mypaint-brushes")
+ (license license:cc0)))
diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm
index 0d9b2ec023..50b47ccd31 100644
--- a/gnu/packages/gimp.scm
+++ b/gnu/packages/gimp.scm
@@ -265,38 +265,6 @@ can draw or apply filters in fourier space and get the modified image with an
inverse fourier transform.")
(license license:gpl3+)))
-(define-public mypaint-brushes
- (package
- (name "mypaint-brushes")
- (version "1.3.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/Jehan/mypaint-brushes.git")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1iz89z6v2mp8j1lrf942k561s8311i3s34ap36wh4rybb2lq15m0"))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'relax-dependency-version
- (lambda _
- (substitute* "autogen.sh"
- (("automake-1.13") "automake")
- (("aclocal-1.13") "aclocal"))
- #t)))))
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)))
- (synopsis "Default brushes for MyPaint")
- (description "This package provides the default set of brushes for
-MyPaint.")
- (home-page "https://github.com/Jehan/mypaint-brushes")
- (license license:cc0)))
-
(define-public gimp-resynthesizer
;; GIMP does not respect any plugin search path environment variable, so after
;; installation users have to edit their GIMP settings to include
--
2.25.1
L
L
Leo Famulari wrote on 29 Apr 2020 21:48
Re: [bug#40214] [PATCH 1/4] gnu: libmypaint: Update to 1.5.1.
(name . Lprndn)(address . lprndn@gmail.com)
20200429194810.GA31146@jasmine.lan
On Tue, Mar 24, 2020 at 02:34:22PM +0100, Lprndn wrote:
Toggle quote (7 lines)
> From: L p R n d n <guix@lprndn.info>
>
> * gnu/packages/gimp.scm (libmypaint): Move variable to gnu/packages/drawing.scm.
> * gnu/packages/drawing.scm: New file.
> * gnu/local.mk: Register it.
> * gnu/packages/drawing.scm (libmypaint): Update to 1.5.1.

It looks like several of the changes in this patch series (updating
libmypaint and providing new versions of mypaint-brushes) were made
independently in commits ec37ff199c99aaf705421ec3ba567ce15ef172c4 and
db79c15073c5b672fa7233fddfb44a61678e83bf.

So, all that's left is adding mypaint, right? Can you send a revised
patch for that, that applies to the current master branch?
L
L
L p R n d n wrote on 30 Apr 2020 19:12
(name . Leo Famulari)(address . leo@famulari.name)
87v9lgc2yw.fsf@lprndn.info
Hello!

Leo Famulari <leo@famulari.name> writes:

Toggle quote (16 lines)
> On Tue, Mar 24, 2020 at 02:34:22PM +0100, Lprndn wrote:
>> From: L p R n d n <guix@lprndn.info>
>>
>> * gnu/packages/gimp.scm (libmypaint): Move variable to gnu/packages/drawing.scm.
>> * gnu/packages/drawing.scm: New file.
>> * gnu/local.mk: Register it.
>> * gnu/packages/drawing.scm (libmypaint): Update to 1.5.1.
>
> It looks like several of the changes in this patch series (updating
> libmypaint and providing new versions of mypaint-brushes) were made
> independently in commits ec37ff199c99aaf705421ec3ba567ce15ef172c4 and
> db79c15073c5b672fa7233fddfb44a61678e83bf.
>
> So, all that's left is adding mypaint, right? Can you send a revised
> patch for that, that applies to the current master branch?

Here are the updated patches. First patch moves libmypaint and
mypaint-brushes to a new drawing.scm file, second adds mypaint.

Thanks for the review and have a nice day ;)

L p R n d n
From 36ceefbebb7b8c0dd97fcf593388923099e131f3 Mon Sep 17 00:00:00 2001
From: L p R n d n <guix@lprndn.info>
Date: Thu, 30 Apr 2020 17:43:24 +0200
Subject: [PATCH 2/2] gnu: Add Mypaint.

* gnu/packages/drawing.scm (mypaint): New variable.
---
gnu/packages/drawing.scm | 57 +++++++++++++++++++++++++++++++++++++++-
1 file changed, 56 insertions(+), 1 deletion(-)

Toggle diff (85 lines)
diff --git a/gnu/packages/drawing.scm b/gnu/packages/drawing.scm
index eb0e76ac43..f6c6f8626c 100644
--- a/gnu/packages/drawing.scm
+++ b/gnu/packages/drawing.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
+;;; Copyright © 2020, L p R n d n <guix@lprndn.info>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,11 +26,17 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix build-system gnu)
#:use-module (guix packages)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix build-system python)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages gettext)
+ #:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages web))
(define-public libmypaint
@@ -99,3 +106,51 @@ MyPaint.")
(file-name (git-file-name name version))
(sha256
(base32 "1c95l1vfz7sbrdlzrbz7h1p6s1k113kyjfd9wfnxlm0p6562cz3j"))))))
+
+(define-public mypaint
+ (package
+ (name "mypaint")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint/"
+ "releases/download/v" version "/mypaint-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0pja0w005qn0qzy01y0nwbvi7xnmpq5s2bdlhhg8r4s2wdk7imni"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-relinfo
+ (lambda _
+ ;; #1058 https://github.com/mypaint/mypaint/pull/1058
+ (substitute* "lib/meta.py"
+ (("relinfo_fp,") "relinfo_fp.read(),"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests need writing access
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)
+ ("swig" ,swig)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("libmypaint" ,libmypaint)
+ ("mypaint-brushes" ,mypaint-brushes)
+ ("json-c" ,json-c)
+ ("lcms" ,lcms)
+ ("python-numpy" ,python-numpy)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)))
+ (home-page "http://mypaint.org/")
+ (synopsis "Fast and dead-simple painting app for artists")
+ (description "MyPaint is a simple drawing and painting program
+ that works well with Wacom-style graphics tablets.")
+ (license license:gpl2+)))
--
2.26.1
L
L
Leo Famulari wrote on 30 Apr 2020 19:48
(name . L p R n d n)(address . guix@lprndn.info)
20200430174824.GA26566@jasmine.lan
On Thu, Apr 30, 2020 at 07:12:23PM +0200, L p R n d n wrote:
Toggle quote (3 lines)
> Here are the updated patches. First patch moves libmypaint and
> mypaint-brushes to a new drawing.scm file, second adds mypaint.

I'm not sure about adding a module (gnu packages drawing). The software
that could fit there can generally also be used for "painting",
"drafting", "photography post-production", and other activities of a
visual nature.

We already have image and graphics modules that are rather ambiguous.
How about one of those? Or creating a mypaint module?
L
L
L p R n d n wrote on 30 Apr 2020 23:13
(name . Leo Famulari)(address . leo@famulari.name)(address . 40214@debbugs.gnu.org)
87zhasn0cp.fsf@lprndn.info
Leo Famulari <leo@famulari.name> writes:

Toggle quote (12 lines)
> On Thu, Apr 30, 2020 at 07:12:23PM +0200, L p R n d n wrote:
>> Here are the updated patches. First patch moves libmypaint and
>> mypaint-brushes to a new drawing.scm file, second adds mypaint.
>
> I'm not sure about adding a module (gnu packages drawing). The software
> that could fit there can generally also be used for "painting",
> "drafting", "photography post-production", and other activities of a
> visual nature.
>
> We already have image and graphics modules that are rather ambiguous.
> How about one of those? Or creating a mypaint module?

You're right! I didn't find image.scm when searching for the right
place. Should I move libpaint and mypaint-brushes too? It feels weird to
have them in a different place.

Bye,

L p R n d n
L
L
Leo Famulari wrote on 30 Apr 2020 23:42
(name . L p R n d n)(address . guix@lprndn.info)(address . 40214@debbugs.gnu.org)
20200430214230.GA833@jasmine.lan
On Thu, Apr 30, 2020 at 11:13:26PM +0200, L p R n d n wrote:
Toggle quote (18 lines)
> Leo Famulari <leo@famulari.name> writes:
>
> > On Thu, Apr 30, 2020 at 07:12:23PM +0200, L p R n d n wrote:
> >> Here are the updated patches. First patch moves libmypaint and
> >> mypaint-brushes to a new drawing.scm file, second adds mypaint.
> >
> > I'm not sure about adding a module (gnu packages drawing). The software
> > that could fit there can generally also be used for "painting",
> > "drafting", "photography post-production", and other activities of a
> > visual nature.
> >
> > We already have image and graphics modules that are rather ambiguous.
> > How about one of those? Or creating a mypaint module?
>
> You're right! I didn't find image.scm when searching for the right
> place. Should I move libpaint and mypaint-brushes too? It feels weird to
> have them in a different place.

Yeah, now that we will have mypaint, it makes sense to keep them all
together :)
L
L
L p R n d n wrote on 1 May 2020 12:40
(name . Leo Famulari)(address . leo@famulari.name)(address . 40214@debbugs.gnu.org)
877dxwvsy6.fsf@lprndn.info
Hello,

Here are the new patches.

Leo Famulari <leo@famulari.name> writes:

Toggle quote (22 lines)
> On Thu, Apr 30, 2020 at 11:13:26PM +0200, L p R n d n wrote:
>> Leo Famulari <leo@famulari.name> writes:
>>
>> > On Thu, Apr 30, 2020 at 07:12:23PM +0200, L p R n d n wrote:
>> >> Here are the updated patches. First patch moves libmypaint and
>> >> mypaint-brushes to a new drawing.scm file, second adds mypaint.
>> >
>> > I'm not sure about adding a module (gnu packages drawing). The software
>> > that could fit there can generally also be used for "painting",
>> > "drafting", "photography post-production", and other activities of a
>> > visual nature.
>> >
>> > We already have image and graphics modules that are rather ambiguous.
>> > How about one of those? Or creating a mypaint module?
>>
>> You're right! I didn't find image.scm when searching for the right
>> place. Should I move libpaint and mypaint-brushes too? It feels weird to
>> have them in a different place.
>
> Yeah, now that we will have mypaint, it makes sense to keep them all
> together :)

Have a nice day,

L p R n d n
From 6727d751c75b51e9f8b7544420e108142f32d9dd Mon Sep 17 00:00:00 2001
From: L p R n d n <guix@lprndn.info>
Date: Fri, 1 May 2020 12:21:55 +0200
Subject: [PATCH 2/2] gnu: Add Mypaint.

* gnu/packages/image.scm (mypaint): New variable.
---
gnu/packages/image.scm | 50 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (74 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 08accd1b2f..8ceb8fe881 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -25,6 +25,7 @@
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
+;;; Copyright © 2020 L p R n d n <guix@lprndn.info>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -74,6 +75,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sphinx)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
@@ -2129,3 +2131,51 @@ MyPaint.")
(file-name (git-file-name name version))
(sha256
(base32 "1c95l1vfz7sbrdlzrbz7h1p6s1k113kyjfd9wfnxlm0p6562cz3j"))))))
++
+(define-public mypaint
+ (package
+ (name "mypaint")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint/"
+ "releases/download/v" version "/mypaint-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0pja0w005qn0qzy01y0nwbvi7xnmpq5s2bdlhhg8r4s2wdk7imni"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-relinfo
+ (lambda _
+ ;; #1058 https://github.com/mypaint/mypaint/pull/1058
+ (substitute* "lib/meta.py"
+ (("relinfo_fp,") "relinfo_fp.read(),"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests need writing access
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)
+ ("swig" ,swig)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("libmypaint" ,libmypaint)
+ ("mypaint-brushes" ,mypaint-brushes)
+ ("json-c" ,json-c)
+ ("lcms" ,lcms)
+ ("python-numpy" ,python-numpy)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)))
+ (home-page "http://mypaint.org/")
+ (synopsis "Fast and dead-simple painting app for artists")
+ (description "MyPaint is a simple drawing and painting program
+ that works well with Wacom-style graphics tablets.")
+ (license license:gpl2+)))
--
2.26.1
L
L
Leo Famulari wrote on 1 May 2020 23:05
(name . L p R n d n)(address . guix@lprndn.info)(address . 40214@debbugs.gnu.org)
20200501210503.GA21970@jasmine.lan
On Fri, May 01, 2020 at 12:40:49PM +0200, L p R n d n wrote:
Toggle quote (2 lines)
> Here are the new patches.

Thanks!

But, MyPaint doesn't run for me when I install it based on these
patches:

------
$ mypaint
INFO: mypaint: Installation layout: conventional POSIX-like structure with prefix '/gnu/store/dbs4r9qs1qjaf7sh12fy7v837280ip5d-mypaint-2.0.0'
Traceback (most recent call last):
File "/gnu/store/dbs4r9qs1qjaf7sh12fy7v837280ip5d-mypaint-2.0.0/bin/.mypaint-real", line 294, in <module>
= get_paths()
File "/gnu/store/dbs4r9qs1qjaf7sh12fy7v837280ip5d-mypaint-2.0.0/bin/.mypaint-real", line 241, in get_paths
from lib import fileutils
File "/gnu/store/dbs4r9qs1qjaf7sh12fy7v837280ip5d-mypaint-2.0.0/lib/mypaint/lib/fileutils.py", line 25, in <module>
import lib.gichecks
File "/gnu/store/dbs4r9qs1qjaf7sh12fy7v837280ip5d-mypaint-2.0.0/lib/mypaint/lib/gichecks.py", line 19, in <module>
gi.require_version('GdkPixbuf', '2.0')
File "/gnu/store/y4qwsw06ynvw3fjk2lrspp89mfmjzj5i-python-pygobject-3.28.3/lib/python3.7/site-packages/gi/__init__.py", line 130, in require_version
raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace GdkPixbuf not available
------

This is on Debian. Is it working for you?
L
L
L p R n d n wrote on 2 May 2020 10:09
(name . Leo Famulari)(address . leo@famulari.name)(address . 40214@debbugs.gnu.org)
87tv0yzrkq.fsf@lprndn.info
Hello,

Hum it does work for me on a Guix system. But looking at my env, I have
gdk-pixbuf in GI_TYPELIB_PATH. I think wrapping mypaint like with
glib-or-gtk-build system should do the trick. I'll look into that. ;)

Have a nice fay,

L p R n d n
L
L
L p R n d n wrote on 3 May 2020 00:40
(name . Leo Famulari)(address . leo@famulari.name)(address . 40214@debbugs.gnu.org)
87pnbmufii.fsf@lprndn.info
Hello,

Here is the new patch for adding Mypaint.
Added two wrapping phases, one from glib-or-gtk and one adding
GI_TYPELIB_PATH. Also switched from gdk-pixbuf to gdk-pixbuf+svg and added the
hicolor-icon-theme as input. It should work now.

Have a nice day,

L p R n d n
From cc7b7faa4493445ef70004d185ea37a4d462b17f Mon Sep 17 00:00:00 2001
From: L p R n d n <guix@lprndn.info>
Date: Fri, 1 May 2020 12:21:55 +0200
Subject: [PATCH 2/2] gnu: Add Mypaint.

* gnu/packages/image.scm (mypaint): New variable.
---
gnu/packages/image.scm | 68 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)

Toggle diff (99 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 08accd1b2f..736b3012a1 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -25,6 +25,7 @@
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
+;;; Copyright © 2020 L p R n d n <guix@lprndn.info>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -59,6 +60,7 @@
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages lua)
@@ -74,6 +76,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sphinx)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
@@ -2129,3 +2132,68 @@ MyPaint.")
(file-name (git-file-name name version))
(sha256
(base32 "1c95l1vfz7sbrdlzrbz7h1p6s1k113kyjfd9wfnxlm0p6562cz3j"))))))
+
+(define-public mypaint
+ (package
+ (name "mypaint")
+ (version "2.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mypaint/mypaint/"
+ "releases/download/v" version "/mypaint-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0pja0w005qn0qzy01y0nwbvi7xnmpq5s2bdlhhg8r4s2wdk7imni"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:imported-modules ((guix build glib-or-gtk-build-system)
+ ,@%python-build-system-modules)
+ #:modules ((guix build python-build-system)
+ ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-relinfo
+ (lambda _
+ ;; #1058 https://github.com/mypaint/mypaint/pull/1058
+ (substitute* "lib/meta.py"
+ (("relinfo_fp,") "relinfo_fp.read(),"))
+ #t))
+ (add-after 'install 'glib-or-gtk-wrap
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key outputs inputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (gdk-pixbuf (assoc-ref inputs "gdk-pixbuf"))
+ (gtk+ (assoc-ref inputs "gtk+")))
+ (wrap-program (string-append out "/bin/mypaint")
+ `("GI_TYPELIB_PATH" ":" prefix
+ (,(getenv "GI_TYPELIB_PATH"))))
+ #t)))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests need writing access
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)
+ ("swig" ,swig)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
+ ("hicolor-icon-theme" ,hicolor-icon-theme)
+ ("libmypaint" ,libmypaint)
+ ("mypaint-brushes" ,mypaint-brushes)
+ ("json-c" ,json-c)
+ ("lcms" ,lcms)
+ ("python-numpy" ,python-numpy)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)))
+ (home-page "http://mypaint.org/")
+ (synopsis "Fast and dead-simple painting app for artists")
+ (description "MyPaint is a simple drawing and painting program
+ that works well with Wacom-style graphics tablets.")
+ (license license:gpl2+)))
--
2.26.1
C
C
Christopher Baines wrote on 8 Dec 2020 21:11
(name . L p R n d n)(address . guix@lprndn.info)(address . 40214-done@debbugs.gnu.org)
874kkwhxcc.fsf@cbaines.net
L p R n d n <guix@lprndn.info> writes:

Toggle quote (5 lines)
> Here is the new patch for adding Mypaint.
> Added two wrapping phases, one from glib-or-gtk and one adding
> GI_TYPELIB_PATH. Also switched from gdk-pixbuf to gdk-pixbuf+svg and added the
> hicolor-icon-theme as input. It should work now.

Hey,

Sorry for the delay in pushing this forward. I've had a look at this
patch and it looks pretty good to me.

I've updated mypaint to 2.0.1 which removed the need for one of the
phases. I've pushed to master as
8a55a3994c805aa2d4f5d04433908b206c294d47.

I've only just realised that you'd intended in moving some other
packages around. If you're still interested in making those changes, can
you resubmit the patches as new bugs.

Thanks,

Chris
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAl/P3fNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9XeJ+g//a0pF10kRHDBn9+rmTD9hd4AV1UDtMXFm
qizKqScJg20pLhDzNRGIiy9RiwG4RuqBAvBKbb0XLLVSHPLHHlPF50UVxO0baT0h
YFQ+epeFYAaBe5yuXuC+5w32M9Y+A8NXMQfJGR61TU3JwyaHogo+xXNaZDrvD6QI
MIfDswTKopWc/poay33rclD8NwA8HVgblw6PmnLt8uVz9IBXxCCceJ28dp/C0fIT
rEBaufdO1dz/0KdNmh13UhDc2ojzN56kyLgik4s1v9kFGT562DDGvH5NPMcdB8tb
FsGNhhOrdYAd9q2shQMQ17Hyk6k3LPAE4bYObO3Nn0KP+VMwIemUA6lcX1ckYSHf
Qc7t5XwgOVTb5pIcJx4WItf3G0SexO3PMNlYPnyG+0+xL1pUHYu6uwhhCyKbpXyE
0H5OTei5f1pJXA67rh9tkHdPa/DAQAD6NlcB/bllTSbROzy+wb1212ufZG1kt2wQ
MP9tCtu6vSw/F/PYZSnsG3IPoa9dizwa46TiTHmvNBRui0ynu4Et4KgsOkpTRE6S
8AMrc6ITkW8YpCU0QZ4l25oFCvK85kGxSBX8YTff3JeipGU5YU4qcmtHR6LN9hD2
ZekHRBdeQQCr2l0H5va26C4rLLiFCROTx/VP60ukXmCa/j2msyg2pdM3ZXOVYscZ
1oAL4rtVIg4=
=5hZo
-----END PGP SIGNATURE-----

Closed
?