public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] /etc/portage/patches/
@ 2011-09-12 13:21 Nikos Chantziaras
  2011-09-12 13:41 ` justin
  0 siblings, 1 reply; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-12 13:21 UTC (permalink / raw
  To: gentoo-user

Some packages can apply patches from /etc/portage/patches/, other don't. 
  Why don't all packages do that?  Is there a way to make all packages 
use /etc/portage/patches?




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [gentoo-user] /etc/portage/patches/
  2011-09-12 13:21 [gentoo-user] /etc/portage/patches/ Nikos Chantziaras
@ 2011-09-12 13:41 ` justin
  2011-09-12 13:51   ` [gentoo-user] /etc/portage/patches/ Nikos Chantziaras
  0 siblings, 1 reply; 12+ messages in thread
From: justin @ 2011-09-12 13:41 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 456 bytes --]

On 9/12/11 3:21 PM, Nikos Chantziaras wrote:
> Some packages can apply patches from /etc/portage/patches/, other don't.
>  Why don't all packages do that?  Is there a way to make all packages
> use /etc/portage/patches?
> 
> 

It a specific function which needs to be added to the ebuild by the
writer. To make all ebuilds respect user patches (where there are pros
and cons) the package manager must handle that function internally.

justin


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 267 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-12 13:41 ` justin
@ 2011-09-12 13:51   ` Nikos Chantziaras
  2011-09-12 14:14     ` justin
  0 siblings, 1 reply; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-12 13:51 UTC (permalink / raw
  To: gentoo-user

On 09/12/2011 04:41 PM, justin wrote:
> On 9/12/11 3:21 PM, Nikos Chantziaras wrote:
>> Some packages can apply patches from /etc/portage/patches/, other don't.
>>   Why don't all packages do that?  Is there a way to make all packages
>> use /etc/portage/patches?
>>
>>
>
> It a specific function which needs to be added to the ebuild by the
> writer. To make all ebuilds respect user patches (where there are pros
> and cons) the package manager must handle that function internally.

This sucks.  Is there anything I can in /etc/portage/env to make all 
ebuilds call epatch_user() ?




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [gentoo-user] Re: /etc/portage/patches/
  2011-09-12 13:51   ` [gentoo-user] /etc/portage/patches/ Nikos Chantziaras
@ 2011-09-12 14:14     ` justin
  2011-09-12 14:42       ` Nikos Chantziaras
  0 siblings, 1 reply; 12+ messages in thread
From: justin @ 2011-09-12 14:14 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 879 bytes --]

A hacky trick would be to implement it yourself by adding the
appropriate function to post_src_unpack of post_src_prepare in
/etc/portage/bashrc.

Nut this is out of warranty, but should work




On 9/12/11 3:51 PM, Nikos Chantziaras wrote:
> On 09/12/2011 04:41 PM, justin wrote:
>> On 9/12/11 3:21 PM, Nikos Chantziaras wrote:
>>> Some packages can apply patches from /etc/portage/patches/, other don't.
>>>   Why don't all packages do that?  Is there a way to make all packages
>>> use /etc/portage/patches?
>>>
>>>
>>
>> It a specific function which needs to be added to the ebuild by the
>> writer. To make all ebuilds respect user patches (where there are pros
>> and cons) the package manager must handle that function internally.
> 
> This sucks.  Is there anything I can in /etc/portage/env to make all
> ebuilds call epatch_user() ?
> 
> 



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 267 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-12 14:14     ` justin
@ 2011-09-12 14:42       ` Nikos Chantziaras
  2011-09-12 15:02         ` Nikos Chantziaras
  2011-09-18 16:42         ` Nikos Chantziaras
  0 siblings, 2 replies; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-12 14:42 UTC (permalink / raw
  To: gentoo-user

Thanks!  A bashrc with the following in it seems to work here just fine:

   post_src_unpack() {
           epatch_user
   }

Also, the epatch_user() docs mention that it's safe to call epatch_user 
multiple times, so I support no breakages should be expected with 
ebuilds and eclasses that call this function on their own.


On 09/12/2011 05:14 PM, justin wrote:
> A hacky trick would be to implement it yourself by adding the
> appropriate function to post_src_unpack of post_src_prepare in
> /etc/portage/bashrc.
>
> Nut this is out of warranty, but should work
>
> On 9/12/11 3:51 PM, Nikos Chantziaras wrote:
>> On 09/12/2011 04:41 PM, justin wrote:
>>> On 9/12/11 3:21 PM, Nikos Chantziaras wrote:
>>>> Some packages can apply patches from /etc/portage/patches/, other don't.
>>>>    Why don't all packages do that?  Is there a way to make all packages
>>>> use /etc/portage/patches?
>>>
>>> It a specific function which needs to be added to the ebuild by the
>>> writer. To make all ebuilds respect user patches (where there are pros
>>> and cons) the package manager must handle that function internally.
>>
>> This sucks.  Is there anything I can in /etc/portage/env to make all
>> ebuilds call epatch_user() ?




^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-12 14:42       ` Nikos Chantziaras
@ 2011-09-12 15:02         ` Nikos Chantziaras
  2011-09-18 16:42         ` Nikos Chantziaras
  1 sibling, 0 replies; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-12 15:02 UTC (permalink / raw
  To: gentoo-user

On 09/12/2011 05:42 PM, Nikos Chantziaras wrote:
> Thanks! A bashrc with the following in it seems to work here just fine:
>
>   post_src_unpack() {
>           epatch_user
>   }

In case anyone else is trying this, the above should be:

   post_src_unpack() {
           cd "${S}"
           epatch_user
   }




^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-12 14:42       ` Nikos Chantziaras
  2011-09-12 15:02         ` Nikos Chantziaras
@ 2011-09-18 16:42         ` Nikos Chantziaras
  2011-09-18 20:27           ` walt
  1 sibling, 1 reply; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-18 16:42 UTC (permalink / raw
  To: gentoo-user

On 09/12/2011 05:42 PM, Nikos Chantziaras wrote:
> Thanks! A bashrc with the following in it seems to work here just fine:
>
> post_src_unpack() {
> epatch_user
> }
>
> Also, the epatch_user() docs mention that it's safe to call epatch_user
> multiple times, so I support no breakages should be expected with
> ebuilds and eclasses that call this function on their own.

I came across some ebuilds that result in:

  * QA Notice: command not found:
  *
  *      /etc/portage/bashrc: line 3: epatch_user: command not found

How do I solve that one?




^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-18 16:42         ` Nikos Chantziaras
@ 2011-09-18 20:27           ` walt
  2011-09-18 20:37             ` Nikos Chantziaras
  0 siblings, 1 reply; 12+ messages in thread
From: walt @ 2011-09-18 20:27 UTC (permalink / raw
  To: gentoo-user

On 09/18/2011 09:42 AM, Nikos Chantziaras wrote:
> On 09/12/2011 05:42 PM, Nikos Chantziaras wrote:
>> Thanks! A bashrc with the following in it seems to work here just fine:
>>
>> post_src_unpack() {
>> epatch_user
>> }
>>
>> Also, the epatch_user() docs mention that it's safe to call epatch_user
>> multiple times, so I support no breakages should be expected with
>> ebuilds and eclasses that call this function on their own.
> 
> I came across some ebuilds that result in:
> 
>  * QA Notice: command not found:
>  *
>  *      /etc/portage/bashrc: line 3: epatch_user: command not found
> 
> How do I solve that one?

The epatch_user() is defined in /usr/portage/ebuild/eutils.eclass, so
I would guess that the ebuild would need the line "inherit eutils", or
at least inherit some other eclass that inherits it.






^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-18 20:27           ` walt
@ 2011-09-18 20:37             ` Nikos Chantziaras
  2011-09-18 20:50               ` Alex Schuster
  0 siblings, 1 reply; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-18 20:37 UTC (permalink / raw
  To: gentoo-user

On 09/18/2011 11:27 PM, walt wrote:
> On 09/18/2011 09:42 AM, Nikos Chantziaras wrote:
>> On 09/12/2011 05:42 PM, Nikos Chantziaras wrote:
>>> Thanks! A bashrc with the following in it seems to work here just fine:
>>>
>>> post_src_unpack() {
>>> epatch_user
>>> }
>>>
>>> Also, the epatch_user() docs mention that it's safe to call epatch_user
>>> multiple times, so I support no breakages should be expected with
>>> ebuilds and eclasses that call this function on their own.
>>
>> I came across some ebuilds that result in:
>>
>>   * QA Notice: command not found:
>>   *
>>   *      /etc/portage/bashrc: line 3: epatch_user: command not found
>>
>> How do I solve that one?
>
> The epatch_user() is defined in /usr/portage/ebuild/eutils.eclass, so
> I would guess that the ebuild would need the line "inherit eutils", or
> at least inherit some other eclass that inherits it.

The whole point is to not touch the ebuild but utilize bashrc instead :-/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [gentoo-user] Re: /etc/portage/patches/
  2011-09-18 20:37             ` Nikos Chantziaras
@ 2011-09-18 20:50               ` Alex Schuster
  2011-09-18 20:59                 ` Nikos Chantziaras
  0 siblings, 1 reply; 12+ messages in thread
From: Alex Schuster @ 2011-09-18 20:50 UTC (permalink / raw
  To: gentoo-user

Nikos Chantziaras writes:

> On 09/18/2011 11:27 PM, walt wrote:
> > On 09/18/2011 09:42 AM, Nikos Chantziaras wrote:

> >> I came across some ebuilds that result in:
> >>
> >>   * QA Notice: command not found:
> >>   *
> >>   *      /etc/portage/bashrc: line 3: epatch_user: command not found
> >>
> >> How do I solve that one?
> >
> > The epatch_user() is defined in /usr/portage/ebuild/eutils.eclass, so
> > I would guess that the ebuild would need the line "inherit eutils", or
> > at least inherit some other eclass that inherits it.
> 
> The whole point is to not touch the ebuild but utilize bashrc
> instead :-/

Do these ebuilds also need to apply the patches, or do you just want to
get rid of the error message?

	Wonko



^ permalink raw reply	[flat|nested] 12+ messages in thread

* [gentoo-user] Re: /etc/portage/patches/
  2011-09-18 20:50               ` Alex Schuster
@ 2011-09-18 20:59                 ` Nikos Chantziaras
  2011-09-18 21:21                   ` Alex Schuster
  0 siblings, 1 reply; 12+ messages in thread
From: Nikos Chantziaras @ 2011-09-18 20:59 UTC (permalink / raw
  To: gentoo-user

On 09/18/2011 11:50 PM, Alex Schuster wrote:
> Nikos Chantziaras writes:
>
>> On 09/18/2011 11:27 PM, walt wrote:
>>> On 09/18/2011 09:42 AM, Nikos Chantziaras wrote:
>
>>>> I came across some ebuilds that result in:
>>>>
>>>>    * QA Notice: command not found:
>>>>    *
>>>>    *      /etc/portage/bashrc: line 3: epatch_user: command not found
>>>>
>>>> How do I solve that one?
>>>
>>> The epatch_user() is defined in /usr/portage/ebuild/eutils.eclass, so
>>> I would guess that the ebuild would need the line "inherit eutils", or
>>> at least inherit some other eclass that inherits it.
>>
>> The whole point is to not touch the ebuild but utilize bashrc
>> instead :-/
>
> Do these ebuilds also need to apply the patches, or do you just want to
> get rid of the error message?

It's just the error message.  Which means this isn't an issue for now. 
It will become one if one of them will need patches though.

Too bad that I can't put "inherit eutils" in bashrc though.  But even I 
could, inheriting an eclass twice would probably not work to begin with.




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [gentoo-user] Re: /etc/portage/patches/
  2011-09-18 20:59                 ` Nikos Chantziaras
@ 2011-09-18 21:21                   ` Alex Schuster
  0 siblings, 0 replies; 12+ messages in thread
From: Alex Schuster @ 2011-09-18 21:21 UTC (permalink / raw
  To: gentoo-user

Nikos Chantziaras writes:

> On 09/18/2011 11:50 PM, Alex Schuster wrote:

> > Do these ebuilds also need to apply the patches, or do you just want
> > to get rid of the error message?
> 
> It's just the error message.  Which means this isn't an issue for now. 
> It will become one if one of them will need patches though.

post_src_unpack()
{
	if type epatch_user >& /dev/null
	then
		cd "${S}"
		epatch_user
	fi
}

> Too bad that I can't put "inherit eutils" in bashrc though.

It seems to be bash shell code, so you could try sourcing it from bash:
    . /usr/portage/eclass/eutils.eclass

Or copy the epatch_user() shell function from that file into
your /etc/portage/bashrc.

> But even I 
> could, inheriting an eclass twice would probably not work to begin with.

Maybe, I have no idea.

	Wonko



^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2011-09-18 21:22 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-12 13:21 [gentoo-user] /etc/portage/patches/ Nikos Chantziaras
2011-09-12 13:41 ` justin
2011-09-12 13:51   ` [gentoo-user] /etc/portage/patches/ Nikos Chantziaras
2011-09-12 14:14     ` justin
2011-09-12 14:42       ` Nikos Chantziaras
2011-09-12 15:02         ` Nikos Chantziaras
2011-09-18 16:42         ` Nikos Chantziaras
2011-09-18 20:27           ` walt
2011-09-18 20:37             ` Nikos Chantziaras
2011-09-18 20:50               ` Alex Schuster
2011-09-18 20:59                 ` Nikos Chantziaras
2011-09-18 21:21                   ` Alex Schuster

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox