LINUX.ORG.RU

Gimp. Что простому пользователю делать с багом?

 , ,


1

2

GIMP 2.10.10.

Вот этот баг → https://gitlab.gnome.org/GNOME/gegl/issues/150

Он закрыт. Но это в официальном варианте. В https://launchpad.net/~otto-kesselgulasch/ archive/ubuntu/gimp так и осталось.

Связываться с флетпаками (как, впрочем, и со снапами) не хочу ни как.

Просто отключил OpenCL в настройках GIMP.

Ответ на: комментарий от Deleted

Собрало. И немедленно установило. А пакеты я из /var/cache/apt-build/repository/ на всякий случай скопировал, куда сам знаю. А что теперь с пакетами делать-то? Подозреваю, что патчить?:)

Dementy ()
Ответ на: комментарий от Dementy

Собрало.

Ну вот. Жизнь налаживается. Все dev-ы теперь у тебя в системе. А вот список пакетов из /var/cache/apt-build/repository/ надо привести. Замучился я ванговать.

Deleted ()
Ответ на: комментарий от Deleted
/var/cache/apt-build/repository$ ls
dists
gegl_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.deb
libgegl-0.4-0_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.deb
libgegl-dev_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.deb
libgegl-doc_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_all.deb
Packages
Packages.gz
Dementy ()
Ответ на: комментарий от Deleted

А чего-то там вообще такого нет...

/var/cache/apt/archives$ ls
asciidoc_8.6.10-2_all.deb
asciidoc-base_8.6.10-2_all.deb
asciidoc-common_8.6.10-2_all.deb
dh-translations_138.18.04.1_all.deb
docbook_4.5-6_all.deb
docbook-to-man_1%3a2.0.0-41_amd64.deb
enscript_1.6.5.90-3_amd64.deb
gcc-6-base_6.5.0-2ubuntu1~18.04_amd64.deb
gir1.2-gexiv2-0.10_0.10.8-1_amd64.deb
gir1.2-gtk-2.0_2.24.32-1ubuntu1_amd64.deb
gir1.2-harfbuzz-0.0_1.7.2-1ubuntu1_amd64.deb
gir1.2-json-1.0_1.4.2-3_amd64.deb
gir1.2-rsvg-2.0_2.40.20-2_amd64.deb
gnome-pkg-tools_0.20.2ubuntu2_all.deb
graphviz_2.40.1-2_amd64.deb
gtk-doc-tools_1.27-3_all.deb
highlight_3.41-1_amd64.deb
highlight-common_3.41-1_all.deb
icu-devtools_60.2-3ubuntu3_amd64.deb
intltool_0.51.0-5ubuntu1_all.deb
jq_1.5+dfsg-2_amd64.deb
libann0_1.1.2+doc-6_amd64.deb
libasan3_6.5.0-2ubuntu1~18.04_amd64.deb
libasound2-dev_1.1.3-5ubuntu0.2_amd64.deb
libatk1.0-dev_2.28.1-1_amd64.deb
libavcodec-dev_7%3a3.4.6-0ubuntu0.18.04.1_amd64.deb
libavformat-dev_7%3a3.4.6-0ubuntu0.18.04.1_amd64.deb
libavutil-dev_7%3a3.4.6-0ubuntu0.18.04.1_amd64.deb
libbabl-dev_0.1.62+om-0ubu18.04.1~ppa_amd64.deb
libblas-dev_3.7.1-4ubuntu1_amd64.deb
libbtf1_1%3a5.1.2-2_amd64.deb
libcaca-dev_0.99.beta19-2ubuntu0.18.04.1_amd64.deb
libcairo2-dev_1.15.10-2ubuntu0.1_amd64.deb
libcairo-script-interpreter2_1.15.10-2ubuntu0.1_amd64.deb
libcdt5_2.40.1-2_amd64.deb
libcgraph6_2.40.1-2_amd64.deb
libcxsparse3_1%3a5.1.2-2_amd64.deb
libdrm-dev_2.4.98+git1905161830.922d92~oibaf~b_amd64.deb
libexiv2-dev_0.26-2~+18.04+bionic+build11_amd64.deb
libexpat1-dev_2.2.5-3_amd64.deb
libfontconfig1-dev_2.12.6-0ubuntu2_amd64.deb
libfreetype6-dev_2.8.1-2ubuntu2_amd64.deb
libgcc-6-dev_6.5.0-2ubuntu1~18.04_amd64.deb
libgcrypt20-dev_1.8.1-4ubuntu1.1_amd64.deb
libgdk-pixbuf2.0-dev_2.36.11-2_amd64.deb
libgexiv2-dev_0.10.8-1_amd64.deb
libgl1-mesa-dev_19.2~git1905260730.659aa3~oibaf~b_amd64.deb
libgles1_1.0.0-2ubuntu2.2_amd64.deb
libglib2.0-dev_2.56.4-0ubuntu0.18.04.2_amd64.deb
libglib2.0-dev-bin_2.56.4-0ubuntu0.18.04.2_amd64.deb
libglu1-mesa-dev_9.0.0-2.1build1_amd64.deb
libglvnd-core-dev_1.0.0-2ubuntu2.2_amd64.deb
libglvnd-dev_1.0.0-2ubuntu2.2_amd64.deb
libgpg-error-dev_1.27-6_amd64.deb
libgraphblas1_1%3a5.1.2-2_amd64.deb
libgraphite2-dev_1.3.11-2_amd64.deb
libgtk2.0-dev_2.24.32-1ubuntu1_amd64.deb
libgts-0.7-5_0.7.6+darcs121130-4_amd64.deb
libgvc6_2.40.1-2_amd64.deb
libgvpr2_2.40.1-2_amd64.deb
libharfbuzz-dev_1.7.2-1ubuntu1_amd64.deb
libharfbuzz-gobject0_1.7.2-1ubuntu1_amd64.deb
libice-dev_2%3a1.0.9-2_amd64.deb
libicu-dev_60.2-3ubuntu3_amd64.deb
libicu-le-hb0_1.0.3+git161113-4_amd64.deb
libicu-le-hb-dev_1.0.3+git161113-4_amd64.deb
libiculx60_60.2-3ubuntu3_amd64.deb
libilmbase-dev_2.2.0-11ubuntu2_amd64.deb
libjbig-dev_2.1-3.1build1_amd64.deb
libjpeg8-dev_8c-2ubuntu8_amd64.deb
libjpeg-dev_8c-2ubuntu8_amd64.deb
libjpeg-turbo8-dev_1.5.2-0ubuntu5.18.04.1_amd64.deb
libjq1_1.5+dfsg-2_amd64.deb
libjson-glib-dev_1.4.2-3_amd64.deb
libklu1_1%3a5.1.2-2_amd64.deb
liblab-gamut1_2.40.1-2_amd64.deb
liblapack-dev_3.7.1-4ubuntu1_amd64.deb
liblcms2-dev_2.9-1ubuntu0.1_amd64.deb
libldl2_1%3a5.1.2-2_amd64.deb
libluajit-5.1-2_2.1.0~beta3+dfsg-5.1_amd64.deb
libluajit-5.1-common_2.1.0~beta3+dfsg-5.1_all.deb
liblzma-dev_5.2.2-1.3_amd64.deb
libonig4_6.7.0-1_amd64.deb
libopenexr-dev_2.2.0-11.1ubuntu1_amd64.deb
libopengl0_1.0.0-2ubuntu2.2_amd64.deb
libopenraw7_0.1.2-0.2_amd64.deb
libopenraw-dev_0.1.2-0.2_amd64.deb
libosp5_1.5.2-13ubuntu2_amd64.deb
libpango1.0-dev_1.40.14-1ubuntu0.1_amd64.deb
libpathplan4_2.40.1-2_amd64.deb
libpcre16-3_2%3a8.39-9_amd64.deb
libpcre32-3_2%3a8.39-9_amd64.deb
libpcre3-dev_2%3a8.39-9_amd64.deb
libpcrecpp0v5_2%3a8.39-9_amd64.deb
libpixman-1-dev_0.34.0-2_amd64.deb
libpng-dev_1.6.34-1ubuntu0.18.04.2_amd64.deb
libpthread-stubs0-dev_0.3-4_amd64.deb
libpulse-dev_1%3a11.1-1ubuntu7.2_amd64.deb
libraw-dev_0.18.8-1ubuntu0.3_amd64.deb
librbio2_1%3a5.1.2-2_amd64.deb
librsvg2-dev_2.40.20-2_amd64.deb
libsdl1.2-dev_1.2.15+dfsg2-0.1_amd64.deb
libslang2-dev_2.3.1a-3ubuntu1_amd64.deb
libsm-dev_2%3a1.2.2-1_amd64.deb
libspiro0_1%3a0.5.20150702-7_amd64.deb
libspiro-dev_1%3a0.5.20150702-7_amd64.deb
libspqr2_1%3a5.1.2-2_amd64.deb
libssh-gcrypt-dev_0.8.0~20170825.94fa1e38-1ubuntu0.2_amd64.deb
libstdc++-6-dev_6.5.0-2ubuntu1~18.04_amd64.deb
libsuitesparse-dev_1%3a5.1.2-2_amd64.deb
libswresample-dev_7%3a3.4.6-0ubuntu0.18.04.1_amd64.deb
libswscale-dev_7%3a3.4.6-0ubuntu0.18.04.1_amd64.deb
libtiff5-dev_4.0.9-5ubuntu0.2_amd64.deb
libtiffxx5_4.0.9-5ubuntu0.2_amd64.deb
libv4l2rds0_1.14.2-1_amd64.deb
libv4l-dev_1.14.2-1_amd64.deb
libvala-0.40-0_0.40.8-0ubuntu1_amd64.deb
libwebp-dev_0.6.1-2_amd64.deb
libx11-dev_2%3a1.6.4-3ubuntu0.2_amd64.deb
libx11-xcb-dev_2%3a1.6.4-3ubuntu0.2_amd64.deb
libxau-dev_1%3a1.0.8-1_amd64.deb
libxcb1-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-dri2-0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-dri3-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-glx0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-present-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-randr0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-render0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-shape0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-shm0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-sync-dev_1.13-2~ubuntu18.04_amd64.deb
libxcb-xfixes0-dev_1.13-2~ubuntu18.04_amd64.deb
libxcomposite-dev_1%3a0.4.4-2_amd64.deb
libxcursor-dev_1%3a1.1.15-1_amd64.deb
libxdamage-dev_1%3a1.1.4-3_amd64.deb
libxdmcp-dev_1%3a1.1.2-3_amd64.deb
libxext-dev_2%3a1.3.3-1_amd64.deb
libxfixes-dev_1%3a5.0.3-1_amd64.deb
libxft-dev_2.3.2-1_amd64.deb
libxi-dev_2%3a1.7.9-1_amd64.deb
libxinerama-dev_2%3a1.1.3-1_amd64.deb
libxrandr-dev_2%3a1.5.1-1_amd64.deb
libxrender-dev_1%3a0.9.10-1_amd64.deb
libxshmfence-dev_1.3-1_amd64.deb
libxxf86vm-dev_1%3a1.1.4-1_amd64.deb
lock
lua5.2_5.2.4-1.1build1_amd64.deb
luajit_2.1.0~beta3+dfsg-5.1_amd64.deb
mesa-common-dev_19.2~git1905260730.659aa3~oibaf~b_amd64.deb
opensp_1.5.2-13ubuntu2_amd64.deb
partial
python3-distutils_3.6.7-1~18.04_all.deb
python3-gi-cairo_3.26.1-2ubuntu1_amd64.deb
python3-lib2to3_3.6.7-1~18.04_all.deb
python3-scour_0.36-2_all.deb
python-funcsigs_1.0.2-4_all.deb
python-mock_2.0.0-3_all.deb
python-pbr_3.1.1-3ubuntu3_all.deb
python-pkg-resources_39.0.1-2_all.deb
python-six_1.11.0-2_all.deb
scour_0.36-2_all.deb
valac_0.40.8-0ubuntu1_amd64.deb
valac-0.40-vapi_0.40.8-0ubuntu1_all.deb
x11proto-composite-dev_1%3a2018.4-4_all.deb
x11proto-core-dev_2018.4-4_all.deb
x11proto-damage-dev_1%3a2018.4-4_all.deb
x11proto-dev_2018.4-4_all.deb
x11proto-fixes-dev_1%3a2018.4-4_all.deb
x11proto-input-dev_2018.4-4_all.deb
x11proto-randr-dev_2018.4-4_all.deb
x11proto-xext-dev_2018.4-4_all.deb
x11proto-xf86vidmode-dev_2018.4-4_all.deb
x11proto-xinerama-dev_2018.4-4_all.deb
xorg-sgml-doctools_1%3a1.11-1_all.deb
xsltproc_1.1.29-5ubuntu0.1_amd64.deb
xtrans-dev_1.3.5-1_all.deb
zlib1g-dev_1%3a1.2.11.dfsg-0ubuntu2_amd64.deb
А оно не могло это всё после использования rm сделать?

Dementy ()
Ответ на: комментарий от Deleted

Похоже, они попались.

/var/cache/apt-build/build$ ls
gegl-0.4.14+om
gegl_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.buildinfo
gegl_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.changes
gegl_0.4.14+om-0ubu18.04.1~ppa.debian.tar.gz
gegl_0.4.14+om-0ubu18.04.1~ppa.dsc
gegl_0.4.14+om.orig.tar.xz
gegl-dbgsym_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.ddeb
libgegl-0.4-0-dbgsym_0.4.14+om-0ubu18.04.1~ppa+aptbuild2_amd64.ddeb

Dementy ()
Ответ на: комментарий от Dementy

научиться еще надо.

patch - обычный текстовой файл, порождённый diff-ом. «Твой» патч очень прост, открой в редакторе и просто почитай, многое проясниться.

Deleted ()
Ответ на: комментарий от Deleted

Возможно, я каким-то образом произвел впечатление гораздо более образованного человека, чем я есть на самом деле. Ну, в тексте патча большой процент слов мне знаком:))

From 48d41f4d6f8b6f9532a3f0716f91aeb8add10aa5 Mon Sep 17 00:00:00 2001
From: Massimo Valentini <mvalentini335@gmail.com>
Date: Sun, 14 Apr 2019 21:33:27 +0200
Subject: [PATCH] issue #150 - High pass filter on GIMP 2.10.10 behaves
 differently than in Gimp 2.10.8

OpenCL version only processes 3+1 components and chooses
un/premultiplied using GEGL_PROPERTIES()->user_data !=/== NULL
---
 operations/common/opacity.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/operations/common/opacity.c b/operations/common/opacity.c
index b62aef056..5af58ba9e 100644
--- a/operations/common/opacity.c
+++ b/operations/common/opacity.c
@@ -45,8 +45,19 @@ prepare (GeglOperation *self)
 {
   const Babl *space = gegl_operation_get_source_space (self, "input");
   const Babl *fmt = gegl_operation_get_source_format (self, "input");
-  //GeglProperties *o = GEGL_PROPERTIES (self);
+  GeglProperties *o = GEGL_PROPERTIES (self);
 
+  if (gegl_operation_use_opencl (self))
+    {
+      if (babl_get_model_flags (fmt) & BABL_MODEL_FLAG_PREMULTIPLIED)
+        fmt = babl_format_with_space ("RaGaBaA float", space);
+      else
+        {
+          fmt = babl_format_with_space ("RGBA float", space);
+          o->user_data = o;
+        }
+    }
+  else
   fmt = gegl_babl_variant (fmt, GEGL_BABL_VARIANT_ALPHA);
 
   gegl_operation_set_format (self, "input", fmt);
-- 
2.21.0

Dementy ()
Ответ на: комментарий от Dementy

./operations/common/opacity.c

«Твой» патч меняет только этот^ файл. Меняет со строки 45:

//GeglProperties *o = GEGL_PROPERTIES (self);

На:

  GeglProperties *o = GEGL_PROPERTIES (self);
 
  if (gegl_operation_use_opencl (self))
    {
      if (babl_get_model_flags (fmt) & BABL_MODEL_FLAG_PREMULTIPLIED)
        fmt = babl_format_with_space ("RaGaBaA float", space);
      else
        {
          fmt = babl_format_with_space ("RGBA float", space);
          o->user_data = o;
        }
    }
  else

Если не получается использовать команду patch, можешь «ручками» сделать данную правку.

Deleted ()
Ответ на: комментарий от Deleted

читай INSTALL

В этом архиве должно быть? А нет. Зато такое впечатление, что все готово к checkinstall.

~/0000/gegl-0.4$ ls
AUTHORS       COPYING.LESSER  gegl.pc.in              Makefile.am     tests
autogen.sh    docs            gegl-uninstalled.pc.in  opencl          tools
bin           examples        HACKING                 operations
build         gcut            libs                    perf
configure.ac  gegl            m4                      po
COPYING       gegl.doap       MAINTAINERS             seamless-clone
Dementy ()
Ответ на: комментарий от Dementy

все готово к checkinstall

Зачем тебе checkinstall? У тебя всё уже установлено. Тебе надо только поменять в системе библиотеку на пропатченную.

autogen.sh

Это сгенерит configure

./autogen.sh
Deleted ()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted
~/0000/gegl-0.4/libs/npd/.libs$ ls
libgegl-npd-0.4.la                libgegl_npd_0.4_la-npd_common.o
libgegl_npd_0.4_la-deformation.o  libgegl_npd_0.4_la-npd_debug.o
libgegl_npd_0.4_la-graphics.o     libgegl_npd_0.4_la-npd_gegl.o
libgegl-npd-0.4.lai               libgegl_npd_0.4_la-npd_math.o
libgegl_npd_0.4_la-lattice_cut.o  libgegl-npd-0.4.so
~/0000/gegl-0.4/libs/poly2tri-c/poly2tri-c/.libs$ ls
libpoly2tri-c.a  libpoly2tri-c.la
~/0000/gegl-0.4/libs/rgbe/.libs$ ls
librgbe.a  librgbe.la  librgbe_la-rgbe.o
Dementy ()
Ответ на: комментарий от Deleted
~/0000/gegl-0.4/gegl/.libs$ ls
gegl-apply.o        gegl-instrument.o             gegl-utils.o
gegl-config.o       gegl-introspection-support.o  gegl-xml.o
gegl-cpuaccel.o     gegl-lookup.o                 libgegl-0.4.la
gegl-dot.o          gegl-matrix.o                 libgegl-0.4.lai
gegl-dot-visitor.o  gegl-parallel.o               libgegl-0.4.so
gegl-enums.o        gegl-random.o                 libgegl-0.4.so.0
gegl-gio.o          gegl-serialize.o              libgegl-0.4.so.0.414.0
gegl-init.o         gegl-stats.o
Dementy ()
Ответ на: комментарий от Deleted
ls -l ~/0000/gegl-0.4/gegl/.libs/libgegl*
lrwxrwxrwx 1 dementy dementy      17 мая 26 18:32 /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.la -> ../libgegl-0.4.la
-rw-rw-r-- 1 dementy dementy    1053 мая 26 18:32 /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.lai
lrwxrwxrwx 1 dementy dementy      22 мая 26 18:32 /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.so -> libgegl-0.4.so.0.414.0
lrwxrwxrwx 1 dementy dementy      22 мая 26 18:32 /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.so.0 -> libgegl-0.4.so.0.414.0
-rwxrwxr-x 1 dementy dementy 3977112 мая 26 18:32 /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.so.0.414.0
Dementy ()
Ответ на: комментарий от Deleted
ls -l /usr/lib/x86_64-linux-gnu/libgegl*
lrwxrwxrwx 1 root root     22 апр 10 00:10 /usr/lib/x86_64-linux-gnu/libgegl-0.4.so.0 -> libgegl-0.4.so.0.414.0
-rw-r--r-- 1 root root 754864 апр 10 00:10 /usr/lib/x86_64-linux-gnu/libgegl-0.4.so.0.414.0
-rw-r--r-- 1 root root  31096 апр 10 00:10 /usr/lib/x86_64-linux-gnu/libgegl-npd-0.4.so
-rw-r--r-- 1 root root 111416 апр 10 00:10 /usr/lib/x86_64-linux-gnu/libgegl-sc-0.4.so
Dementy ()
Ответ на: комментарий от Dementy

ls -l /usr/lib/x86_64-linux-gnu/libgegl*

Итого: В системе видим три библиотеки.

Сходу заменяем первую:

sudo cp -fv /home/dementy/0000/gegl-0.4/gegl/.libs/libgegl-0.4.so.0.414.0 /usr/lib/x86_64-linux-gnu/

Вывод сюда.

Deleted ()
Ответ на: комментарий от Dementy

-> '/usr/lib/x86_64-linux-gnu/libgegl-0.4.so.0.414.0'

Далее заменяем вторую:

cd ~/0000/gegl-0.4/libs/npd/.libs/
strip libgegl-npd-0.4.so
ls -l libgegl-npd-0.4.so
cp -fv libgegl-npd-0.4.so /usr/lib/x86_64-linux-gnu/

Обрашай внимание на размер. Это должна быть именно либа, а не ссылка.

Deleted ()

Что простому пользователю делать с багом?

Связываться с флетпаками (как, впрочем, и со снапами) не хочу ни как.

Очередной любитель решать несуществующие проблемы.

Polugnom ★★★★★ ()
Ответ на: комментарий от Deleted
~/0000/gegl-0.4$ cd ./seamless-clone/.libs/
~/0000/gegl-0.4/seamless-clone/.libs$ strip libgegl-sc-0.4.so
~/0000/gegl-0.4/seamless-clone/.libs$ ls -l libgegl-sc-0.4.so
-rwxrwxr-x 1 dementy dementy 115496 мая 26 19:32 libgegl-sc-0.4.so
~/0000/gegl-0.4/seamless-clone/.libs$ cp -fv libgegl-sc-0.4.so /usr/lib/x86_64-linux-gnu/
'libgegl-sc-0.4.so' -> '/usr/lib/x86_64-linux-gnu/libgegl-sc-0.4.so'
cp: невозможно удалить '/usr/lib/x86_64-linux-gnu/libgegl-sc-0.4.so': Отказано в доступе
~/0000/gegl-0.4/seamless-clone/.libs$ sudo cp -fv libgegl-sc-0.4.so /usr/lib/x86_64-linux-gnu/
'libgegl-sc-0.4.so' -> '/usr/lib/x86_64-linux-gnu/libgegl-sc-0.4.so'
~/0000/gegl-0.4/seamless-clone/.libs$ 

Вот так.

Dementy ()