Допустим я хочу наложить свой патч на libxft (или еще на что-то, неважно)
Как это правильно сделать в дженте ?
Как накладывать патчи ?
Модератор: /dev/random
-
Unit_1985
- Сообщения: 54
Re: Как накладывать патчи ?
написать свой ebuild, или найти тот что тебе нужен, в твоем случае этот пакет можно стянуть из git://repo.or.cz/gentoo-soor-overlay.git
Вся жизнь игра и мы в ней юниты.
-
Icee
- Сообщения: 10
- ОС: Slackware 12
Re: Как накладывать патчи ?
я конечно извиняюсь но что то я не понял что мне делать с этой ссылкой, куда ее прописать. Сходил по ней там разные ебилды есть но libxft нету. Куда вообще эти ебилды запихивать ?? Дайте хоть ссылку что почитать по этой теме плз, а то вообще не врубаюсь. А чтоб самому ебилд сделать это надо программировать уметь, да?
-
Atragor
- Сообщения: 681
- Статус: ...
Re: Как накладывать патчи ?
http://devmanual.gentoo.org/quickstart/index.html
http://devmanual.gentoo.org/ebuild-writing/index.html
http://www.gentoo.org/proj/en/devrel/handb...rt=2&chap=1
Найдите в дереве Portage ebuild'ы, в которых накладываются патчи, и возьмите какой-нибудь из них за образец.
И вот тут как раз про наложение патчей написано
http://devmanual.gentoo.org/ebuild-writing...atch/index.html
http://devmanual.gentoo.org/ebuild-writing/index.html
http://www.gentoo.org/proj/en/devrel/handb...rt=2&chap=1
Найдите в дереве Portage ebuild'ы, в которых накладываются патчи, и возьмите какой-нибудь из них за образец.
Код: Выделить всё
grep -R epatch /usr/portage/И вот тут как раз про наложение патчей написано
http://devmanual.gentoo.org/ebuild-writing...atch/index.html
If you were MEANT to understand it, we wouldn't have called it 'code' © bash.org
-
Icee
- Сообщения: 10
- ОС: Slackware 12
Re: Как накладывать патчи ?
Спасибо, разобрался немного (с английским у меня туговато), но хочу еще спросить:
Например в строке
FILESDIR-это какая-то особая папка где должен патч лежать или здесь надо свой путь до патча прописать?
Что мне потом делать с модифицированым ебилдом - оставить в дереве портежей или в другое место положить ?
Например в строке
Код:
epatch "${FILESDIR}/${P}-destdir.patch"FILESDIR-это какая-то особая папка где должен патч лежать или здесь надо свой путь до патча прописать?
Что мне потом делать с модифицированым ебилдом - оставить в дереве портежей или в другое место положить ?
-
Cianos
- Сообщения: 343
- Статус: ищу
- ОС: Gentoo
Re: Как накладывать патчи ?
выдержка
Код: Выделить всё
# man 5 ebuild
FILESDIR = "${PORTDIR}/${CATEGORY}/${PN}/files"
Contains the path to the ’files’ sub folder in the package specific location in
the portage tree. Do not modify this variable.Моё Gentoo круче твоего!
-
Icee
- Сообщения: 10
- ОС: Slackware 12
Re: Как накладывать патчи ?
Всё разобрался, всем огромное сенкс 
-
Icee
- Сообщения: 10
- ОС: Slackware 12
Re: Как накладывать патчи ?
Мдаа... опять запутался
Я в папку /usr/portage/x11-libs/libXft/files положил патч который называется libXft-2.1.12-lcd-filter.patch
Как должна выглядеть строка в ебилде которая начинается на epatch "${FILESDIR} ??
В /usr/portage/x11-libs/libXft/libXft-2.1.12.ebuild я добавил:
но тогда система не находит этот патч,пишет:
* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /usr/portage/x11-libs/libXft/files/libXft-2.1.12-libXft-2.1.12-lcd-filter.patch
* ( libXft-2.1.12-libXft-2.1.12-lcd-filter.patch )
*
* ERROR: x11-libs/libXft-2.1.12 failed.
Я в папку /usr/portage/x11-libs/libXft/files положил патч который называется libXft-2.1.12-lcd-filter.patch
Как должна выглядеть строка в ебилде которая начинается на epatch "${FILESDIR} ??
В /usr/portage/x11-libs/libXft/libXft-2.1.12.ebuild я добавил:
Код:
src_unpack() {
unpack ${A}
cd "${S}"
epatch "${FILESDIR}/${P}-libXft-2.1.12-lcd-filter.patch"
}но тогда система не находит этот патч,пишет:
* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /usr/portage/x11-libs/libXft/files/libXft-2.1.12-libXft-2.1.12-lcd-filter.patch
* ( libXft-2.1.12-libXft-2.1.12-lcd-filter.patch )
*
* ERROR: x11-libs/libXft-2.1.12 failed.
-
NekoExMachina
- Сообщения: 485
- ОС: Кошерная.
Re: Как накладывать патчи ?
Код: Выделить всё
epatch "${FILESDIR}/${P}-libXft-2.1.12-lcd-filter.patch"преобразовать в >>
Код: Выделить всё
epatch "${FILESDIR}/${P}-lcd-filter.patch"Т.к. ты дважды таким образом указываешь версию пакета.
На форуме больше не появляюсь.
Высокопарность и надменность довела.
Высокопарность и надменность довела.
OpenBSD-current+scrotwm*1 (acer aspire one 531h)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)