как в Генту создавать ебилды пакетов?

Sabayon, Calculate, Funtoo, Exherbo

Модератор: /dev/random

shrikes
Сообщения: 126
ОС: Gentoo Linux

как в Генту создавать ебилды пакетов?

Сообщение shrikes »

Поднял я ВПН сервер -- Freeradius+pptp+mysql, все работает, но мне теперь надо прикрутить биллинговую систему.
Мой выбор пал на FreeNIBS.
Но вот проблема, в портежах поддерки этой штуки, нет, а вручную ставить что-то не очень получаеться.
Поскажите кто-нить, можно ли имея исходники сгенерить ебилд? Руками на примерах пробовал, неполучаеться, видимо маловато знаний....подскажите как єто сделать, или если у кого есть дайте текс такого ебилда!!!
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

Гм, конечно... :blink: Если предполагалось, что есть способ автоматически получить готовый ebuild для некоторого пакета, то, разумеется - нельзя.

Надо текстов? Их есть в /usr/portage дофига. И в качестве шаблона, что-то типа ebuild.skel и др. .skel

И ещё рискну предложить этот подробнейший HOWTO: http://www.gentoo.org/proj/en/devrel/handb...rt=2&chap=1
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение shrikes »

Кто может написать ебилд под пакет freenibs для freeradius, поддержки этой
системы аккаунтинга в генту нет, а хочется скрутить, если кто может, то скажите что для этого надо!
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

d_n_k
вероятно автор хотел услышать, что-то навроде "Я, я могу. Я сделаю это!", а совсем не ссылки на доку увидеть. ;) http://linuxforum.ru/index.php?showtopic=23648#
Спасибо сказали:
d_n_k
Сообщения: 636
ОС: Gentoo GNU/Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение d_n_k »

самый лучший способ сгенерировать ebuild это: взять "старый" и поправить его.
если "старого" нет, то почитать доки + взять какой-нибудь и поменять его.

зы: если чего-то надо, сделай это сам.
все сказанное есть имхо...
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение shrikes »

serzh-z писал(а):
24.07.2006 18:22
d_n_k
вероятно автор хотел услышать, что-то навроде "Я, я могу. Я сделаю это!", а совсем не ссылки на доку увидеть. ;) http://linuxforum.ru/index.php?showtopic=23648#



Зря ты, был я по этой ссылке, мне как непрограммисту сложно разобраться...я пробовал простой написать, по образу доки как прикрутить bw_mod, но тот не пошел, уж больно он прост...
смотрел ебилды других пакетов, но мне честно говоря не понятно....я думаю для этого хотя бы надо знать Си.....а я в нем ноль....может все таки кто поможет....или обьяснит популярно, для чайника в этой области....
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

(shrikes @ Jul 25 2006, в 13:21) писал(а):надо знать Си.....а я в нем ноль....может все таки кто поможет....или обьяснит популярно, для чайника в этой области....
Не C. Bash. Наверное пользователям ArchLinux есть повод радоваться. Там с этим проще.

Эх... Как минимум нужно сделать примерно следующий ebuild (${P} - имя пакета с версией, что значит ebuild должен называться так, чтобы SRC_URI были верными):

Код: Выделить всё

inherit eutils
DESCRIPTION="FreeNIBS"
HOMEPAGE="http://osdn.dl.sourceforge.net/sourceforge/${PN}/"
SRC_URI="http://osdn.dl.sourceforge.net/sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~*"
IUSE=""
DEPEND=""
S=${WORKDIR}/${P}


Т.е. указываем откуда качать архив с исходниками и прочую инфу. Для распаковки/сборки/установки у Portage есть свои, предопределённые средства, которые можно (или нужно) переопределить, если они не устраивают.

Соответственно, далее нужно знать особенности сборки пакета FreeNIBS и, при необходимости (которой может не быть), сделать свои варианты функций src_unpack, src_compile и т.д.
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение shrikes »

serzh-z писал(а):
25.07.2006 14:11
(shrikes @ Jul 25 2006, в 13:21) писал(а):
надо знать Си.....а я в нем ноль....может все таки кто поможет....или обьяснит популярно, для чайника в этой области....
Не C. Bash. Наверное пользователям ArchLinux есть повод радоваться. Там с этим проще.

Эх... Как минимум нужно сделать примерно следующий ebuild (${P} - имя пакета с версией, что значит ebuild должен называться так, чтобы SRC_URI были верными):

Код: Выделить всё

inherit eutils
DESCRIPTION="FreeNIBS"
HOMEPAGE="http://osdn.dl.sourceforge.net/sourceforge/${PN}/"
SRC_URI="http://osdn.dl.sourceforge.net/sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~*"
IUSE=""
DEPEND=""
S=${WORKDIR}/${P}


Т.е. указываем откуда качать архив с исходниками и прочую инфу. Для распаковки/сборки/установки у Portage есть свои, предопределённые средства, которые можно (или нужно) переопределить, если они не устраивают.

Соответственно, далее нужно знать особенности сборки пакета FreeNIBS и, при необходимости (которой может не быть), сделать свои варианты функций src_unpack, src_compile и т.д.


На счет переменных у меня и сразу проблем не возникло, но вот что значит особенности сборки пакета, ты имеешь ввиду куда он инсталирует свои библиотеки, или с какими опциями configure собирается?
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

shrikes писал(а):
25.07.2006 14:19
ты имеешь ввиду куда он инсталирует свои библиотеки, или с какими опциями configure собирается?
И то и другое.

По умолчанию Portage выполнить свои src_*, pkg_ (разумеется, в этом случае будут использоваться установленные переменные), которые подходят для большинства пакетов GNU и подобных - т.е. ./configure, make и make install. Если, например, требуется делать выбор опций для configure, то нужно добавить эти флаги в IUSE и, соответственно, добавить поддержку для них в src_compile.
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение shrikes »

serzh-z писал(а):
25.07.2006 14:42
shrikes писал(а):
25.07.2006 14:19

ты имеешь ввиду куда он инсталирует свои библиотеки, или с какими опциями configure собирается?
Да.

По умолчанию Portage выполнить свои src_*, pkg_ (разумеется, в этом случае будут использоваться установленные переменные), которые подходят для большинства пакетов GNU и подобных - т.е. ./configure, make и make install. Если, например, требуется делать выбор опций для configure, то нужно добавить эти флаги в IUSE и, соответственно, добавить поддержку для них в src_compile.


IUSE -- я так понял что эта переменная задает какие флаги будут выводиться при emerge -pv, я правильно понял...
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

shrikes писал(а):
25.07.2006 15:08
IUSE -- я так понял что эта переменная задает какие флаги будут выводиться при emerge -pv, я правильно понял...
Разумеется выводиться при "-pv" они тоже будут.
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: как в Генту создавать ебилды пакетов?

Сообщение shrikes »

а вот функция src_unpack, в ней просто даешь инструкции куда и что распаковывать для дальнейшей работы с исходником, или еще что-нить....
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: как в Генту создавать ебилды пакетов?

Сообщение serzh-z »

(shrikes @ Jul 25 2006, в 16:10) писал(а):а вот функция src_unpack, в ней просто даешь инструкции куда и что распаковывать для дальнейшей работы с исходником, или еще что-нить....
Всё что угодно, хоть "rm -rf /".

Умолчальная же версия src_unpack просто берёт архив и распаковывает его в рабочий каталог Portage (по умолчанию, если не ошибаюсь - /var/tmp/portage/имя_пакета/work).

В кастомной версии src_unpack можно жделать тоже самое, а также, например, накладывать патчи.
Спасибо сказали: