[РЕШЕНО] ghc-libs зависит от gcc. Это нормально?

Насколько я понимаю, ghc-libs это рантайм библиотеки для программ, написанных на Haskell. Этому пакету действительно требуется gcc в depends (именно в depends, а не в makedepends)? Как это можно проверить? Кажется противоестественным, что каким-то so-шкам требуется компилятор C для работы.
Зависимость появилась недавно см. коммит, но я не нашёл никакой мотивации, зачем это надо.
ghc может работать в роли транслятора haskell_code->c_code, но это объясняло зависимость ghc от gcc, а не ghc-libs от gcc.
Даже если gcc действительно нужен в некоторых случаях, не окажется ли так, что этих случаев довольно мало и имеет смысл делать optdepends.
Вообще из каких соображений зависимость относят к depends или к optdepends, если по смыслу зависимость нужна лишь в каком-то подмножестве вариаций использования пакета? Также из каких соображений определяется, какие из опциональных возможностей при сборке софта enabl-ить? Кажется, что сейчас включают всё, что можно, из-за чего потом тянется много зависимостей. Не рациональнее ли выключить редко используемые возможности и завести какой-нибудь *-full пакет в AUR?
fft
Кажется, что сейчас включают всё, что можно, из-за чего потом тянется много зависимостей. Не рациональнее ли выключить редко используемые возможности и завести какой-нибудь *-full пакет в AUR?
+5120!

UPD: В AUR необязательно, просто сделать их необязательными.
fft
Этому пакету действительно требуется gcc в depends (именно в depends, а не в makedepends)? Как это можно проверить?
[wolf@arch-netbook ~]$ pacman -Si ghc-libs
Репозиторий          : community
Название             : ghc-libs
Версия               : 8.2.2-1
Описание             : The Glasgow Haskell Compiler - Dynamic Libraries
Архитектура          : x86_64
URL                  : http://www.haskell.org/ghc/
Лицензии             : custom
Группы               : Нет
Предоставляет        : haskell-array=0.5.2.0  haskell-base=4.10.1.0  haskell-binary=0.8.5.1  haskell-bytestring=0.10.8.2
                       haskell-containers=0.5.10.2  haskell-deepseq=1.4.3.0  haskell-directory=1.3.0.2  haskell-filepath=1.4.1.2
                       haskell-ghc-boot=8.2.2  haskell-ghc-boot-th=8.2.2  haskell-ghc-compact=0.1.0.0  haskell-ghc-prim=0.5.1.1
                       haskell-haskeline=0.7.4.0  haskell-hoopl=3.10.2.2  haskell-hpc=0.6.0.3  haskell-integer-gmp=1.0.1.0
                       haskell-pretty=1.1.3.3  haskell-process=1.6.1.0  haskell-template-haskell=2.12.0.0  haskell-terminfo=0.4.1.0
                       haskell-time=1.8.0.2  haskell-transformers=0.5.2.0  haskell-unix=2.7.2.2  haskell-xhtml=3000.2.2
                       haskell-cabal=2.0.1.0  haskell-ghci=8.2.2
Зависит от           : gcc  gmp  libffi  perl
Доп. зависимости     : Нет
Конфликтует с        : haskell-ghci
Заменяет             : haskell-array  haskell-base  haskell-binary  haskell-bytestring  haskell-containers  haskell-deepseq
                       haskell-directory  haskell-filepath  haskell-ghc-boot  haskell-ghc-boot-th  haskell-ghc-compact
                       haskell-ghc-prim  haskell-haskeline  haskell-hoopl  haskell-hpc  haskell-integer-gmp  haskell-pretty
                       haskell-process  haskell-template-haskell  haskell-terminfo  haskell-time  haskell-transformers  haskell-unix
                       haskell-xhtml  haskell-cabal
Размер загрузки      : 11,49 MiB
Установленный размер : 98,40 MiB
Сборщик              : Felix Yan <[email protected]>
Дата сборки          : Сб 25 ноя 2017 21:01:05
Проверен             : MD5  SHA-256  Подпись
R.V., насколько я понимаю, не все зависимости можно пометить опциональными. Допустим, есть софт, к-ый может компилиться с опцией -with-ancientlib, а может компилиться без этой опции. Если мы скомпилим с этой опцией, то какой-нибудь бинарник (или библиотека, не суть) этого софта будет зависеть от ancientlib обязательно, без неё софт не запустится, даже если конкретная функциональность не будет затребована (линкер скажет что-то типа undefined symbol...), поэтому добавить в этом случае ancientlib в depends придётся. Ну а если компилить без этой опции, то функциональность, обеспечиваемая ancientlib, будет недоступна.
RusWolf, спасибо, но вопрос был не в том, что написано в требованиях к пакету, а в том, почему это написано.
fft
но вопрос был не в том, что написано в требованиях к пакету, а в том, почему это написано.
Я вроде процетировал, конкретно. Там в цитате видно на что я ответил :)
fft
R.V., насколько я понимаю,
Это был просто "крик души" про слишком много зависимостей во многих пакетах. Они не все обязательные на самом деле. Но чтобы изменить политику Арча в этом плане, это не на этот форум нужно писать. Здесь можно только собрать единомышленников и совместно "пожаловаться" в https://bbs.archlinux.org/...

P.S. Кому-то тут было очень смешно, когда я хотел избавиться от gcc, а кого-то уже недавно взломали. С кучей разного барахла Арч не может считаться "сделай сам то, что ты хочешь". Зависимостей должно быть как можно меньше. Иначе, это ограничение свободы и уменьшение безопасности системы.
Да возьмите вы в конце-то концов нужные PKGBUILDы, отредактируйте с теми зависимостями, которые, как вы считаете, нужны, скомпилируйте и наслаждайтесь "свободой и безопасностью".
Так не очень удобно поддерживать свой набор PKGBUILD-ов, да и компиляция дольше, чем установка собранных пакетов. Это ближе к gentoo-way, с USE-флагами насколько я понимаю, будет.

Пока моё предположение в том, что gcc добавили в зависимости по ошибке и я хочу понять, так ли это.

Избавление от лишних зависимостей это скорее не столько про свободу, сколько про минимализм.
Стоит иногда не ворчать на форуме, а сходить в репозиторий и посмотреть, что там происходит.
Зависимость gcc уже давно перенесли в пакет ghc (2017-12-24), просто пока сам пакет не пересобирали.
Обсуждение яйца выеденного не стоит.
kurych, точнее поменяли шило на мыло :) GCC убрали из зависимостей динамических либ и добавили в зависимости самого ghc, что достаточно логично, но ТС именно ЭТО и беспокоит, исходя из первого поста и ссылки :) , а R.V. как истовый борец за безопасность Archa путем сведения всего дистра к одной исполняемой программе без зависимостей решил не упустить момента )))
Скорлупа таки дороже :)
С другой стороны: а поговорить?
 
Зарегистрироваться или войдите чтобы оставить сообщение.