# Не могу как следует настроить portage для установки ebuild

## Dr.WaFer

Надо поставить один единственный пакет rocketchat на Calculate. Провозился несколько дней, но так ничего и не добился. Шел по статьям с losst и calculate, однако постоянно вылетают ошибки и причем сразу множество. И как делать на самом деле вообще не понятно. Прошерстил много всяких файлов, директорий, перепробовал различные сочетания настроек. Читал разные статьи про portage, настройку, использование, но в итоге из-за разношерстности информации в голове сплошная каша. Запутался, не знаю что делать, что читать.

В общем - вопросов очень много, жалоб и нытья тоже.

Подскажите, что и где нужно читать, чтобы или понимать все это, или просто чтобы научиться устанавливать ebuid пакеты? Или, очень буду благодарен, если подскажете последовательность действий для настройки и установки ebuild пакетов. Сейчас у меня чистый Calculate абсолютно не настроенный.

----------

## Dr.WaFer

Пока смотрел сериал, тыкал директории и шарил конфиги. В итоге нашел make.conf в месте, которое в интернете (вроде бы) ни разу не упоминалось (я не видел). Директория /var/lib/layman. Там валяется "ВНЕЗАПНО" настроенный make.conf.

И в эту же директорию, а именно /var/lib/layman/calculate нужно засунуть ebuild в соответствующий раздел и в соответствующую названию ебилда папку. Просто не нужно строить новый оверлей, ведь в системе бесшумно затесался готовый.

Если название ебилда будет rocketchat-bin-2.15.5.ebuild, то название папки должно быть rocketchat-bin, иначе будет ошибка "does not seem to have a valid PORTDIR structure". Обидно, но напрямую никто об этом говорить не хочет в своих обучалках. Типа, это же так очевидно. Как и место, где находится нужный конфиг (losst), и прочие мелкие, но не маловажные для portage вещи.

Что будет дальше - не знаю, пакет не установился в связи с тем, что ему места не хватает на виртуалке. С чего бы это?

в ФС еще 3,5 Гб. Потому что при установке создался новый раздел для /var/calculate размером в 1 Гб. И быстро скушал свой ресурс. Наверное его создавать не надо, да?

----------

## Dr.WaFer

Установил, аж дважды. Толку никакого правда. На гитхабе было 2 разных тарбола. Попробовал сначала с первым, потом со вторым. Создал ебилд по этому алгоритму. Пакет был создан, используя emerge --autounmask-write НАЗВАНИЕ-ПАКЕТА, etc-update. Далее установил emerge НАЗВАНИЕ-ПАКЕТА, ну и все. Оба пакета пока не показали себя никак. Ни в терминале не могу найти команду, ни ярлыка нигде не появилось.

----------

## Dr.WaFer

Успешно установил. Очень много пробовал и экспериментировал, в итоге успешно поставил последнюю версию RocketChat из RPM пакета. Запустился, работает. По крайней мере запускается. Вскоре отпишусь как это сделал.

----------

## Dr.WaFer

Описываю как добавлял emerge пакеты со всеми нюансами (которые вспомню).

1. Скачайте файд ebuild на просторах интернета. К примеру (google: "ebuild" rocketchat 2.15.5). В данном случае скачал ebuild файл в стороннем github репозитории.

2. Надо его засунуть в нужную директорию (локальный оверлей). Символ влево, символ вправо - расстрел (does not seem to have a valid PORTDIR structure). Я неким Макаром нашел эту директорию по файлу /var/lib/layman/make.conf, в котором был указан сконфигурированный путь этого оверлея (и который сам же находился в этой директории). Путь - /var/lib/layman/calculate.

В этой директории надо найти папку с нужной категорией. В моем случае net-im (в репе github'a она был указана. На сайте gentoo тоже указывается).

Название ebuild файла - rocketchat-electron-bin-2.15.4.ebuild. Создал папку rocketchat-electron-bin в net-im и кинул туда ebuild.

3. Выполнил команду (с правами) ebuild /путь/к/файлу/файл.ebuild digest (это скачивание исходников. У меня вместо них RPM файл (прописано в ebuild'e)).

ebuild /путь/к/файлу/файл.ebuild unpack (распаковка).

  Вот тут у меня пошла неудача. Среди текста было что-то типа error: ... (unpack phase)

  И среди текста ошибки незаметно затесалось (line 2145: rpm2tar: command not found). Установка rpm2targz = успех.

Дальше все как по маслу:

  ebuild /путь/к/файлу/файл.ebuild compile (компиляция)

  ebuild /путь/к/файлу/файл.ebuild install (установка. хз что означает)

  ebuild /путь/к/файлу/файл.ebuild qmerge (перенос файлов в рабочую директорию. Тоже хз)

  ebuild /путь/к/файлу/файл.ebuild clean (очистка временной директории от временных файлов rocketchat)

  ebuild /путь/к/файлу/файл.ebuild merge (создание готового пакета)

EXCLENT!!

Пакет создан, и почти готов к установке. Но он замаскирован, то бишь он у вас есть, но ставить его запрещено.

  emerge --autounmask-write rocketchat-electron-bin

  etc-update

  на вопрос выбора ответить: -3

  далее везде ответить: y (yes)

  emerge rocketchat-electron-bin

Готово. Пакет установлен, я доволен.

Так же были ошибки с vacuum-im. Сначала ругань на отсутствие cmake, затем на что-то вроде "нет ни одного модуля Qt5... Дайте Qt5LingustTools". Пакет требуемый, значится, linguist-tools из категории dev-qt/.

Поставил - пашет. Толку правда, пакет пересобрался (пересобирал потому, что не было локализации), поставился как обычно. Пакет такой уже такой же версии был в репозитории, и поэтому он даже не был замаскирован, поставился, и тоже без русского языка.

А для 1.2.5 нет файла патча по указанному пути (его типа надо скачать, да только везде удален почему-то).

----------

