1 |
On Wed, Dec 30, 2009 at 01:17:52PM +0100, Penguin Lover Frank Schwidom squawked: |
2 |
> as i noticed the directory /usr/portage/distfiles holds all installed |
3 |
> sources. What i want to do is modifying the code and reinstalling the |
4 |
> package. What is the simplest way? Is it possible without modifying the |
5 |
> ebuild? (i dont want to use make and 'make install' directly) |
6 |
|
7 |
Well, one way is to run the portage commands manually. And pause after |
8 |
unpacking to put in your changes. Read 'man ebuild' for how this |
9 |
can go. |
10 |
|
11 |
But if you want everything automated: say you want to modify the |
12 |
source, repackage, and just emerge <pkgname>, then I think you will |
13 |
have to at least re-manifest the distfile to get the checksum to |
14 |
match, else emerge won't proceed. |
15 |
|
16 |
Someone else should be able to give a better response as to what the |
17 |
standard practice is with patches. I think one of the simplest ways to |
18 |
do what you want to do is to |
19 |
|
20 |
*) Make your own overlay |
21 |
*) create the appropriate <cat>/<pkg> directory |
22 |
*) Copy over the ebuild. create a files/ subdirectory |
23 |
*) Put your patch in the files/ subdirectory |
24 |
*) Add 'epatch "${FILESDIR}"/<patchname>.patch' in the src_unpack |
25 |
function of the ebuild. |
26 |
*) digest/manifest... run? |
27 |
|
28 |
(I hope I didn't forget any step in the above.) |
29 |
|
30 |
Cheers, |
31 |
|
32 |
W |
33 |
|
34 |
-- |
35 |
Faye: I am glad that such a foolish man is not around, for I would |
36 |
surely defenestrate him with great rapidity. |
37 |
Sortir en Pantoufles: up 1118 days, 10:32 |