LINUX.ORG.RU

Не допустить установку rust в gentoo

 , , ,


0

2

Огорчает, что теперь наличие rust в десктопе становится практически неизбежным.

Графический браузер требует gtk+. Поскольку x11-libs/gtk+ зависит от gnome-base/librsvg, а последняя зависит от rust, то это всё придется установить. Таким образом, если хотите использовать браузер (хотя бы даже и распаковкой архива с firefox), то, кажется, в любом случае придется иметь rust.

1 - Можно ли избежать установки rust в любой его форме (dev-lang/rust, dev-lang/rust-bin, virtual/rust).

2 - Если нет, то какой наиболее минималистичный вариант?

А ты разве Gentoo поставил не для того чтобы компилировать денно и нощно?

1 - Можно ли избежать установки rust в любой его форме (dev-lang/rust, dev-lang/rust-bin, virtual/rust).

Конечно! Просто замаскируй их.

2 - Если нет, то какой наиболее минималистичный вариант?

Ubuntu.

hateyoufeel ★★★★★ ()
  1. Нельзя
  2. Не использовать пакеты, зависящие, например, от librsvg.

Есть вариант:
перестать страдать хернёй, поставить rust-bin и забыть о нём. По крайней мере он не привязан к версии llvm

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

Можно ли избежать установки rust в любой его форме

К сожалению, нет.

Если нет, то какой наиболее минималистичный вариант?

rust-bin конечно. собирать rust из исходников дольше, чем браузер.

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

Не, я ещё могу понять хейтерство раста с т.з. программирования на нём... Ибо холиворы о ЯП (рабочем инструменте) среди кодеров вечны

Огорчает, что теперь наличие rust в десктопе становится практически неизбежным.

Но не по**й ли тебе, что там в кишках у десктопных программ?! Главное, чтоб работали

Crocodoom ★★★★ ()

Меня больше qtwebengine парит, хотя он нужен жёстко только для texmaker, и, опционально, для kdenlive.
В portage.mask указываешь что-то вроде

>dev-qt/qtwebengine-5.15.1

И можно на время забыть про него. Как пример.

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

Зависит от него ровно ничего, да еще меньше, поэтому компилять этот стильно-модно-молодежный нет смысла. Благо всем это и так понятно, потому есть dev-lang/rust-bin. Для хардкорщиков - можно маскирануть. Авось не сломается. Хотя это плохой вариант.

Кстати, тут, когда только прилетело, обсуждали и пришли к выводу, что firefox без раста пока работает, но вот если у тебя есть хотя бы гимп или либра, то придется растоманить.

gill_beits ★★★★ ()

Ну у меня нет никакого руста.

dev-lang/rust
dev-lang/rust-bin

эта хрень замаскирована.

gnome-base/librsvg толи удалена вообще, толи установлена последняя версия не требующая руст. А чтобы новые версии не лезли, добавил в файл:

echo "gnome-base/librsvg-2.48.8" >> /etc/portage/profile/package.provided

Вот и всё. А поскольку файрфокс давно скатился в говно, юзаю ungoogled-chromium. Соответственно никаких проблем с рустом и файрфоксом больше нет.

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

gnome-base/librsvg толи удалена вообще, толи установлена последняя версия не требующая руст

Скорее всего она удалена, поскольку в портаже последняя версия — 2.48.9, и она требует rust. В любом случае, каким образом тогда установлена x11-libs/gtk+, которая зависит от librsvg?

Соответственно никаких проблем с рустом и файрфоксом больше нет.

x11-libs/gtk+ требуется не только для firefox, но я для прочих графических браузеров, а так же и для разных графических програм.

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

можно маскирануть

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

# emerge –oneshot –jobs x11-libs/gtk+ Calculating dependencies… done!

!!! All ebuilds that could satisfy «~dev-lang/rust-1.48.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]» have been masked. !!! One of the following masked packages is required to complete your request: - dev-lang/rust-1.48.0::gentoo (masked by: package.mask)

(dependency required by «virtual/rust-1.48.0::gentoo» [ebuild]) (dependency required by «gnome-base/librsvg-2.48.9::gentoo» [ebuild]) (dependency required by «x11-themes/adwaita-icon-theme-3.36.1-r1::gentoo» [ebuild]) (dependency required by «x11-libs/gtk+-3.24.22::gentoo» [ebuild]) (dependency required by «x11-libs/gtk+» [argument]) For more information, see the MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook.

firefox без раста пока работает

Да, работает. Но не firefox тянет rust, его тянет x11-libs/gtk+ опосредованно через librsvg.

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

значит так: librsvg установлена:

gnome-base/librsvg-2.40.21::gentoo was built with the following:
USE="-introspection -tools -vala" ABI_X86="32 (64) (-x32)"

Но в package.provided указано, что gnome-base/librsvg-2.48.8 установлена, чтобы не надоедал, что надо обновить.

Ungoogled-chromium, как и Gimp, как и LibreOffice используется AppImage.

Опера, кстати работает тоже, хотя и установлена из дерева портедж.

Ну ещё используется из gtk-шного GParted, тоже работает.

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

А почему не надо её обновлять?

потому, что старая librsvg-2.40.21 не требует руст, а если захочешь обновишь его до версии 2.48.8, так сразу потребуется руст для этой версии (руст прописан в зависимостях для librsvg-2.48.8).

Поэтому по факту у меня стоит librsvg-2.40.21, а систему я обманул, сказав, что librsvg-2.48.8 у нас уже установлена (через упоминание в package.provided) и обновлять её не надо

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

Судя по всему, убран в профиле. У меня выхлоп equery вот такой сейчас:

equery u qt-creator
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for dev-qt/qt-creator-9999:
 U I
 - - android        : Build plugin for Android devices 
 + - autotest       : Enable integration with popular unit testing frameworks
                      (QtTest, Google Test, Boost.Test) 
 - - autotools      : Build plugin for autotools-based projects 
 - - baremetal      : Build plugin for bare metal devices 
 - - bazaar         : Add support for GNU Bazaar version control system
                      (requires manual installation of Bazaar client) 
 - - beautifier     : Build the beautifier plugin (supports astyle,
                      clang-format, and uncrustify) 
 - - boot2qt        : Build plugin for Boot2Qt devices 
 - - clearcase      : Add support for IBM ClearCase version control system
                      (requires manual installation of ClearCase client) 
 - - cmake          : Build plugin for CMake-based projects 
 - - cppcheck       : Enable integration with dev-util/cppcheck
 - - ctfvisualizer  : Build the Chrome Trace Format visualizer plugin 
 - - cvs            : Enable CVS (Concurrent Versions System) integration
 + - designer       : Enable designer for QtWidgets-based UIs 
 - - doc            : Add extra documentation (API, Javadoc, etc). It is
                      recommended to enable per package instead of globally
 + - git            : Enable git (version control system) support
 - - glsl           : Build the GLSL editor plugin 
 + - help           : Enable the integrated documentation viewer 
 - - l10n_cs        : Czech
 - - l10n_da        : Danish
 - - l10n_de        : German
 - - l10n_fr        : French
 - - l10n_ja        : Japanese
 - - l10n_pl        : Polish
 + + l10n_ru        : Russian
 - - l10n_sl        : Slovenian
 - - l10n_uk        : Ukrainian
 - - l10n_zh-CN     : Chinese (China)
 - - l10n_zh-TW     : Chinese (Taiwan)
 - - lsp            : Add support for the Language Server Protocol (LSP) 
 - - mcu            : Build plugin for MCU devices 
 - - mercurial      : Add support for dev-vcs/mercurial version control system
 - - modeling       : Build the graphical model editor plugin 
 - - nim            : Build plugin for Nim language support 
 - - perforce       : Add support for Perforce version control system (requires
                      manual installation of Perforce client) 
 - - perfprofiler   : Build the Linux Perf-based profiler plugin 
 - - python         : Build plugin for Python language support 
 - - qbs            : Build plugin for QBS-based projects 
 + - qmldesigner    : Enable designer for QML/QtQuick-based UIs 
 + - qmljs          : Build the QML/JavaScript editor plugin 
 - - qmlprofiler    : Build the QML profiler plugin 
 - - qnx            : Build plugin for QNX devices 
 - - remotelinux    : Add support for deployment and execution on a remote
                      Linux host 
 - - scxml          : Build the graphical SCXML editor plugin 
 - - serialterminal : Build the serial terminal plugin 
 - - silversearcher : Enable integration with sys-apps/the_silver_searcher
 - - subversion     : Enable subversion (version control system) support
 - - systemd        : Add support for retrieving application output from
                      journald 
 - - test           : Enable dependencies and/or preparations necessary to run
                      tests (usually controlled by FEATURES=test but can be
                      toggled independently)
 - - valgrind       : Enable integration with dev-util/valgrind
 - - webassembly    : Build WebAssembly plugin 
 - - webengine      : Use dev-qt/qtwebengine to view documentation

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

Если сделать emerge -pv qt-creator, то

emerge -pv qt-creator

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

Calculating dependencies... done!
[ebuild   R    ] dev-qt/qt-creator-4.12.3::gentoo  USE="autotest designer git help qmldesigner -android -baremetal -beautifier -boot2qt (-clang*) -clearcase -cmake -cppcheck -ctfvisualizer -cvs -doc -glsl -ios -lsp -mcu -mercurial -modeling -nim -perforce -perfprofiler -python -qbs -qmlprofiler -qnx -remotelinux -scxml -serialterminal -silversearcher -subversion -systemd -test -valgrind -webassembly -webengine -winrt" L10N="ru -cs -da -de -fr -ja -pl -sl -uk -zh-CN -zh-TW" 33 547 KiB

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

Блин, а проблема-то намного хуже:

equery d librsvg
 * These packages depend on librsvg:
app-text/djvu-3.5.27-r2 (gnome-base/librsvg)
app-text/evince-3.36.7 (gnome-base/librsvg)
media-gfx/gimp-2.10.20-r3 (>=gnome-base/librsvg-2.40.6:2)
media-gfx/graphviz-2.44.1-r1 (svg ? gnome-base/librsvg)
media-gfx/imagemagick-7.0.10.41-r1 (svg ? gnome-base/librsvg)
media-libs/gegl-0.4.26-r1 (svg ? >=gnome-base/librsvg-2.40.6:2)
media-video/ffmpeg-4.3.1 (svg ? gnome-base/librsvg:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
x11-libs/gtk+-2.24.32-r1 (gnome-base/librsvg[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
x11-libs/gtk+-3.24.22 (gnome-base/librsvg[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
x11-themes/adwaita-icon-theme-3.36.1-r1 (>=gnome-base/librsvg-2.48:2)
При том, что от педеrust'а зависит исключительно librsvg! Сто акул в задницу ее разрабам криворуким!!!

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

Ставь бинарный firefox

Сказано же: если хотите использовать браузер (хотя бы даже и распаковкой архива с firefox), то, кажется, в любом случае придется иметь rust.

У меня вообще firefox из архива арспакованный, а не из репо.

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

С чего бы вдруг?

А вот наличие в системе педеrust’а, пытхона и всяких культяпок очень сильно раздражает! Хочется, чтобы система полностью была в твоих руках и не содержала говна. А не выходит, к сожалению.

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

Привет Эдди

Запили свою более лучшую библиотеку для svg на провославной сишечке, продвинь её в гтк+ и избавься от раста! Всё в твоих руках! А, подожди, ты только потребляешь и раздражаешься?

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

А вот наличие в системе педеrust’а, пытхона и всяких культяпок очень сильно раздражает! Хочется, чтобы система полностью была в твоих руках и не содержала говна. А не выходит, к сожалению.

Вот поэтому Gentoo говно. Есть только пару православных: LFS, CRUX, KISS (Dbus правда, нет и musl во все поля. Так что десктоп уж совсем для минималистов).

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

Но не по**й ли тебе, что там в кишках у десктопных программ?! Главное, чтоб работали

На gentoo - не по**й, потому что обновления на раст выходят очень часто, требуя пересобирать его по 5-8 часов после каждого обновления. А потом еще и всех, кто от него зависит.

PPP328 ★★★★ ()