public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [RFC] Eclass for gnome-python* split
@ 2008-05-23 22:01 Arun Raghavan
  2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Arun Raghavan @ 2008-05-23 22:01 UTC (permalink / raw
  To: gentoo-dev

Greetings All,
I've been working on an ancient bug [1] requesting a split of the
gnome-python, gnome-python-extras, and gnome-python-desktop ebuilds.
The motivation behind the split is that packages that depend on a
single module or a small set of modules from one of these packages end
up pulling in the numerous dependencies required when pulling all the
modules in the package (example -- nautilus gets pulled in because of
a dep on the gnomeprint module).

I have split these 3 packages into packages for the component modules.
Since there was a lot of common functionality between these packages,
and the 28 modules' ebuilds were basically very similar, I've split
out a large amount of the required functionality into an eclass. The
work is heavily based on Jim Ramsay's (lack@g.o) work on splitting
gnome-python-desktop.

The split ebuilds are available via a git repository [2]. The actual
eclass can be viewed online at:

http://tinyurl.com/6z2ltc (full URL [3])

Feedback and comments (and even brickbats ;)) on the eclass are invited.

[1] https://bugs.gentoo.org/show_bug.cgi?id=108479
[2] http://gitorious.org/projects/g-py-split/repos/mainline (branch is
g-py-split)
[3] http://gitorious.org/projects/g-py-split/repos/mainline/blobs/g-py-split/eclass/gnome-python-common.eclass

Cheers!
-- 
Arun Raghavan
(http://nemesis.accosted.net)
v2sw5Chw4+5ln4pr6$OFck2ma4+9u8w3+1!m?l7+9GSCKi056
e6+9i4b8/9HTAen4+5g4/8APa2Xs8r1/2p5-8 hackerkey.com
-- 
gentoo-dev@lists.gentoo.org mailing list



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

* [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-23 22:01 [gentoo-dev] [RFC] Eclass for gnome-python* split Arun Raghavan
@ 2008-05-24  7:18 ` Ali Polatel
  2008-05-24  9:15   ` Arun Raghavan
  2008-05-25 22:16   ` Mart Raudsepp
  2008-05-24 15:32 ` [gentoo-dev] " Christian Faulhammer
  2008-05-26  9:27 ` [gentoo-dev] " Bo Ørsted Andresen
  2 siblings, 2 replies; 10+ messages in thread
From: Ali Polatel @ 2008-05-24  7:18 UTC (permalink / raw
  To: gentoo-dev


[-- Attachment #1.1: Type: text/plain, Size: 691 bytes --]

Arun Raghavan yazmış:
> Greetings All,

Hey there

> I've been working on an ancient bug [1] requesting a split of the
> gnome-python, gnome-python-extras, and gnome-python-desktop ebuilds.

Good for you :P

*snip*
> 
> Feedback and comments (and even brickbats ;)) on the eclass are invited.
> 

Attached is a patch for two minor issues with the eclass. First try to
remove py-compile only if it exists. Second, python_mod_optimize is
ROOT aware (since recently).

> Cheers!
> -- 
> Arun Raghavan
> (http://nemesis.accosted.net)
> v2sw5Chw4+5ln4pr6$OFck2ma4+9u8w3+1!m?l7+9GSCKi056
> e6+9i4b8/9HTAen4+5g4/8APa2Xs8r1/2p5-8 hackerkey.com

-- 
Regards,
Ali Polatel

[-- Attachment #1.2: gnome-python-common_eclass-python.diff --]
[-- Type: text/plain, Size: 819 bytes --]

diff --git a/eclass/gnome-python-common.eclass b/eclass/gnome-python-common.eclass
index f938f98..9169496 100644
--- a/eclass/gnome-python-common.eclass
+++ b/eclass/gnome-python-common.eclass
@@ -85,8 +85,10 @@ gnome-python-common_src_unpack() {
 	done
 
 	# disable pyc compiling
-	rm py-compile
-	ln -s $(type -P true) py-compile
+	if [[ -f py-compile ]]; then
+		rm py-compile
+		ln -s $(type -P true) py-compile
+	fi
 
 	[[ ${do_eautoreconf} -eq 1 ]] && eautoreconf
 }
@@ -121,7 +123,7 @@ gnome-python-common_src_install() {
 
 gnome-python-common_pkg_postinst() {
 	python_version
-	python_mod_optimize "${ROOT}/usr/$(get_libdir)/python${PYVER}/site-packages/gtk-2.0"
+	python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/gtk-2.0
 }
 
 gnome-python-common_pkg_postrm() {

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

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

* Re: [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
@ 2008-05-24  9:15   ` Arun Raghavan
  2008-05-25 22:16   ` Mart Raudsepp
  1 sibling, 0 replies; 10+ messages in thread
From: Arun Raghavan @ 2008-05-24  9:15 UTC (permalink / raw
  To: gentoo-dev

Hello!

2008/5/24 Ali Polatel <hawking@gentoo.org>:
> Attached is a patch for two minor issues with the eclass. First try to
> remove py-compile only if it exists. Second, python_mod_optimize is
> ROOT aware (since recently).

Thanks for the feedback ... I've checked in your patch.

Best,
-- 
Arun Raghavan
(http://nemesis.accosted.net)
v2sw5Chw4+5ln4pr6$OFck2ma4+9u8w3+1!m?l7+9GSCKi056
e6+9i4b8/9HTAen4+5g4/8APa2Xs8r1/2p5-8 hackerkey.com
-- 
gentoo-dev@lists.gentoo.org mailing list



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

* [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-23 22:01 [gentoo-dev] [RFC] Eclass for gnome-python* split Arun Raghavan
  2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
@ 2008-05-24 15:32 ` Christian Faulhammer
  2008-05-24 20:56   ` Arun Raghavan
  2008-05-26  9:27 ` [gentoo-dev] " Bo Ørsted Andresen
  2 siblings, 1 reply; 10+ messages in thread
From: Christian Faulhammer @ 2008-05-24 15:32 UTC (permalink / raw
  To: gentoo-dev

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

"Arun Raghavan" <arunisgod@gmail.com>:

> Feedback and comments (and even brickbats ;)) on the eclass are
> invited.

 * Don't install the COPYING file via the DOCS variable.
 * The LICENSE should be kept per ebuild in my opinion

-- 
Christian Faulhammer, Gentoo Lisp project
<URL:http://www.gentoo.org/proj/en/lisp/>, #gentoo-lisp on FreeNode

<URL:http://www.faulhammer.org/>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

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

* Re: [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-24 15:32 ` [gentoo-dev] " Christian Faulhammer
@ 2008-05-24 20:56   ` Arun Raghavan
  2008-05-26 19:01     ` Jeroen Roovers
  0 siblings, 1 reply; 10+ messages in thread
From: Arun Raghavan @ 2008-05-24 20:56 UTC (permalink / raw
  To: gentoo-dev

On Sat, May 24, 2008 at 9:02 PM, Christian Faulhammer <opfer@gentoo.org> wrote:
> "Arun Raghavan" <arunisgod@gmail.com>:
>
>> Feedback and comments (and even brickbats ;)) on the eclass are
>> invited.
>
>  * Don't install the COPYING file via the DOCS variable.
>  * The LICENSE should be kept per ebuild in my opinion

Changes made and committed -- thanks!

There was one interesting observation while I was looking at the
license for the gtkspell module. gtkspell-2 is licensed GPL-2, but
gtkspell-3 (which is not yet released and has only recently picked up
a little steam upstream) is licensed LGPL-2.1. Based on this
gtkspell-python needs to be conditionally licensed based on which
version of gtkspell it is linked against (GPL-2 if against gtkspell-2,
LGPL-2.1 if against gtkspell-3).

Something like:

if has_version =dev-python/gtkspell-2*; then
    LICENSE="GPL-2"
else
    LICENSE="LGPL-2.1"
fi

There is currently *no* way to express this in an ebuild without
invalidating the cache. For now this is just a theoretical problem,
but worthy of consideration nonetheless.

Cheers!
-- 
Arun Raghavan
(http://nemesis.accosted.net)
v2sw5Chw4+5ln4pr6$OFck2ma4+9u8w3+1!m?l7+9GSCKi056
e6+9i4b8/9HTAen4+5g4/8APa2Xs8r1/2p5-8 hackerkey.com
-- 
gentoo-dev@lists.gentoo.org mailing list



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

* Re: [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
  2008-05-24  9:15   ` Arun Raghavan
@ 2008-05-25 22:16   ` Mart Raudsepp
  2008-05-25 22:33     ` [gentoo-dev] " Ali Polatel
  1 sibling, 1 reply; 10+ messages in thread
From: Mart Raudsepp @ 2008-05-25 22:16 UTC (permalink / raw
  To: gentoo-dev

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

On L, 2008-05-24 at 10:18 +0300, Ali Polatel wrote:
> Arun Raghavan yazmış:
> > Greetings All,
> 
> Hey there
> 
> > I've been working on an ancient bug [1] requesting a split of the
> > gnome-python, gnome-python-extras, and gnome-python-desktop ebuilds.
> 
> Good for you :P
> 
> *snip*
> > 
> > Feedback and comments (and even brickbats ;)) on the eclass are invited.
> > 
> 
> Attached is a patch for two minor issues with the eclass. First try to
> remove py-compile only if it exists. Second, python_mod_optimize is
> ROOT aware (since recently).

Does that mean that every python_mod_optimize user (ebuild) that used it
as was expected from python_mod_optimize is now broken for ROOT != "/"
by installing them into ${ROOT}/${ROOT}/ ?


-- 
Mart Raudsepp
Gentoo Developer
Mail: leio@gentoo.org
Weblog: http://planet.gentoo.org/developers/leio

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

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

* [gentoo-dev] Re: Re: [RFC] Eclass for gnome-python* split
  2008-05-25 22:16   ` Mart Raudsepp
@ 2008-05-25 22:33     ` Ali Polatel
  2008-05-29 19:01       ` Ali Polatel
  0 siblings, 1 reply; 10+ messages in thread
From: Ali Polatel @ 2008-05-25 22:33 UTC (permalink / raw
  To: gentoo-dev

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

Mart Raudsepp yazmış:
> On L, 2008-05-24 at 10:18 +0300, Ali Polatel wrote:
> > Arun Raghavan yazmış:
> > > Greetings All,
> > 
> > Hey there
> > 
> > > I've been working on an ancient bug [1] requesting a split of the
> > > gnome-python, gnome-python-extras, and gnome-python-desktop ebuilds.
> > 
> > Good for you :P
> > 
> > *snip*
> > > 
> > > Feedback and comments (and even brickbats ;)) on the eclass are invited.
> > > 
> > 
> > Attached is a patch for two minor issues with the eclass. First try to
> > remove py-compile only if it exists. Second, python_mod_optimize is
> > ROOT aware (since recently).
> 
> Does that mean that every python_mod_optimize user (ebuild) that used it
> as was expected from python_mod_optimize is now broken for ROOT != "/"
> by installing them into ${ROOT}/${ROOT}/ ?
> 
> 

*fail*

Appearently python_mod_optimize is not ROOT aware (yet). I thought this
patch¹ was committed and didn't bother to check the eclass (silly me).
I'll commit it tomorrow and make sure the tree is consistent.
Join the fun if you have time :-)

¹: http://dev.gentoo.org/~hawking/tmp/python-root_awareness.diff

-- 
Regards,
Ali Polatel

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

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

* Re: [gentoo-dev] [RFC] Eclass for gnome-python* split
  2008-05-23 22:01 [gentoo-dev] [RFC] Eclass for gnome-python* split Arun Raghavan
  2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
  2008-05-24 15:32 ` [gentoo-dev] " Christian Faulhammer
@ 2008-05-26  9:27 ` Bo Ørsted Andresen
  2 siblings, 0 replies; 10+ messages in thread
From: Bo Ørsted Andresen @ 2008-05-26  9:27 UTC (permalink / raw
  To: gentoo-dev

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

On Saturday 24 May 2008 00:01:20 Arun Raghavan wrote:
> http://gitorious.org/projects/g-py-split/repos/mainline/blobs/g-py-split/eclass/gnome-python-common.eclass

Comments to quoted parts of the eclass below...

> G_PY_BINDINGS=${G_PY_BINDINGS:-${PN%-*}}

From the comments above it I get the impression that the wildcard is unnecessary:

G_PY_BINDINGS=${G_PY_BINDINGS:-${PN%-python}}

> RDEPEND="[...]
>        =dev-python/${G_PY_PN}-base-${PV}"

This should probably at least be ~dev-python/${G_PY_PN}-base-${PV} so you don't
have to change the eclass whenever you do a revision bump to the base package.

>        if hasq examples ${USE}; then

This should certainly be:

if hasq examples ${IUSE} && use examples; then

It's not clear to me whether you intended to add examples to IUSE for all
ebuilds in which case IUSE="examples" should be added to the eclass too...
Otherwise all ebuilds that use it must add it to IUSE manually.

>        python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/gtk-2.0

Ideally this code would make you inherit multilib explicitly too.

-- 
Bo Andresen
Gentoo KDE Dev

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

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

* Re: [gentoo-dev] Re: [RFC] Eclass for gnome-python* split
  2008-05-24 20:56   ` Arun Raghavan
@ 2008-05-26 19:01     ` Jeroen Roovers
  0 siblings, 0 replies; 10+ messages in thread
From: Jeroen Roovers @ 2008-05-26 19:01 UTC (permalink / raw
  To: gentoo-dev

On Sun, 25 May 2008 02:26:42 +0530
"Arun Raghavan" <arunisgod@gmail.com> wrote:

> if has_version =dev-python/gtkspell-2*; then
>     LICENSE="GPL-2"
> else
>     LICENSE="LGPL-2.1"
> fi
> 
> There is currently *no* way to express this in an ebuild without
> invalidating the cache. For now this is just a theoretical problem,
> but worthy of consideration nonetheless.

LICENSE="GPL-2 LGPL-2.1" is a bit awkward, but valid, and is the
current practice for multi-licensed packages.


Kind regards,
     JeR
-- 
gentoo-dev@lists.gentoo.org mailing list



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

* [gentoo-dev] Re: Re: [RFC] Eclass for gnome-python* split
  2008-05-25 22:33     ` [gentoo-dev] " Ali Polatel
@ 2008-05-29 19:01       ` Ali Polatel
  0 siblings, 0 replies; 10+ messages in thread
From: Ali Polatel @ 2008-05-29 19:01 UTC (permalink / raw
  To: gentoo-dev

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

Ali Polatel yazmış:
> Mart Raudsepp yazmış:
> > On L, 2008-05-24 at 10:18 +0300, Ali Polatel wrote:
> > > Arun Raghavan yazmış:
> > > > Greetings All,
> > > 
> > > Hey there
> > > 
> > > > I've been working on an ancient bug [1] requesting a split of the
> > > > gnome-python, gnome-python-extras, and gnome-python-desktop ebuilds.
> > > 
> > > Good for you :P
> > > 
> > > *snip*
> > > > 
> > > > Feedback and comments (and even brickbats ;)) on the eclass are invited.
> > > > 
> > > 
> > > Attached is a patch for two minor issues with the eclass. First try to
> > > remove py-compile only if it exists. Second, python_mod_optimize is
> > > ROOT aware (since recently).
> > 
> > Does that mean that every python_mod_optimize user (ebuild) that used it
> > as was expected from python_mod_optimize is now broken for ROOT != "/"
> > by installing them into ${ROOT}/${ROOT}/ ?
> > 
> > 
> 
> *fail*
> 
> Appearently python_mod_optimize is not ROOT aware (yet). I thought this
> patch¹ was committed and didn't bother to check the eclass (silly me).
> I'll commit it tomorrow and make sure the tree is consistent.
> Join the fun if you have time :-)
> 
> ¹: http://dev.gentoo.org/~hawking/tmp/python-root_awareness.diff
> 

Done. :-)

-- 
Regards,
Ali Polatel

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

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

end of thread, other threads:[~2008-05-29 19:01 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-23 22:01 [gentoo-dev] [RFC] Eclass for gnome-python* split Arun Raghavan
2008-05-24  7:18 ` [gentoo-dev] " Ali Polatel
2008-05-24  9:15   ` Arun Raghavan
2008-05-25 22:16   ` Mart Raudsepp
2008-05-25 22:33     ` [gentoo-dev] " Ali Polatel
2008-05-29 19:01       ` Ali Polatel
2008-05-24 15:32 ` [gentoo-dev] " Christian Faulhammer
2008-05-24 20:56   ` Arun Raghavan
2008-05-26 19:01     ` Jeroen Roovers
2008-05-26  9:27 ` [gentoo-dev] " Bo Ørsted Andresen

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