LINUX.ORG.RU

Конфликт пакетов MyPaint и GIMP в ArchLinux

 , , ,


3

4

Много лет люди могли одновременно использовать GIMP и MyPaint из официального репозитория Арча. Но недавно всё изменилось. Теперь вы должны выбрать что-то одно. Или собирать один из пакетов самостоятельно, внося некоторые правки.

Всё началось с того, что арчевод не смог собрать GIMP и пожаловался на это разработчикам Гимпа. На что ему ответили, что у всех всё работает, GIMP тут не при чём и что это арчепроблемы. Репорт в багтрекер Арча решил его проблему.

Оказалось, мейнтейнер Арча использовал патч, изменяющий имена некоторых файлов libmypaint. В их числе был файл конфигурации для pkg-config, влияющий на сборку зависящего от libmypaint Гимпа. По заверениям мейнтейнера, сделано это было ненамеренно и после жалобы древний патч был отменён. Однако, после его отмены возник неразрешимый конфликт пакетов libmypaint и MyPaint, ввиду того, что в пакетах есть совпадающие имена файлов.

Виновником этой чудовищной ошибки рекомендуют считать автора MyPaint, некорректно использовавшего свою же библиотеку.

Поговаривают, что после релиза MyPaint 2 проблема разрешится. Но на данный момент вторая версия находится только в стадии альфы. Последний релиз MyPaint 1.2.1 был в январе 2017 и кто знает, сколько придётся ждать до официального релиза второй версии.

Если у вас стоят одновременно GIMP и MyPaint, то теперь вам придётся либо удалить что-то одно, либо добавить опцию IgnorePkg = mypaint в секцию [options] файла /etc/pacman.conf и надеяться, что MyPaint будет продолжать работать до выхода новой версии.

Цитата из комментария другого мейнтейнера:

The fact that we fixed a longstanding bug in our libmypaint package, which caused a conflict with mypaint, is not inherently some sort of bad occurrence, and the fact that mypaint now conflicts against the gimp package's dependencies is not because we hate it or want to drop it to the AUR. It is... simply the unfortunate consequence of bad decisions by the upstream mypaint developers.

anonymous

Проверено: jollheef ()

MyPaint

разве в нормальных дистрах ошибки пакетирования не решаются выпуском корректировочной незначимой версии пакета, типа mypaint-x.y.z-2? проблема не стоит выеденного яйца

anonymous ()

Хоть и арчепроблемы, новость прочитал с интересом. Написана она неплохо. Вот только так и не понял, каким боком виноват разработчик MyPaint.

Больше похоже на косяк мейнтейнеров Арча: запихнули MyPaint вместе с библиотекой в один пакет, в другой - только библиотеку...

На других дистрибутивах почему-то все работает.

Bagrov ★★★★ ()

Как только я когда-то в детстве узнал про иерархию файловой системы Linux, то сразу подумал, что когда-нибудь такое случится, что имена файлов из разных пакетов будут конфликтовать друг с другом. Конец немного предсказуем, так и вышло©

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

На других дистрибутивах почему-то все работает.

Официально заявляю, что Дебиан страдает такой же проблемой.

The following additional packages will be installed:
  libmng1 libmypaint-1.3-0 libmypaint-common
Suggested packages:
  gimp-help-en | gimp-help gimp-data-extras gimp-python
The following packages will be REMOVED:
  mypaint mypaint-data
The following NEW packages will be installed:
  gimp libmng1 libmypaint-1.3-0 libmypaint-common
0 upgraded, 4 newly installed, 2 to remove and 0 not upgraded.
EmergencyHorror ()
Ответ на: комментарий от EmergencyHorror

Cпасибо. Это что же получается, мейнтейнеры make && dpkg-deb --build - и в продакшн?

А вот выхлоп Ubuntu с Gimp:

The following NEW packages will be installed:
  mypaint mypaint-data{a} python-gi-cairo{a} 
0 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Bagrov ★★★★ ()
Последнее исправление: Bagrov (всего исправлений: 3)
Ответ на: комментарий от anonymous

разве в нормальных дистрах ошибки пакетирования не решаются выпуском корректировочной незначимой версии пакета, типа mypaint-x.y.z-2? проблема не стоит выеденного яйца

Да дел на копейку - исправить пару строк в пакбилде и утолкать mypaint в /usr/local А тут аж ужосы о «чудовищной ошибке»(с)

$ pacman -Qs mypaint
local/libmypaint 1.4.0-1
    Library for making brushstrokes which is used by MyPaint and other projects
local/mypaint 1.2.1-9
    Fast and easy painting application for digital painters, with brush dynamics
local/mypaint-brushes 2.0.1-1
    Brushes used by MyPaint and other software using libmypaint
local/mypaint-brushes1 1.3.0-1
    Brushes used by MyPaint and other software using libmypaint (v1.x)
altworld ()

У меня было что-то похожее на debian, когда я только с ним знакомился и по незнанию переключился на sid. Половина мультимедийных пакетов хотели одну версию библиотеки и при её обновлении предлагали удалить часть приложений и наоборот.

grem ★★★★★ ()

Весело...

Виновником этой чудовищной ошибки рекомендуют считать автора MyPaint, некорректно использовавшего свою же библиотеку.

Я так и буду считать.

kirill_rrr ★★★★★ ()

yay mypaint

4 community/mypaint 1.2.1-9 (32.6 MiB 38.6 MiB) Fast and easy painting application for digital painters, with brush dynamics

1 extra/libmypaint 1.4.0-1 (129.6 KiB 970.0 KiB) (Installed) Library for making brushstrokes which is used by MyPaint and other projects

проверка конфликтов... :: mypaint и libmypaint конфликтуют. Удалить libmypaint? [y/N]

Шо это вообще? )

One ★★★ ()

Ого, ни себе чего... Ситуация... С одной стороны всё логично, авторы Майпейнта пишут свою прогу как хотят, они авторы, с другой стороны авторы гимпа,, раз присосались, то надо было как-то договориться?

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

Тогда аноним врёт, или принял мнение неадекватов, написав в новости следующее?

Виновником этой чудовищной ошибки рекомендуют считать автора MyPaint, некорректно использовавшего свою же библиотеку.

Пакетчики из Арча, скорее всего, когда-то столкнулись с проблемой именования билбиотек и решили её по своему. Когда разработчики решили проблему, арчеров никто не предупредил. Теперь же их способ аукнулся. Зачем тогда анонимам носить это в новости? Кто подтверждает такое? Что есть истина? Какой размер вселенной?...

ChekPuk ()

Интересно, дистрибутивы на базе рача будут это фиксить у себя или заплюнут в репозиторий как есть?

Ведь та же Манджаро релизиться позже, есть время обдумать и порешать

CryNet ★★★ ()
Последнее исправление: CryNet (всего исправлений: 1)
Ответ на: комментарий от Polugnom

I don't think this can be fixed for buster, so I'm tagging this -ignore.

Это апрельский комментарий, ещё до выхода buster. Этот тег как раз и поставили, чтобы этот баг не мешал выпуску buster.

Не факт.

Надо будет пнуть сопровождающего.

Rootlexx ()

ТС не умеет писать, а все в треде читать не умеют. Конфликт не гимпа с майпентом, а mypaint со своей же библиотекой libmypaint. Mypaint использовал свою же либу по-уродски

Unfortunately, due to a significant degree of, shall we say, ill design, mypaint includes a copy of libmypaint embedded statically in the application.

потому что не ожидал, что её заюзают в гимпе (там используются кисти из MyPaint).

Теперь оказалось, что и в пакете mypaint и в libmypaint есть одна и та же библиотека libmypaint, которые, естественно конфликтуют друг с другом.

anonymous ()