LINUX.ORG.RU

Гибкость gentoo - миф?

 , ,


0

1

Не наброса ради, а понимания для.

Опустим форсирование включения кучи возможных LLVM_TARGETS, надо так надо.

Решил попробовать перейти на Gentoo, смутно озонавая, что USE хорошо, можно отрезать все лишнее и вообще. Поставил базу, начал обвешивать свистелками.

Я сторонник минимума, поэтому попробовал поставить pcmanfm-qt. А мне предлагается затянуть по зависимостям вот это:


These are the packages that would be merged, in order:

Calculating dependencies  ... done!
[ebuild  N     ] dev-libs/lzo-2.10:2::gentoo  USE="(split-usr) -examples -static-libs" 587 KiB
[ebuild  N     ] media-fonts/liberation-fonts-2.1.5::gentoo  USE="-X -fontforge" 2,330 KiB
[ebuild  N     ] dev-libs/libatomic_ops-7.6.14::gentoo  489 KiB
[ebuild  N     ] virtual/ttf-fonts-1-r2::gentoo  0 KiB
[ebuild  N     ] dev-libs/gobject-introspection-common-1.74.0::gentoo  1,020 KiB
[ebuild  N     ] dev-libs/vala-common-0.56.3::gentoo  3,877 KiB
[ebuild  N     ] x11-themes/hicolor-icon-theme-0.17::gentoo  52 KiB
[ebuild  N     ] media-libs/libpng-1.6.39:0/16::gentoo  USE="-apng -static-libs" CPU_FLAGS_X86="sse" 997 KiB
[ebuild  N     ] app-eselect/eselect-fontconfig-20220403::gentoo  2 KiB
[ebuild  N     ] dev-util/glib-utils-2.74.4::gentoo  PYTHON_SINGLE_TARGET="python3_10 -python3_8 -python3_9 -python3_11" 5,087 KiB
[ebuild  NS    ] app-text/docbook-xml-dtd-4.3-r2:4.3::gentoo [4.1.2-r7:4.1.2::gentoo, 4.2-r3:4.2::gentoo, 4.4-r3:4.4::gentoo, 4.5-r2:4.5::gentoo] 82 KiB
[ebuild  N     ] media-gfx/graphite2-1.3.14_p20210810-r2::gentoo  USE="-perl -test" 6,501 KiB
[ebuild  N     ] dev-libs/double-conversion-3.2.1:0/3::gentoo  USE="-test" 6,868 KiB
[ebuild  N     ] dev-libs/fribidi-1.0.12::gentoo  USE="-doc -test" 1,128 KiB
[ebuild  N     ] virtual/perl-File-Path-2.180.0-r1::gentoo  0 KiB
[ebuild  N     ] sys-apps/lsb-release-3.2::gentoo  16 KiB
[ebuild  N     ] dev-perl/IPC-System-Simple-1.300.0::gentoo  USE="-test" 32 KiB
[ebuild  N     ] dev-perl/File-BaseDir-0.90.0::gentoo  USE="-test" 22 KiB
[ebuild  N     ] media-libs/freetype-2.12.1-r1:2::gentoo  USE="adobe-cff bzip2 cleartype-hinting png -X -brotli -debug -doc -fontforge -harfbuzz (-infinality) -static-libs -svg -utils" 2,414 KiB
[ebuild  N     ] x11-libs/xcb-util-renderutil-0.3.10::gentoo  256 KiB
[ebuild  N     ] x11-libs/xcb-util-keysyms-0.4.1::gentoo  254 KiB
[ebuild  N     ] x11-libs/xcb-util-wm-0.4.2::gentoo  279 KiB
[ebuild  N     ] x11-apps/xprop-1.2.5::gentoo  148 KiB
[ebuild  N     ] x11-apps/xset-1.2.4-r1::gentoo  143 KiB
[ebuild  N     ] dev-perl/File-DesktopEntry-0.220.0-r1::gentoo  USE="-test" 18 KiB
[ebuild  N     ] media-libs/libexif-0.6.24::gentoo  USE="nls -doc" 1,946 KiB
[ebuild  N     ] dev-libs/boehm-gc-8.2.2-r1::gentoo  USE="large threads -cxx -static-libs" 1,172 KiB
[ebuild  N     ] x11-libs/libXcomposite-0.4.5::gentoo  USE="-doc" 310 KiB
[ebuild  N     ] x11-libs/libXcursor-1.2.1::gentoo  USE="-doc" 274 KiB
[ebuild  N     ] x11-libs/libXdamage-1.1.5::gentoo  297 KiB
[ebuild  N     ] x11-libs/libXi-1.8::gentoo  USE="-doc" 483 KiB
[ebuild  N     ] app-eselect/eselect-rust-20210703::gentoo  5 KiB
[ebuild  N     ] media-libs/fontconfig-2.14.0-r1:1.0::gentoo  USE="-doc -static-libs -test" 1,398 KiB
[ebuild  N     ] www-client/w3m-0.5.3_p20220429::gentoo  USE="nls ssl unicode -X -fbcon -gdk-pixbuf -gpm -imlib -lynxkeymap -nntp -xface" L10N="-ja" 2,259 KiB
[ebuild  N     ] dev-lang/rust-1.65.0:stable/1.65::gentoo  USE="-clippy -debug -dist -doc (-llvm-libunwind) (-miri) (-nightly) (-parallel-compiler) (-profiler) -rust-analyzer -rust-src -rustfmt (-system-bootstrap) (-system-llvm) -test -verify-sig -wasm" CPU_FLAGS_X86="sse2" LLVM_TARGETS="AMDGPU (X86) -AArch64 -ARM -AVR -BPF -Hexagon -Lanai -MSP430 -Mips -NVPTX -PowerPC -RISCV -Sparc -SystemZ -WebAssembly -XCore" 294,529 KiB
[ebuild  N     ] virtual/w3m-1::gentoo  0 KiB
[ebuild  N     ] virtual/rust-1.65.0-r1:0/llvm-15::gentoo  USE="-rustfmt" 0 KiB
[ebuild  N     ] dev-libs/glib-2.74.4:2::gentoo  USE="elf mime xattr -dbus -debug -gtk-doc (-selinux) -static-libs -sysprof -systemtap -test -utils" 0 KiB
[ebuild  N     ] x11-misc/shared-mime-info-2.2::gentoo  USE="-test" 6,899 KiB
[ebuild  N     ] dev-util/desktop-file-utils-0.26-r2::gentoo  USE="-emacs" 82 KiB
[ebuild  N     ] dev-qt/qtcore-5.15.7:5/5.15.7::gentoo  USE="-debug -icu -old-kernel -systemd -test" 49,866 KiB
[ebuild  N     ] x11-libs/cairo-1.17.6::gentoo  USE="X glib (-aqua) (-debug) (-gles2-only) -gles3 -gtk-doc -opengl -test" 42,676 KiB
[ebuild  N     ] dev-perl/File-MimeInfo-0.300.0::gentoo  USE="-test" 36 KiB
[ebuild  N     ] dev-util/lxqt-build-tools-0.12.0::gentoo  25 KiB
[ebuild  N     ] dev-qt/qtdbus-5.15.7:5/5.15::gentoo  USE="-debug -test" 0 KiB
[ebuild  N     ] dev-qt/qtxml-5.15.7:5/5.15::gentoo  USE="-debug -test" 0 KiB
[ebuild  N     ] dev-qt/linguist-tools-5.15.7:5::gentoo  USE="-debug -qml -test" 8,694 KiB
[ebuild  N     ] dev-util/gdbus-codegen-2.74.4::gentoo  PYTHON_SINGLE_TARGET="python3_10 -python3_8 -python3_9 -python3_11" 0 KiB
[ebuild   R    ] app-text/xmlto-0.0.28-r10::gentoo  USE="text* -latex" 0 KiB
[ebuild  N     ] x11-misc/xdg-utils-1.1.3_p20210805-r1::gentoo  USE="-dbus -doc -gnome" 287 KiB
[ebuild  N     ] dev-libs/gobject-introspection-1.74.0::gentoo  USE="-doctool -gtk-doc -test" PYTHON_SINGLE_TARGET="python3_10 -python3_8 -python3_9 -python3_11" 0 KiB
[ebuild  N     ] x11-libs/libxkbcommon-1.4.1::gentoo  USE="X -doc -static-libs -test -tools -wayland" 461 KiB
[ebuild  N     ] media-libs/harfbuzz-5.3.1-r1:0/4.0.0::gentoo  USE="cairo glib graphite introspection truetype -debug -doc -experimental -icu -test" 17,456 KiB
[ebuild  N     ] x11-libs/gdk-pixbuf-2.42.10-r1:2::gentoo  USE="introspection -gtk-doc -jpeg -test -tiff" 6,367 KiB
[ebuild  N     ] app-accessibility/at-spi2-core-2.46.0:2::gentoo  USE="introspection -X -gtk-doc -test" 528 KiB
[ebuild  N     ] dev-lang/vala-0.56.3:0.56::gentoo  USE="-test -valadoc" 0 KiB
[ebuild  N     ] dev-util/gtk-update-icon-cache-3.24.31::gentoo  91 KiB
[ebuild  N     ] x11-libs/pango-1.50.12::gentoo  USE="introspection -X -debug -sysprof -test" 4,173 KiB
[ebuild  N     ] gnome-base/librsvg-2.55.1:2::gentoo  USE="introspection vala -debug -gtk-doc" 31,455 KiB
[ebuild  N     ] lxde-base/lxmenu-data-0.1.5::gentoo  195 KiB
[ebuild  N     ] x11-libs/libfm-extra-1.3.2:0/5.3.1::gentoo  1,265 KiB
[ebuild  N     ] lxde-base/menu-cache-1.1.0-r1:0/2::gentoo  260 KiB
[ebuild  N     ] x11-libs/xcb-util-0.4.0-r2::gentoo  291 KiB
[ebuild  N     ] x11-libs/xcb-util-image-0.4.1::gentoo  283 KiB
[ebuild  N     ] x11-libs/xcb-util-cursor-0.1.4::gentoo  260 KiB
[ebuild  N     ] dev-qt/qtgui-5.15.7:5/5.15.7::gentoo  USE="X libinput png udev -accessibility -dbus -debug -egl -eglfs -evdev -gles2-only -ibus -jpeg -linuxfb -test -tslib -tuio -vnc -vulkan -wayland" 0 KiB
[ebuild  N     ] dev-qt/qtwidgets-5.15.7:5/5.15::gentoo  USE="X png -dbus -debug -gles2-only -gtk -test" 0 KiB
[ebuild  N     ] dev-qt/qtx11extras-5.15.7:5/5.15::gentoo  USE="-debug -test" 143 KiB
[ebuild  N     ] x11-libs/libfm-qt-1.2.0:0/7::gentoo  377 KiB
[ebuild  N     ] x11-libs/gtk+-3.24.35:3::gentoo  USE="X introspection (-aqua) -broadway -colord -cups -examples -gtk-doc -sysprof -test -vim-syntax -wayland -xinerama" 17,494 KiB
[ebuild  N     ] x11-themes/adwaita-icon-theme-43_p1::gentoo  USE="-branding" 26,880 KiB
[ebuild  N     ] virtual/freedesktop-icon-theme-0-r4::gentoo  0 KiB
[ebuild  N     ] x11-misc/pcmanfm-qt-1.2.0::gentoo  345 KiB

Total: 73 packages (71 new, 1 in new slot, 1 reinstall), Size of downloads: 552,137 KiB

В make.conf у меня

VIDEO_CARDS="amdgpu"
LLVM_TARGETS="AMDGPU X86"
INPUT_DEVICES="libinput"
USE="-ipv6 -man -debug -accessibility -policykit -samba -telemetry -systemd -bluetooth -wayland -cups -examples -gtk -gtk-doc -gnome"

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

Но что? Как может Qt прога тащить gtk, да еще и вон виртуальный пакет w3m затесался. Это же ни в какие ворота недопустимо.

@grem

★★★★★

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

Есть такой момент - тоже отмечаю что гентушные пакеты зачастую просят зависимости которые ну нафиг не нужны. Ну просто стоит у меинтейнера ЭТО - и заподло ему разбираться в том действительно ли это прям нужно или можно и обойтись. Но тут увы - в отличии от коммерческой шляпы тут все делается энтузиастами за просто так, поэтоу претензии предъявлять увы совесть не позволяет.

Поэтому сделал свой оверлей - гента это позволяет. КОпирую туда ебилд с ненужными зависимостями, даю ему индекс -r99 чтобы по версии выходил в приоритете и удаляю из ебилда искусственные зависимости.

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

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

зачастую просят зависимости которые ну нафиг не нужны. Ну просто стоит у меинтейнера ЭТО

Чаще скорее наоборот бывает, особенно для новых пакетов, и отлавливается это в tinderbox, например, когда что-то не учёл добавить в зависимости. То есть для минимальной чистой системы там устанавливаются зависимости и запускается попытка собрать пакет..

Возможно, что добавляют обязательной зависимостью, когда лень объявлять это через optfeature.

А в сторонних оверлеях видел, что добавляют вызов утилиты, но забывают добавить её в зависимости. Хотя и без неё сборка идёт стандартными средствами.

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

Да - и такое бывает.

Еще приходится играться с маскированием пакетов - меня особо напрягает сейчас втаскивание новых версий llvm которые нужны для новых версий чего-то там еще, но ими нельзя собрать чертову мезу - и получается хочешь собрать из коробки - держи у себя штук 5 llvm стеков и пару версий gcc что не то чтобы подбешивает а жестко бесит.

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

Но тут увы - если не хочешь жрать чо дали и нахваливать - учись готовить себе сам. А если не хочешь учиться готовить - то жри чо дали и нахваливай. Генту в какой то мере позволяет и то и другое - можно не сильно напрягаясь (несмотря на миф о сложности генту) ставить систему как для всех, с кучей непонятных пакетов. А можно напрячь мозги и собрать так как тебе надо.

Qui-Gon ★★★★★
()
12 января 2024 г.

gentoo - лучший дистрибутив, ну так считают исключительно те кто не лошпед, и умеет работать руками/компилятором, а всех остальных переведём на роутеры ASUS с IPv6

loveFX
()