LinuxForum.Fans
Тема

Слака и портежи генты

Автор: SergMarkov 13 сообщений 6141 просмотров
#293460

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

#293461
"SergMarkov" написал:
но кто нибудь напарывался при этом на какие нибудь грабли по лбу ?

тут уместнее будет сказать, что грабли из красного дерева есть только у тебя ;D

#293462

Не , ну а чего ? :-) Пакетов там до .. очень много, чего бы не использовать ? Просто интересно, какие могут быть грабли

#293479

Про «сделать из DISTRO_NAME слаку» я слыхал, и не раз.
Но про «сделать из слаки генту» …
Чёрт подери.

"SergMarkov" написал:
Пока все вроде работает как надо, то есть пакеты слаки собираются

Я правильно понимаю, что Вы адаптировали emerge для сборки пакетов для Slackware?

#293482
Vitri написал:
Про «сделать из DISTRO_NAME слаку» я слыхал, и не раз.
Но про «сделать из слаки генту» …
Чёрт подери.

Это все таже слака, со своим управлением пакетами, просто ее пакеты можно собирать из портежей и оверлеев генты. Чуть раньше это проделал с арчем, из которого также можно собирать пакеты слаки.

Vitri написал:

Я правильно понимаю, что Вы адаптировали emerge для сборки пакетов для Slackware?

Это не адаптация, я в их сорцах ничего не менял, только портировал на слаку portage, layman, eix и еще несколько пакетов. Вообще говоря никаких трудностей это не составило.

#293488

Я снимаю перед Вами шляпу.

#293514
SergMarkov написал:
Это не адаптация, я в их сорцах ничего не менял, только портировал на слаку portage, layman, eix и еще несколько пакетов. Вообще говоря никаких трудностей это не составило.

А Вы маленькую инструкцию по прикручиванию portage выложите пожалуйста.
С удовольствием поэкспериментирую на пару с Вами...
Чего, чего, а на грабли наступать умею... :)
А по другому не запоминается...

#293523
cdrw написал:

А Вы маленькую инструкцию по прикручиванию portage выложите пожалуйста.
С удовольствием поэкспериментирую на пару с Вами...
Чего, чего, а на грабли наступать умею... :)
А по другому не запоминается...

По памяти, ничего не записывал, а память дырявая.. :-)
Самая маленькая, поскольку сам пока еще не написал для нее сборочные скрипты, только портировал пакеты.
Для начала нужен epydoc, собрать его можно и из арча и самому, первое проще, там с патчами ( сам собирал из арча)
Затем собрать pax-utils отсюда - http://gentoo.arcticnetwork.ca/distfiles/pax-utils-0.5.tar.xz
Затем уже сам portage - http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=summary
Мне пришлось править makefile чтобы не подхватывал при установке какой то док
Заводится группа portage c пользователем portage (нужно ли это не очень понял, собирается и без нее но сыплет варнингами)
Далее утягивается сам портеж - emerge --sync в /usr/portage
Ну а потом можно собирать уже из портежа (естественно что никакие зависимости не разрешаются, делать с их разрешением это половину мегатонны питоньего кода portage надо переписывать)
ebuild *.ebuild fetch
ebuild *.ebuild unpack
ebuild *.ebuild compile
ebuild *.ebuild install
в папке с нужным ебилдом
ставится все это во временную папку /var/tmp/portage/../image,
в нем переносится ..usr/share/man в ..usr/man и ..usr/share/doc в ..usr/doc и далее стандартная процедура создания пакета через слаковский makepkg
Теперь пересобираем automake из портежа.
Для работы с оверлеями нужен layman, для нормального поиска в портеже и в оверлеях eix (c push)
Как и что с ними делать вот здесь -
http://ru.gentoo-wiki.com/wiki/Portage_Overlay
поиск через eix -R что-то, будет искать в портеже и во всех оверлеях (даже неустановленных). Все операции с eix только от пользователя, в отличии от всех остальных где нужен рут. Поиск штатными средствами emerge таков, что проще удавиться :-) чем им пользоваться
Вот вкратце, может что то уже и подзабыл
Всего там более 20000 пакетов (в портеже и во всех оверлеях)
ЗЫ И да, больше там ничего трогать не надо, особенно экспериментировать с emerge, одна неверная команда с ним и систему можно будет выбрасывать. еmerge только и исключительно как emerge --sync, больше ни для чего.
ЗЫЗЫ Питоньи проги не собираются, чтобы их собрать надо использовать совсем уж грязные хаки.

#293525

Спасибо большое.
Буду пробовать *YES*

#293770
"SergMarkov" написал:
Пока все вроде работает как надо, то есть пакеты слаки собираются, но кто нибудь напарывался при этом на какие нибудь грабли по лбу ?

В gentoo скрипты отличаются от тех что используются в слаке, а следовательно грабли будут, если собранный пакет использует специфичные для gentoo конфигурационные файлы в каталоге /etc
То есть некоторые пакеты будут работать не так как надо, то есть придется либо переделывать ебилд для слаки, либо опять писать слакбилд с нуля.
Самое легкое правятся конфигурационные файлы вручную, создается патч изменений, который просто включается в ебилд в конце установки.
Например в функции pkg_postinst()

#293787
ormorph написал:

В gentoo скрипты отличаются от тех что используются в слаке, а следовательно грабли будут, если собранный пакет использует специфичные для gentoo конфигурационные файлы в каталоге /etc
То есть некоторые пакеты будут работать не так как надо, то есть придется либо переделывать ебилд для слаки, либо опять писать слакбилд с нуля.
Самое легкое правятся конфигурационные файлы вручную, создается патч изменений, который просто включается в ебилд в конце установки.
Например в функции pkg_postinst()

Так это касается в первую очередь каких то специфичных именно для генты утилит, или нет ?

#293796
"SergMarkov" написал:
Так это касается в первую очередь каких то специфичных именно для генты утилит, или нет ?

Не обязательно, это может быть какой нибудь пакет, в котором окружение Environment, прописано в /etc/env.d/
Либо это может быть программа, требующая запуска определенного демона.

#293797
ormorph написал:

Не обязательно, это может быть какой нибудь пакет, в котором окружение Environment, прописано в /etc/env.d/
Либо это может быть программа, требующая запуска определенного демона.

Ну, к счастью таких программ не так уж и много. Но в них, да, придется править.

Войдите или зарегистрируйтесь, чтобы ответить.