1 |
2008/11/17 Harry Putnam <reader@×××××××.com>: |
2 |
> I really just want to add an epatch line to an existing ebuild but it |
3 |
> appears some protocols need to be followed to generate the manifest |
4 |
> and probably lots of other stuff. |
5 |
> |
6 |
> Can anyone point me to something? |
7 |
|
8 |
Create an overlay and within that use the same structure as in the |
9 |
portage tree like /path/to/overlay/category/yourpackage/ |
10 |
|
11 |
Make the overlay known to portage by editing /etc/make.conf |
12 |
PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /path/to/overlay" |
13 |
|
14 |
Copy the ebuild you want to patch to the created directory. Create a |
15 |
"files" directory within that directory and put your patch there. Note |
16 |
that if the previous ebuild already needed this directory because of |
17 |
other patches and files you need to copy them to that files directory |
18 |
too. |
19 |
|
20 |
Edit the ebuild by adding the epatch line to src_unpack (patches go to |
21 |
src_unpack and not src_install) or add the src_unpack function if it |
22 |
is not already there like below. |
23 |
|
24 |
src_unpack() { |
25 |
unpack ${A} |
26 |
cd "${S}" |
27 |
epatch "${FILESDIR}"/your.patch |
28 |
} |
29 |
|
30 |
Then execute "ebuild yourpackage.ebuild manifest". Now you can try |
31 |
"ebuild yourpackage.ebuild unpack" to run the unpack phase of the |
32 |
ebuild to see if everything works. |
33 |
|
34 |
-- |
35 |
Regards, |
36 |
Daniel |