Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 569548 - media-libs/libmypaint[gegl] ebuild request (required for media-gfx/gimp-9999)
Summary: media-libs/libmypaint[gegl] ebuild request (required for media-gfx/gimp-9999)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Default Assignee for New Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-23 21:22 UTC by DrSlony
Modified: 2016-07-18 16:20 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
libmypaint-9999.ebuild r1 (libmypaint-9999.ebuild,616 bytes, text/plain)
2015-12-23 21:43 UTC, DrSlony
Details
libmypaint-9999.ebuild r2 (libmypaint-9999.ebuild,553 bytes, text/plain)
2015-12-31 03:18 UTC, Sebastian Pipping
Details
libmypaint-9999.ebuild r3 (libmypaint-9999.ebuild,799 bytes, text/plain)
2015-12-31 18:31 UTC, Sebastian Pipping
Details
libmypaint-9999.ebuild r4 (libmypaint-9999.ebuild,569 bytes, text/plain)
2016-05-23 21:43 UTC, DrSlony
Details

Note You need to log in before you can comment on or make changes to this bug.
Description DrSlony 2015-12-23 21:22:20 UTC
libmypaint is now needed to build gimp-9999
https://github.com/mypaint/libmypaint

"libmypaint, a.k.a. "brushlib", is a library for making brushstrokes which is used by MyPaint and other projects. http://mypaint.org

This is a self-contained C library that is isolated from MyPaint. It allows other applications to make use of the MyPaint brush engine."

Attached is my first ebuild, so check it carefully. It works compiles fine here.

See bug 569346.
Comment 1 DrSlony 2015-12-23 21:43:48 UTC
Created attachment 420586 [details]
libmypaint-9999.ebuild r1
Comment 2 Sebastian Pipping gentoo-dev 2015-12-23 22:26:45 UTC
Upstream ticket https://github.com/mypaint/mypaint/issues/535 seems related.

Markos, as the maintainer of media-gfx/mypaint, do you have any preferences / wishes / requirements on future media-libs/libmypaint packages?
Comment 3 Sebastian Pipping gentoo-dev 2015-12-24 00:26:17 UTC
I gave the attached live ebuild a closer look and a spin now:

* The enable_gegl="true" part should go to src_compile only or as well

* Installing conflicts with two files

    /usr/share/locale/zh_TW/LC_MESSAGES/libmypaint.mo
    /usr/share/locale/zh_CN/LC_MESSAGES/libmypaint.mo

  owned by media-gfx/mypaint.  

* I also run into weird compile errors if I don't post-process
  Gentoo-wide CFLAGS like

    CFLAGS="$(sed 's,--param [^ ]\+,,g' <<<"${CFLAGS}")"

  The flag-o-matic eclass way seems to be running strip-unsupported-flags.

  I have reported that issue upstream:
  https://github.com/mypaint/libmypaint/issues/30
Comment 4 DrSlony 2015-12-25 22:44:22 UTC
Sebastian please see bug 569738. Did you manage to emerge GIMP?
Comment 5 Sebastian Pipping gentoo-dev 2015-12-26 09:59:31 UTC
(In reply to DrSlony from comment #4)
> Sebastian please see bug 569738. Did you manage to emerge GIMP?

With libmypaint installed: yes.
Comment 6 DrSlony 2015-12-26 18:22:37 UTC
Please see bug 569738 again.
Comment 7 Sebastian Pipping gentoo-dev 2015-12-31 03:18:43 UTC
Created attachment 421284 [details]
libmypaint-9999.ebuild r2

Updated ebuild with misc fixes
Comment 8 DrSlony 2015-12-31 13:58:35 UTC
Your ebuild compiles successfully.
Comment 9 Serge Gavrilov 2015-12-31 14:26:45 UTC
* Messages for package media-libs/libmypaint-9999:

 * This package will overwrite one or more files that may belong to other
 * packages (see list below). You can use a command such as `portageq
 * owners / <filename>` to identify the installed package that owns a
 * file. If portageq reports that only one package owns a file then do
 * NOT file a bug report. A bug report is only useful if it identifies at
 * least two or more packages that are known to install the same file(s).
 * If a collision occurs and you can not explain where the file came from
 * then you should simply ignore the collision since there is not enough
 * information to determine if a real problem exists. Please do NOT file
 * a bug report at http://bugs.gentoo.org unless you report exactly which
 * two packages install the same file(s). See
 * http://wiki.gentoo.org/wiki/Knowledge_Base:Blockers for tips on how to
 * solve the problem. And once again, please do NOT file a bug report
 * unless you have completely understood the above message.
 * 
 * Detected file collision(s):
 * 
 * 	/usr/share/locale/ru/LC_MESSAGES/libmypaint.mo
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * media-gfx/mypaint-1.1.0-r2:0::gentoo
 * 	/usr/share/locale/ru/LC_MESSAGES/libmypaint.mo
 * 
 * Package 'media-libs/libmypaint-9999' NOT merged due to file
 * collisions. If necessary, refer to your elog messages for the whole
 * content of the above message.
Comment 10 Sebastian Pipping gentoo-dev 2015-12-31 18:31:09 UTC
Created attachment 421382 [details]
libmypaint-9999.ebuild r3

(In reply to Serge Gavrilov from comment #9)
>  * Detected file collision(s):
>  * 
>  * 	/usr/share/locale/ru/LC_MESSAGES/libmypaint.mo

A block on media-gfx/mypaint was missing.  I have also added missing dependencies.
Comment 11 Serge Gavrilov 2015-12-31 18:37:17 UTC
Is it really that gimp block mypaint?
Comment 12 Sebastian Pipping gentoo-dev 2015-12-31 18:41:49 UTC
(In reply to Serge Gavrilov from comment #11)
> Is it really that gimp block mypaint?

I'm afraid before we have a version of mypaint in Gentoo that (a) uses libmypaint or (b) provides libmypaint-gegl the answer for Gimp 9999 is yes.  Any other ideas for a fix?
Comment 13 Serge Gavrilov 2016-02-01 09:48:12 UTC
It seems that GIMP mypaint tool is unusable without MyPaint installed (no brushes). 

The only blockers are libmypaint.mo files from libmypaint. 

I install the packages in the following order:

1) libmypaint (ebuild without conflict with mypaint)
2) GIMP 2.9

Now GIMP cannot find any mypaint brushes

3) rm -f `locate libmypaint.mo`
4) mypaint

Now everything seems to work in a proper way (both mypaint & GIMP)
Comment 14 DrSlony 2016-05-20 18:58:21 UTC
Hello

Using libmypaint-9999.ebuild r3 attached above, emerging media-libs/libmypaint-9999 today fails with:

 >>> Compiling source in /var/tmp/portage/media-libs/libmypaint-9999/work/libmypaint-9999 ...
 scons -j8 enable_openmp=1 enable_gegl=true enable_shared=true prefix=/usr

 scons: *** No SConstruct file found.


I asked on #gimp and was told that libmypaint is being autotooled and we should try the autoconf.sh / configure type of incantations instead. I am used to compiling manually, but I don't know how that is done in an ebuild. Could someone help update the ebuild so that we can get this to compile, as gimp-9999 depends on it?

P.S. I tried this https://bpaste.net/show/b67eda274b49 and it emerged well. No idea whether its safe though.
Comment 15 DrSlony 2016-05-20 19:44:26 UTC
My ebuild mod probably didn't work, because compiling gimp-9999 fails with:
 GIMP configuration failed.
 The following mandatory dependencies are missing:
   - libmypaint >= 1.3.0
Comment 17 DrSlony 2016-05-23 21:43:54 UTC
Created attachment 435140 [details]
libmypaint-9999.ebuild r4

The attached libmypaint-9999.ebuild r4 leads to a successfully compiled libmypaint which gimp-9999 picks up and compiles successfully against. I make no claims as to it being safe - use at your own risk.
Comment 18 Sebastian Pipping gentoo-dev 2016-07-18 16:20:10 UTC
1.3.0_beta1 now in Gentoo:
https://github.com/gentoo/gentoo/commit/76d49b5609a56bdc5b817ac65be4593b2cb450a7