LINUX.ORG.RU

Gentoo, USE-флаги и зависимости пакетов. Правильно ли я делаю?


1

2

Решил на выходных поделать первые шаги в использовании Gentoo. Базовую систему установил по хендбуку без проблем, перезагрузился. Теперь хочу начать ставить прикладной софт. Хочу поставить wicd, делаю:

emerge --pretend wicd

И получаю километры зависимостей, тянущие за собой Qt, Gtk+, CUPS и т.д. Я же хочу настроить себе по возможности минималистичную среду, с преобладанием консольных интерфейсов.

Насколько я понимаю, наиболее правильный вариант, это внимательно изучать USE-флаги самого пакета и его зависимостей, а затем пополнять список /etc/portage/package.use минусующими флагами для этих пакетов. Или есть более простой способ?

★★

А нужно

Посмотрел какие там флаги:

equery u net-misc/wicd
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for net-misc/wicd-1.7.2.4-r2:
 U I
 + + X         : Adds support for X11
 - - ambiance  : Install icons from Ubuntu's ambiance theme
 + + gtk       : Installs a gtk UI. This is enabled by default because it is intended behavior. Requires dev-python/pygtk
 + + libnotify : Enable desktop notification support
 - - mac4lin   : Change default icons to mac4lin icon set
 + + ncurses   : Installs a ncurses UI
 + + nls       : Adds Native Language Support (using gettext - GNU locale utilities)
 + - pm-utils  : Installs the pm-utils hooks for suspend/resume and requires sys-power/pm-utils

В /etc/portage/package.use/net-misc настроил все USE кроме глобальных (из make.conf)

Взял и собрал:

> emerge -pv net-misc/wicd 

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

Calculating dependencies... done!
[ebuild  N     ] dev-python/urwid-1.1.1  USE="-doc -examples {-test}" 472 kB
[ebuild  N     ] dev-python/pytz-2012h  172 kB
[ebuild  N     ] dev-python/Babel-0.9.6  1,779 kB
[ebuild  N     ] x11-misc/ktsuss-2  292 kB
[ebuild  N     ] net-misc/wicd-1.7.2.4-r2  USE="X gtk libnotify ncurses nls pm-utils -ambiance (-ioctl) -mac4lin" 430 kB

Total: 5 packages (5 new), Size of downloads: 3,142 kB

> emerge net-misc/wicd
init_6 ★★★★★
()

Насколько я понимаю, наиболее правильный вариант, это внимательно изучать USE-флаги самого пакета и его зависимостей, а затем пополнять список /etc/portage/package.use минусующими флагами для этих пакетов.

Так ты закопаешься.

Принцип: типовые флаги (как правило это глобальные флаги) настраиваешь в make.conf .

1. Для начала установи правильный профиль (`eselect profile list`). Это поставит тебе большинство правильных флагов.
2. Настраиваешь глобальные флаги в make.conf. Описания флагов рекомендую брать здесь: http://gentoo-portage.com/USE . Принцип прост: знаешь что это и понимаешь зачем - включай или выключай, не понимаешь - не трогай (не указывай).
Это даст тебе 99% результата. Тюнить флаги в /etc/portage/package.use - опционально; ну, или когда при установке софта тебе об этом скажут. У меня там обычно порядка 10 записей.

Kroz ★★★★★
()

USE="-*", потом нужное в package.use включать. Изредка могут вылезти косяки из-за майнтейнеров-дебилов не тестирующих ничего, но, раз ты взялся за гентушечку, тебя это не смутит.

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

USE="-*", потом нужное в package.use включать.

То бишь в конце концов у меня будет в package.use список всех моих установленных пакетов, для каждого из которых будут свои USE-флаги? Экстремально.

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

Так генту для этого и ставят.

Извращаться — так со вкусом и по полной. Сейчас еще в CFLAGS -O9 -fomg-optimize пропишу.

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

Если делать как ты предлагаешь (отключать) добиваясь «минимализма» — вот это будет по-настоящему экстремально.

anonymous
()

eselect profile list

/etc/portage/package.use

в make.conf должно пойти минимум вещей

x0r ★★★★★
()
Ответ на: А нужно от init_6

Спасибо, превьюшка никогда не помешает в таком деле.

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

Если делать как ты предлагаешь (отключать) добиваясь «минимализма» — вот это будет по-настоящему экстремально.

Да я интересуюсь, а не предлагаю. Просто идея, что надо сначала глобально все флаги загасить, а потом их зажигать индивидуально, мне самому в голову не пришла.

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

На самом деле выглядеть будет так:

пакет1 -говно1 -говно2 -говно3
пакет2 -говно1 -говно2 -говно3
пакет3 -говно1 -говно2 -говно3
vs
пакет2 фича
Улавливаешь, что проще?

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

Он под рутом лазит по «папочкам» и заглядывает в отдельные файлы :3

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

есть еще и graphite, но все это тормозит компиляцию.

Да я шучу. Вообще, для какой-нибудь интерактивной программы на самом деле больше канает время её начальной загрузки, нежели скорость работы. Мне кажется, что даже -Os очень осмысленный вариант, если у тебе не надо числодробилки пускать.

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

больше канает время её начальной загрузки

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

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

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

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

уже модно создавать отдельные файлы?

давно

init_6 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.