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
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# @ECLASS: xfconf.eclass
# @MAINTAINER:
# XFCE maintainers <x...@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

Reply via email to