LINUX.ORG.RU

Баг при обновлении/установке Shotwell

 , ,


0

1

Пользуюсь Shotwell в качестве каталогизатора картинок. На днях прилетела обнова до версии 0.30.15. При попытке сборки имеем баг такого вида:

Emerging (9 of 9) media-gfx/shotwell-0.30.15::gentoo
 * shotwell-0.30.15.tar.xz BLAKE2B SHA512 size ;-) ...                   [ ok ]
 * Checking whether python3_10 is suitable ...
 *   >=dev-lang/python-3.10.0_p1-r1:3.10 ...                             [ ok ]
 * Using python3.10 to build (via PYTHON_COMPAT iteration)
>>> Unpacking source...
>>> Unpacking shotwell-0.30.15.tar.xz to /var/tmp/portage/media-gfx/shotwell-0.30.15/work
>>> Source unpacked in /var/tmp/portage/media-gfx/shotwell-0.30.15/work
>>> Preparing source in /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15 ...
 * Applying 0.30.15-opencv4-compatibility.patch ...                      [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15 ...
meson setup --libdir lib64 --localstatedir /var/lib --prefix /usr --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path /var/tmp/portage/media-gfx/shotwell-0.30.15/temp/pkgconfig:/var/tmp/portage/media-gfx/shotwell-0.30.15/temp/python3.10/pkgconfig:/usr/share/pkgconfig --pkg-config-path /var/tmp/portage/media-gfx/shotwell-0.30.15/temp/pkgconfig:/var/tmp/portage/media-gfx/shotwell-0.30.15/temp/python3.10/pkgconfig:/usr/share/pkgconfig --native-file /var/tmp/portage/media-gfx/shotwell-0.30.15/temp/meson.x86_64-pc-linux-gnu.amd64.ini -Db_pch=false -Dwerror=false --buildtype plain -Dunity-support=false -Dextra-plugins=true -Ddupe-detection=true -Dudev=true -Dinstall-apport-hook=false -Dface-detection=false -Dfatal_warnings=false /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15 /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15-build
The Meson build system
Version: 0.62.2
Source dir: /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15
Build dir: /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15-build
Build type: native build
Project name: shotwell
Project version: 0.30.15
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 11.3.0 "x86_64-pc-linux-gnu-gcc (Gentoo 11.3.0 p4) 11.3.0")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.38
Vala compiler for the host machine: /usr/bin/valac-0.56 (valac 0.56.1)
Host machine cpu family: x86_64
Host machine cpu: x86_64
Configuring config.h using configuration
Found pkg-config: /usr/bin/x86_64-pc-linux-gnu-pkg-config (1.8.0)
Run-time dependency gtk+-3.0 found: YES 3.24.34
Run-time dependency gio-2.0 found: YES 2.72.2
Run-time dependency gmodule-2.0 found: YES 2.72.2
Run-time dependency gio-unix-2.0 found: YES 2.72.2
Run-time dependency gee-0.8 found: YES 0.20.5
Run-time dependency webkit2gtk-4.0 found: YES 2.36.3
Run-time dependency libsoup-2.4 found: YES 2.74.2
Run-time dependency json-glib-1.0 found: YES 1.6.6
Run-time dependency libxml-2.0 found: YES 2.9.14
Run-time dependency gdk-3.0 found: YES 3.24.34
Run-time dependency gdk-pixbuf-2.0 found: YES 2.42.8
Run-time dependency sqlite3 found: YES 3.38.5
Run-time dependency gstreamer-1.0 found: YES 1.20.2
Run-time dependency gstreamer-pbutils-1.0 found: YES 1.20.2
Run-time dependency libgphoto2 found: YES 2.5.29
Run-time dependency gudev-1.0 found: YES 237
Run-time dependency gexiv2 found: YES 0.14.0
Run-time dependency libraw found: YES 0.20.2
Run-time dependency libexif found: YES 0.6.24
Found CMake: /usr/bin/cmake (3.23.2)
WARNING: CMake Toolchain: Failed to determine CMake compilers state
Run-time dependency unity found: NO (tried pkgconfig and cmake)
Run-time dependency gdk-x11-3.0 found: YES 3.24.34
Run-time dependency gdk-wayland-3.0 found: NO (tried pkgconfig and cmake)

meson.build:67:0: ERROR: Dependency "gdk-wayland-3.0" not found, tried pkgconfig and cmake

То есть, при сборке ему нужна обязательная зависимость от установленной gdk-wayland.

USE="bash-completion elogind gtk3 mp3 pulseaudio qt5 symlink wavpack
     -bluetooth -fortran -gpm -systemd -systemd-units -wayland
     -wayland-compositor"
, то есть, не учитывается состояние use-флагов.

Upd. В багзилле Генту заведен багрепорт и выпущен еще непринятый патч.

★★★★★

Последнее исправление: LongLiveUbuntu (всего исправлений: 3)

Где ты видишь флаг wayland у пакета shotwell? Каким магическим образом он должен учесть этот флаг? Ну и да, если он не подтянул gtk[wayland] по зависимостям, и из за этого закрашилась сборка, то это баг в ебилде, шли его на багзиллу.

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

Ну и да, если он не подтянул gtk[wayland] по зависимостям, и из за этого закрашилась сборка, то это баг в ебилде, шли его на багзиллу.

Он не должен хотеть gdk-wayland никоим образом, если флаг wayland в состоянии «выкл». А он хочет. Это явно баг в ебилде.

LongLiveUbuntu ★★★★★
() автор топика

Вполне ожидаемая ситуация, GDK подзавязывают на Wayland, а иксы депрекейтят и постепенно выкидывают. Скоро всё больше и больше библиотек будут требовать подвязку на libwayland.

Чтобы не иметь проблем в будущем, можно убрать -wayland, но всё равно остаться на иксах.

Ну или ждать патчей на подобные ебилды.

EXL ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

Он не должен хотеть gdk-wayland никоим образом

Ну как это не должен? А если у него зависимость от вейланда неотключаемая, думаешь флаг должен как то влиять? В любом случае, если флаг не упомянут в IUSE ебилда, он никак не влияет на этот ebuld.

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

А если у него зависимость от вейланда неотключаемая,

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

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

Я в общем случае говорю. Не бывает такого, чтобы сделал -foo в USE и магическим образом foo не будет никем подтянута в систему. Вполне может существовать пакет, который зависит от foo безусловно и будет подтягивать его независимо от того, какие флаги ты выставишь.

В данном же случае действительно присутствует баг в ебилде, но не до конца понятно какой именно. Вполне может быть и неотключаемая зависимость, почему бы и нет.

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

В данном же случае действительно присутствует баг в ебилде, но не до конца понятно какой именно. Вполне может быть и неотключаемая зависимость, почему бы и нет.

Ну так о чём и речь, есть баг - в виде неотключаемой зависимости.

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

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 3)
Ответ на: комментарий от eternal_sorrow

Тогда нафига сразу два gdk-x11 и gdk-wayland? Это всякие VsCode ставят сразу по два бинарника на всякий пожарный, тут-то сборку можно контролировать. Или нельзя?

LongLiveUbuntu ★★★★★
() автор топика
Ответ на: комментарий от LongLiveUbuntu

Ну что тут скажешь, апстрим отморозился, тут только убеждать мэйнтэйнеров в генте в том что conditional patching(который в генте не любят) будет добром.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)

Писать против ветра становится всё сложнее и сложнее, да. Лично я перестал когда в KDE появилась невыпиливаемая зависимость от wayland. Жить в иксовом сеансе эта зависимость совершенно не мешала. А сейчас я перестал бояться и полюбил атомную бомбу переехал в сеанс wayland.

Предполагаю что скоро я столь же ненавязчиво и добровольно-принудительно возлюблю systemd. Знаю что многие гентушники уже.

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 1)