public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
@ 2009-08-01 15:07 Samuli Suominen
  2009-08-01 17:58 ` Samuli Suominen
  0 siblings, 1 reply; 6+ messages in thread
From: Samuli Suominen @ 2009-08-01 15:07 UTC (permalink / raw
  To: gentoo-dev

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

Right now, xfce ebuilds in tree are unmaintainable because:

- Eclass sets invalid license to pkgs, they all have different ones,
GPL-2, LGPL-2*, GPL-3, BSD

- Ebuilds have started using internal functions from both xfce44 and
xfce4 eclasses. Yes, some Xfce 4.6 ebuilds are still using xfce44.eclass.

- Upstream changed SRC_URI for plugins. It was a problem even before,
some plugins are in separate locations such as Xfce4 developers own
devspaces.

Just to mention some. It's complex, and not in a smart way.

We want to deprecate all of the xfce*.eclasses in tree and switch to
this simple template ebuild.

Please comment if there's something to change. Keep it simple.

Timeframe: If you agree, I or we will convert them in within 1-2 days
from now.

Thanks, Samuli

[-- Attachment #2: xfconf.eclass --]
[-- Type: text/plain, Size: 1695 bytes --]

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# @ECLASS: xfconf.eclass
# @MAINTAINER:
# XFCE maintainers <xfce@gentoo.org>
# @BLURB: Default XFCE ebuild layout
# @DESCRIPTION:
# Default XFCE ebuild layout

inherit base fdo-mime gnome2-utils

# @FUNCTION: xfconf_src_configure
# @DESCRIPTION:
# Run econf with opts in XFCONF variable
xfconf_src_configure() {
	econf \
		${XFCONF}
}

# @FUNCTION: xfconf_src_compile
# @DESCRIPTION:
# Run econf with opts in XFCONF variable
xfconf_src_compile() {
	xfconf_src_configure
	emake || die "emake failed"
}

# @FUNCTION: xfconf_src_install
# @DESCRIPTION:
# Run emake install and install documentation in DOCS variable
xfconf_src_install() {
	emake DESTDIR="${D}" install || die "emake install failed"

	if [[ -n ${DOCS} ]]; then
		dodoc ${DOCS} || die "dodoc failed"
	fi
}

# @FUNCTION: xfconf_pkg_preinst
# @DESCRIPTION:
# Run gnome2_icon_savelist
xfconf_pkg_preinst() {
	gnome2_icon_savelist
}

# @FUNCTION: xfconf_pkg_postinst
# @DESCRIPTION:
# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
xfconf_pkg_postinst() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}

# @FUNCTION: xfconf_pkg_postrm
# @DESCRIPTION:
# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
xfconf_pkg_postrm() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}

case ${EAPI:-0} in
	2)
		EXPORT_FUNCTIONS src_configure src_install pkg_preinst pkg_postinst pkg_postrm
		;;
	*)
		EXPORT_FUNCTIONS src_compile src_install pkg_preinst pkg_postinst pkg_postrm
		;;
esac

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

* Re: [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
  2009-08-01 15:07 [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid Samuli Suominen
@ 2009-08-01 17:58 ` Samuli Suominen
  2009-08-01 17:59   ` Ciaran McCreesh
  0 siblings, 1 reply; 6+ messages in thread
From: Samuli Suominen @ 2009-08-01 17:58 UTC (permalink / raw
  To: gentoo-dev

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

Samuli Suominen wrote:
 > Please comment if there's something to change. Keep it simple.

Improved version attached. EAPI checking modification.

Thanks, Samuli

[-- Attachment #2: xfconf.eclass --]
[-- Type: text/plain, Size: 1700 bytes --]

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# @ECLASS: xfconf.eclass
# @MAINTAINER:
# XFCE maintainers <xfce@gentoo.org>
# @BLURB: Default XFCE ebuild layout
# @DESCRIPTION:
# Default XFCE ebuild layout

inherit base fdo-mime gnome2-utils

EXPF="src_compile src_install pkg_preinst pkg_postinst pkg_postrm"
case ${EAPI:-0} in
	2) EXPF+=" src_configure" ;;
	1|0) ;;
	*) die "Unknown EAPI." ;;
esac
EXPORT_FUNCTIONS ${EXPF}

# @FUNCTION: xfconf_src_configure
# @DESCRIPTION:
# Run econf with opts in XFCONF variable
xfconf_src_configure() {
	econf ${XFCONF}
}

# @FUNCTION: xfconf_src_compile
# @DESCRIPTION:
# Run econf with opts in XFCONF variable
xfconf_src_compile() {
	has src_configure ${EXPF} || xfconf_src_configure
	emake || die "emake failed"
}

# @FUNCTION: xfconf_src_install
# @DESCRIPTION:
# Run emake install and install documentation in DOCS variable
xfconf_src_install() {
	emake DESTDIR="${D}" install || die "emake install failed"

	if [[ -n ${DOCS} ]]; then
		dodoc ${DOCS} || die "dodoc failed"
	fi
}

# @FUNCTION: xfconf_pkg_preinst
# @DESCRIPTION:
# Run gnome2_icon_savelist
xfconf_pkg_preinst() {
	gnome2_icon_savelist
}

# @FUNCTION: xfconf_pkg_postinst
# @DESCRIPTION:
# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
xfconf_pkg_postinst() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}

# @FUNCTION: xfconf_pkg_postrm
# @DESCRIPTION:
# Run fdo-mime_{desktop,mime}_database_update and gnome2_icon_cache_update
xfconf_pkg_postrm() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}

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

* Re: [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
  2009-08-01 17:58 ` Samuli Suominen
@ 2009-08-01 17:59   ` Ciaran McCreesh
  2009-08-01 18:26     ` Samuli Suominen
  0 siblings, 1 reply; 6+ messages in thread
From: Ciaran McCreesh @ 2009-08-01 17:59 UTC (permalink / raw
  To: gentoo-dev

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

On Sat, 01 Aug 2009 20:58:10 +0300
Samuli Suominen <ssuominen@gentoo.org> wrote:
> Improved version attached. EAPI checking modification.

> 	2) EXPF+=" src_configure" ;;

+= is bash 3.1, which isn't legal for use in the tree.

-- 
Ciaran McCreesh

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

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

* Re: [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
  2009-08-01 17:59   ` Ciaran McCreesh
@ 2009-08-01 18:26     ` Samuli Suominen
  2009-08-01 18:26       ` Fabian Groffen
  2009-08-01 18:30       ` Ciaran McCreesh
  0 siblings, 2 replies; 6+ messages in thread
From: Samuli Suominen @ 2009-08-01 18:26 UTC (permalink / raw
  To: gentoo-dev

Ciaran McCreesh wrote:
> On Sat, 01 Aug 2009 20:58:10 +0300
> Samuli Suominen <ssuominen@gentoo.org> wrote:
>> Improved version attached. EAPI checking modification.
> 
>> 	2) EXPF+=" src_configure" ;;
> 
> += is bash 3.1, which isn't legal for use in the tree.
> 

It's been in use for a long time in xfce's ebuilds already, noone has
ever complained. One can easily match some hundreds of ebuilds in tree
where it's used.

Is this *really* a issue? If so, I have no trouble in reusing the var,
but it's ugly.

-Samuli



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

* Re: [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
  2009-08-01 18:26     ` Samuli Suominen
@ 2009-08-01 18:26       ` Fabian Groffen
  2009-08-01 18:30       ` Ciaran McCreesh
  1 sibling, 0 replies; 6+ messages in thread
From: Fabian Groffen @ 2009-08-01 18:26 UTC (permalink / raw
  To: gentoo-dev

On 01-08-2009 21:26:09 +0300, Samuli Suominen wrote:
> Ciaran McCreesh wrote:
> > On Sat, 01 Aug 2009 20:58:10 +0300
> > Samuli Suominen <ssuominen@gentoo.org> wrote:
> >> Improved version attached. EAPI checking modification.
> > 
> >> 	2) EXPF+=" src_configure" ;;
> > 
> > += is bash 3.1, which isn't legal for use in the tree.
> > 
> 
> It's been in use for a long time in xfce's ebuilds already, noone has
> ever complained. One can easily match some hundreds of ebuilds in tree
> where it's used.

http://archives.gentoo.org/gentoo-dev/msg_a5b81c2f60a80cc91e2a47a802168185.xml

> Is this *really* a issue? If so, I have no trouble in reusing the var,
> but it's ugly.

-- 
Fabian Groffen
Gentoo on a different level



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

* Re: [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid
  2009-08-01 18:26     ` Samuli Suominen
  2009-08-01 18:26       ` Fabian Groffen
@ 2009-08-01 18:30       ` Ciaran McCreesh
  1 sibling, 0 replies; 6+ messages in thread
From: Ciaran McCreesh @ 2009-08-01 18:30 UTC (permalink / raw
  To: gentoo-dev

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

On Sat, 01 Aug 2009 21:26:09 +0300
Samuli Suominen <ssuominen@gentoo.org> wrote:
> > += is bash 3.1, which isn't legal for use in the tree.
> 
> It's been in use for a long time in xfce's ebuilds already, noone has
> ever complained. One can easily match some hundreds of ebuilds in tree
> where it's used.

Yes, unfortunately it's impossible to get repoman to detect it reliably.

> Is this *really* a issue? If so, I have no trouble in reusing the var,
> but it's ugly.

It is. Unfortunately a whole bunch of developers moaned noisily when we
tried to fix the problem, so the tree's stuck with bash 3.0
indefinitely.

-- 
Ciaran McCreesh

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

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

end of thread, other threads:[~2009-08-01 18:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-01 15:07 [gentoo-dev] [RFC] xfconf.eclass - codename: keep it simple, stupid Samuli Suominen
2009-08-01 17:58 ` Samuli Suominen
2009-08-01 17:59   ` Ciaran McCreesh
2009-08-01 18:26     ` Samuli Suominen
2009-08-01 18:26       ` Fabian Groffen
2009-08-01 18:30       ` Ciaran McCreesh

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