On Wed, 2005-08-31 at 02:56 -0300, Fernando Canizo wrote:
> El 31/ago/2005 a las 00:23 -0300, Nick me decĂ­a:
> > 2. Fernando might like to note that the way to introduce a patch to a
> > package (rather than an amendment to the ebuild) is to use the epatch
> > command. Commonly the line looks like this:
> 
> You're saying that i can emerge mutt, run epatch command and then
> re-emerge and assumes the patch? It sounds crazy for me, maybe i don't
> understand.

no no, you put the epatch command in your ebuild file (your own version
that you put in PORTAGE_OVERLAY.)  Then the patch gets applied to the
mutt source file before compilation.

> 
> > epatch ${FILESDIR}/cool-all-mutt.patch
> 
> I see that command in ebuilds, but where is it? I can't find it in my
> installation, but somewhere must be since it gets used.
> 

epatch is internal to portage, it is the gentoo version of the patch
command. If you want to see some examples look in portage, eg:

grep epatch /usr/portage/* -r


> > If the patch is large or publicly available, you are better NOT to put
> > it in the portage tree but have it downloaded from a mirror with e
> > SRC_URI command. If you want an example of this take a look at the
> > vlc-0.8.2-r1 ebuild (chosen by me cos I was unsuccessfully hacking it
> > the other day)
>  
> I don't understand this either, if i put something un *my* portage
> tree the mirrors get infested?
> 

no. lets start again.

there are two places that portage can get the patch from. 


1. If it is small you can put it in ${FILESDIR} which is, in our case:

/usr/local/portage/mail-client/mutt/files/cool-all-mutt.patch

Then it is only on your system. If your revised ebuild gets accepted
into portage then the patch file will also get in the portage tree and
every gentooista will eventually get it via emerge sync.

2. If it is large, or if it is, for example, a commonly available public
patch (for example that some third party has published) then you can
instruct portage to download it from the net by specifying a SRC_URI,
viz:

SRC_URI="http://some.place.net/pub/patches/mutt/cool-all-mutt.patch";


You can do that in your private OVERLAY ebuild, and as you say you found
the patch on the net, that may be the best way to do it.

Again, if your revised ebuild gets accepted and if the "powers that be"
get with it, the patch file might also get into the gentoo mirrors,
meaning that it is easier to get with more redundancy.

> (hum... better get some sleep now, i'm understanding less after each
> minute)
> 
> -- 
> Fernando Canizo - http://www.lugmen.org.ar/~conan/
> lighthouse, n.:
>       A tall building on the seashore in which the government
>       maintains a lamp and the friend of a politician.
-- 
Nick Rout <[EMAIL PROTECTED]>

-- 
gentoo-user@gentoo.org mailing list

Reply via email to