--- mozilla-thunderbird-bin-1.5.0.8.ebuild 2006-11-11 06:38:06.000000000 -0600 +++ mozilla-thunderbird-bin-1.5.0.9.ebuild 2006-12-19 12:54:18.660751432 -0600 @@ -4,6 +4,9 @@ inherit eutils mozilla-launcher multilib +LANGS="bg ca cs da de el en-GB es-AR es-ES eu fi fr ga-IE gu-IN he hu it ja ko lt mk nb-NO nl pa-IN pl pt-BR ru sk sl sv-SE tr zh-CN" +SHORTLANGS="es-ES ga-IE nb-NO sv-SE" + DESCRIPTION="The Mozilla Thunderbird Mail & News Reader" SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/${PV}/linux-i686/en-US/thunderbird-${PV}.tar.gz" HOMEPAGE="http://www.mozilla.org/projects/thunderbird" @@ -14,6 +17,16 @@ LICENSE="MPL-1.1 NPL-1.1" IUSE="" +for X in ${LANGS} ; do + SRC_URI="${SRC_URI} linguas_${X/-/_}? ( http://dev.gentooexperimental.org/~anarchy/${P}-xpi/${P}-${X}.xpi )" + IUSE="${IUSE} linguas_${X/-/_}" + done + + for X in ${SHORTLANGS} ; do + SRC_URI="${SRC_URI} linguas_${X%%-*}? ( http://dev.gentooexperimental.org/~anarchy/${P}-xpi//${P}-${X}.xpi )" + IUSE="${IUSE} linguas_${X%%-*}" + done + DEPEND="virtual/libc" RDEPEND="|| ( ( x11-libs/libXrender x11-libs/libXt @@ -34,6 +47,32 @@ S=${WORKDIR}/thunderbird +linguas() { + linguas= + local LANG + for LANG in ${LINGUAS}; do + if hasq ${LANG} en en_US; then + hasq en ${linguas} || \ + linguas="${linguas:+"${linguas} "}en" + continue + elif hasq ${LANG} ${LANGS//-/_}; then + hasq ${LANG//_/-} ${linguas} || \ + linguas="${linguas:+"${linguas} "}${LANG//_/-}" + continue + else + local SLANG + for SLANG in ${SHORTLANGS}; do + if [[ ${LANG} == ${SLANG%%-*} ]]; then + hasq ${SLANG} ${linguas} || \ + linguas="${linguas:+"${linguas} "}${SLANG}" + continue 2 + fi + done + fi + ewarn "Sorry, but mozilla-thunderbird does not support the ${LANG} LINGUA" + done +} + pkg_setup() { # This is a binary x86 package => ABI=x86 # Please keep this in future versions @@ -41,6 +80,15 @@ has_multilib_profile && ABI="x86" } +src_unpack() { + unpack ${A} + + linguas + for X in ${linguas}; do + [[ ${X} != en ]] && xpi_unpack ${P}-${X}.xpi + done +} + src_install() { declare MOZILLA_FIVE_HOME=/opt/thunderbird @@ -48,6 +96,20 @@ dodir ${MOZILLA_FIVE_HOME%/*} mv ${S} ${D}${MOZILLA_FIVE_HOME} + linguas + for X in ${linguas}; do + [[ ${X} != en ]] && xpi_install ${WORKDIR}/${P}-${X} + done + + local LANG=${linguas%% *} + if [[ ${LANG} != "" && ${LANG} != "en" ]]; then + ebegin "Setting default locale to ${LANG}" + sed -i "s:pref(\"general.useragent.locale\", \"en-US\"):pref(\"general.useragent.locale\", \"${LANG}\"):" \ + ${D}${MOZILLA_FIVE_HOME}/defaults/pref/all-thunderbird.js \ + ${D}${MOZILLA_FIVE_HOME}/defaults/pref/all-l10n.js + eend $? || die "sed failed to change locale" + fi + # Install /usr/bin/thunderbird-bin install_mozilla_launcher_stub thunderbird-bin ${MOZILLA_FIVE_HOME}