From 4eb3cc995aaa907e19e01dea120738eadd43e3431bbfce4a99c101e3605b2b39 Mon Sep 17 00:00:00 2001 From: OBS User buildservice-autocommit Date: Thu, 18 Mar 2010 15:32:50 +0000 Subject: [PATCH 1/4] Updating link to change in openSUSE:Factory/translation-update-upstream revision 7.0 OBS-URL: https://build.opensuse.org/package/show/Base:System/translation-update-upstream?expand=0&rev=15ddce8f4d99f8c900cfa50cad6f2215 From c29cfd58826c151565756e06c6c21e5d605bab288fc8806cc240b71a9158d3b2 Mon Sep 17 00:00:00 2001 From: Stanislav Brabec Date: Fri, 4 Jun 2010 10:49:48 +0000 Subject: [PATCH 2/4] - Added the latest upstream and LCN strings. - Fixed minor bugs in companion scripts. OBS-URL: https://build.opensuse.org/package/show/Base:System/translation-update-upstream?expand=0&rev=5 --- create-tlst-step2-create-gnome_gtp.sh | 22 +- ...gnome-generic.tlst => freedesktop_org.tlst | 3 +- lcn-sle.hook | 10 + lcn-sle.tlst | 120 ++++++++ misc.tlst | 3 + opensuse.tlst | 51 ++++ translation-update-mandatory-20100603.tar.bz2 | 3 + translation-update-upstream-20100202.tar.bz2 | 3 - translation-update-upstream-20100603.tar.bz2 | 3 + translation-update-upstream.changes | 6 + translation-update-upstream.in | 46 ++- translation-update-upstream.spec | 21 +- upstream-collect.conf | 4 +- upstream-collect.sh | 278 +++++++++++------- upstream-gnome_gtp.tlst | 157 +++++----- 15 files changed, 520 insertions(+), 210 deletions(-) rename upstream-gnome-generic.tlst => freedesktop_org.tlst (66%) create mode 100644 lcn-sle.hook create mode 100644 lcn-sle.tlst create mode 100644 misc.tlst create mode 100644 opensuse.tlst create mode 100644 translation-update-mandatory-20100603.tar.bz2 delete mode 100644 translation-update-upstream-20100202.tar.bz2 create mode 100644 translation-update-upstream-20100603.tar.bz2 diff --git a/create-tlst-step2-create-gnome_gtp.sh b/create-tlst-step2-create-gnome_gtp.sh index d0ba664..86f54a1 100644 --- a/create-tlst-step2-create-gnome_gtp.sh +++ b/create-tlst-step2-create-gnome_gtp.sh @@ -12,12 +12,16 @@ set -o errexit source ${0%create-tlst-step2-create-gnome_gtp.sh}upstream-collect.conf -osc ${OSC_APIURL:+--apiurl=$OSC_APIURL} list $OSC_REPOSITORY >create-tlst-temp-osc-projects.lst +rm -f create-tlst-temp-osc-projects.lst +for REPOSITORY in ${OSC_REPOSITORIES[@]} ; do + osc ${OSC_APIURL:+--apiurl=$OSC_APIURL} list $REPOSITORY >create-tlst-temp-osc-projects.lst +done # branches tried for all apps: -KNOWN_BRANCHES="gnome-2-28" +KNOWN_BRANCHES="gnome-2-30" # branches tried apps with the same name base: -APP_BRANCHES="|gimp-2-6|gtk-2-18|gtk-2-90|glib-2-22" +# Do not forget hardcoded strings in the code below! +APP_BRANCHES="|gimp-2-6|gtk-2-20|gtk-2-90|glib-2-24" # FIXME: support for libgda:release-3-0-branch gnome-background:gnome-2-22 echo "# This file was generated $(LANG=C LC_ALL=C date) by create-tlst-step2-create-gnome_gtp.sh." >upstream-gnome_gtp.tlst @@ -43,11 +47,16 @@ curl http://l10n.gnome.org/POT/ | sed -n 's:^.*href="\([^"]*\)/".*$:\1:p' | sed for LBRANCH in $KNOWN_BRANCHES master ; do echo gconf gconf2 GConf2 $LBRANCH done + echo glib glib2 glib20 glib-2-24 echo glib glib2 glib20 master - echo gtk+ gtk2 gtk20 gtk-2-18 + echo gtk+ gtk2 gtk20 gtk-2-20 + echo gtk+ gtk2 gtk20 gtk-2-22 echo gtk+ gtk2 gtk20 master - echo gtk+ gtk2 gtk20-properties gtk-2-18 + echo gtk+ gtk2 gtk20-properties gtk-2-20 + echo gtk+ gtk2 gtk20-properties gtk-2-22 echo gtk+ gtk2 gtk20-properties master + echo libgweather libgweather libgweather-locations gnome-2-30 + echo libgweather libgweather libgweather-locations master echo gnome-phone-manager phonemgr gnome-phone-manager master echo network-manager-applet NetworkManager-gnome nm-applet master # For other versions than sles10: @@ -101,6 +110,9 @@ curl http://l10n.gnome.org/POT/ | sed -n 's:^.*href="\([^"]*\)/".*$:\1:p' | sed gst-plugins-ugly-0.10 ) PROJECT=gst-plugins-ugly ;; + libgweather-locations ) + PO_DIR=po-locations + ;; * ) PO_DIR=po ;; diff --git a/upstream-gnome-generic.tlst b/freedesktop_org.tlst similarity index 66% rename from upstream-gnome-generic.tlst rename to freedesktop_org.tlst index 1b0093a..4885e28 100644 --- a/upstream-gnome-generic.tlst +++ b/freedesktop_org.tlst @@ -2,5 +2,4 @@ gstreamer-0_10 gstreamer-0.10 cgit git://anongit.freedesktop.org/gstreamer/gstreamer gstreamer/po gstreamer-0_10-plugins-base gst-plugins-base-0.10 cgit git://anongit.freedesktop.org/gstreamer/gst-plugins-base gst-plugins-base/po gstreamer-0_10-plugins-good gst-plugins-good-0.10 cgit git://anongit.freedesktop.org/gstreamer/gst-plugins-good gst-plugins-good/po -gstreamer-0_10-plugins-bad gst-plugins-bad-0.10 cgit git://anongit.freedesktop.org/gstreamer/gst-plugins-bad gst-plugins-bad/po -gstreamer-0_10-plugins-ugly gst-plugins-ugly-0.10 cgit git://anongit.freedesktop.org/gstreamer/gst-plugins-ugly gst-plugins-ugly/po +shared-mime-info shared-mime-info cgit git://anongit.freedesktop.org/xdg/shared-mime-info po diff --git a/lcn-sle.hook b/lcn-sle.hook new file mode 100644 index 0000000..b5b917b --- /dev/null +++ b/lcn-sle.hook @@ -0,0 +1,10 @@ +#!/bin/bash +if test -z "$PACKAGE" ; then + echo "This is a hook file for upstream-collect.sh. It cannot be called separately." + exit 255 +fi + +# Hack for compiz that has a non-standard po location +if test $DOMAIN = compiz ; then + RPMPODIR=$(echo $RPMPKGDIR/BUILD/compiz/compiz-*/${DIR#*/}) +fi diff --git a/lcn-sle.tlst b/lcn-sle.tlst new file mode 100644 index 0000000..0777648 --- /dev/null +++ b/lcn-sle.tlst @@ -0,0 +1,120 @@ +# package domain method repository dir branch option +#DROPPED: CheckHardware CheckHardware lcn - CheckHardware/po SLE11 +ConsoleKit ConsoleKit lcn - ConsoleKit/po SLE11 +pam Linux-PAM lcn - Linux-PAM/po SLE11 +NetworkManager NetworkManager lcn - NetworkManager/po SLE11 +NetworkManager-novellvpn NetworkManager-novellvpn lcn - NetworkManager-novellvpn/po SLE11 +NetworkManager-openvpn NetworkManager-openvpn lcn - NetworkManager-openvpn/po SLE11 +NetworkManager-vpnc NetworkManager-vpnc lcn - NetworkManager-vpnc/po SLE11 +PolicyKit-gnome PolicyKit-gnome lcn - PolicyKit-gnome/po SLE11 +#NA: RELEASE-NOTES RELEASE-NOTES lcn - RELEASE-NOTES/po SLE11 +#NA: SUSEgreeter SUSEgreeter lcn - SUSEgreeter/po SLE11 +apparmor-parser apparmor-parser lcn - apparmor-parser/po SLE11 +apparmor-utils apparmor-utils lcn - apparmor-utils/po SLE11 +apparmorapplet-gnome apparmorapplet lcn - apparmorapplet/po SLE11 +#MOVED: banshee banshee lcn - banshee/po SLE11 +banshee-1 banshee-1 lcn - banshee-1/po SLE11 +beagle beagle lcn - beagle/po SLE11 +#NOTFOUND: bootloader bootloader lcn - bootloader/po SLE11 +#NOTFOUND: community-repositories community-repositories lcn - community-repositories/po SLE11 +compiz compiz lcn - compiz/po SLE11 +#DROPPED: compiz xgl-settings lcn - xgl-settings/po SLE11 +# STRANGE, moved: +gnome-control-center control-center2 lcn - control-center2/po SLE11 +cracklib cracklib lcn - cracklib/po SLE11 +cryptconfig cryptconfig lcn - cryptconfig/po SLE11 +#YAST: dialogsolver dialogsolver lcn - dialogsolver/po SLE11 +eiciel eiciel lcn - eiciel/po SLE11 +evolution-webcal evolution-webcal lcn - evolution-webcal/po SLE11 +f-spot f-spot lcn - f-spot/po SLE11 +#NA: gnome-cups-manager gnome-cups-manager lcn - gnome-cups-manager/po SLE11 +gnome-docker gnome-docker lcn - gnome-docker/po SLE11 +gnome-main-menu gnome-main-menu lcn - gnome-main-menu/po SLE11 +gnome-packagekit gnome-packagekit lcn - gnome-packagekit/po SLE11 +gnome-panel gnome-panel lcn - gnome-panel/po SLE11 +#TODO phase 2: gnome-patch-translation gnome-patch-translation lcn - gnome-patch-translation/po SLE11 +gnome-power-manager gnome-power-manager lcn - gnome-power-manager/po SLE11 +gnome-screensaver gnome-screensaver lcn - gnome-screensaver/po SLE11 +gnome-session gnome-session lcn - gnome-session/po SLE11 +gnome-terminal gnome-terminal lcn - gnome-terminal/po SLE11 +gnome-utils gnome-utils-2.0 lcn - gnome-utils-2.0/po SLE11 +#NA: html-help-boot html-help-boot lcn - html-help-boot/po SLE11 +#NA: html-help-install html-help-install lcn - html-help-install/po SLE11 +#MOVED?: NetworkManager-kde4 kcm_knetworkmanager lcn - kcm_knetworkmanager/po SLE11 +#TODO: kde4-SLE kde4-SLE lcn - kde4-SLE/po SLE11 +#TODO: kde4-openSUSE kde4-openSUSE lcn - kde4-openSUSE/po SLE11 +#TODO: kde4-plasmoids kde4-plasmoids lcn - kde4-plasmoids/po SLE11 +#TODO: kfiledialog kfiledialog lcn - kfiledialog/po SLE11 +#TODO: kinternet kinternet lcn - kinternet/po SLE11 +#TODO: kio_slp kio_slp lcn - kio_slp/po SLE11 +#TODO: kio_sysinfo kio_sysinfo lcn - kio_sysinfo/po SLE11 +#TODO: knetworkmanager knetworkmanager lcn - knetworkmanager/po SLE11 +#TODO: kpowersave kpowersave lcn - kpowersave/po SLE11 +krb5-ticket-watcher krb5-ticket-watcher lcn - krb5-ticket-watcher/po SLE11 +#NA: krpmview krpmview lcn - krpmview/po SLE11 +#NA: kryptomedia kryptomedia lcn - kryptomedia/po SLE11 +#TODO: kupdateapplet kupdateapplet lcn - kupdateapplet/po SLE11 +#TODO: kwin_SUSE2 kwin_SUSE2 lcn - kwin_SUSE2/po SLE11 +libgnomedb libgnomedb-3 lcn - libgnomedb-3/po SLE11 +libgnomesu libgnomesu-1.0 lcn - libgnomesu/po SLE11 +libslab libslab lcn - libslab/po SLE11 +#NA: libssui libssui lcn - libssui/po SLE11 +limal limal lcn - limal/po SLE11 +limal-apparmor-control limal-apparmor-control lcn - limal-apparmor-control/po SLE11 +limal-ca-mgm limal-ca-mgm lcn - limal-ca-mgm/po SLE11 +limal-nfs-server limal-nfs-server lcn - limal-nfs-server/po SLE11 +limal-runlevel limal-runlevel lcn - limal-runlevel/po SLE11 +linphone linphone lcn - linphone/po SLE11 +linuxrc linuxrc lcn - linuxrc/po SLE11 +login login lcn - login/po SLE11 +nautilus-open-terminal nautilus-open-terminal lcn - nautilus-open-terminal/po SLE11 +nautilus-sendto nautilus-sendto lcn - nautilus-sendto/po SLE11 +nautilus-share nautilus-share lcn - nautilus-share/po SLE11 +#TODO: ooo-build ooo-build lcn - ooo-build/po SLE11 +#NA: opensuseupdater-gnome opensuseupdater-gnome lcn - opensuseupdater-gnome/po SLE11 +pam-config pam-config lcn - pam-config/po SLE11 +pam_krb5 pam_krb5 lcn - pam_krb5/po SLE11 +#NA: pam_pwcheck pam_pwcheck lcn - pam_pwcheck/po SLE11 +#NA: pam_unix2 pam_unix2 lcn - pam_unix2/po SLE11 +#NA: pam_winbind pam_winbind lcn - pam_winbind/po SLE11 +#TODO: patterns patterns lcn - patterns/po SLE11 +#TODO: patterns-openSUSE patterns-openSUSE lcn - patterns-openSUSE/po SLE11 +#TODO: patterns-sled patterns-sled lcn - patterns-sled/po SLE11 +#TODO: patterns-sles patterns-sles lcn - patterns-sles/po SLE11 +pidgin pidgin lcn - pidgin/po SLE11 +pidgin-sipe pidgin-sipe lcn - pidgin-sipe/po SLE11 +#TODO: plasma_applet_networkmanager plasma_applet_networkmanager lcn - plasma_applet_networkmanager/po SLE11 +pm-profiler pm-profiler lcn - pm-profiler/po SLE11 +#TODO: policykit-kde policykit-kde lcn - policykit-kde/po SLE11 +#NA: power-management power-management lcn - power-management/po SLE11 +#NA: profile_chooser profile_chooser lcn - profile_chooser/po SLE11 +#TODO: release-notes-sled release-notes-sled lcn - release-notes-sled/po SLE11 +#DROPPED: resapplet resapplet lcn - resapplet/po SLE11 +#NA: rug rug lcn - rug/po SLE11 +sabayon sabayon lcn - sabayon/po SLE11 +#YAST: sax sax lcn - sax/po SLE11 +#NA: scpm_cli scpm_cli lcn - scpm_cli/po SLE11 +#NA: scpm_groups scpm_groups lcn - scpm_groups/po SLE11 +#NA: scpm_lib scpm_lib lcn - scpm_lib/po SLE11 +shared-mime-info shared-mime-info lcn - shared-mime-info/po SLE11 +simple-ccsm-kde simple-ccsm-kde lcn - simple-ccsm-kde/po SLE11 +#NA: slideshow slideshow lcn - slideshow/po SLE11 +#NA: slideshow-sled slideshow-sled lcn - slideshow-sled/po SLE11 +#NA: suseplugger suseplugger lcn - suseplugger/po SLE11 +#NA: susetranslations susetranslations lcn - susetranslations/po SLE11 +tomboy tomboy lcn - tomboy/po SLE11 +tsclient tsclient lcn - tsclient/po SLE11 +#TODO: update-desktop-files update-desktop-files lcn - update-desktop-files/po SLE11 +#TODO: update-desktop-files-apps update-desktop-files-apps lcn - update-desktop-files-apps/po SLE11 +#TODO: update-desktop-files-directories update-desktop-files-directories lcn - update-desktop-files-directories/po SLE11 +#TODO: update-desktop-files-kde update-desktop-files-kde lcn - update-desktop-files-kde/po SLE11 +#TODO: update-desktop-files-kde-services update-desktop-files-kde-services lcn - update-desktop-files-kde-services/po SLE11 +#TODO: update-desktop-files-screensavers update-desktop-files-screensavers lcn - update-desktop-files-screensavers/po SLE11 +#TODO: update-desktop-files-yast update-desktop-files-yast lcn - update-desktop-files-yast/po SLE11 +vmx-manager vmx-manager lcn - vmx-manager/po SLE11 +#NA: xen-vm-install xen-vm-install lcn - xen-vm-install/po SLE11 +#NA: ximian-artwork ximian-artwork lcn - ximian-artwork/po SLE11 +#NA: zen-updater zen-updater lcn - zen-updater/po SLE11 +#NA: zmd zmd lcn - zmd/po SLE11 +#NA: zypp zypp lcn - zypp/po SLE11 +zypper zypper lcn - zypper/po SLE11 diff --git a/misc.tlst b/misc.tlst new file mode 100644 index 0000000..93b2d40 --- /dev/null +++ b/misc.tlst @@ -0,0 +1,3 @@ +# package domain method repository dir branch +pam Linux-PAM cvs pam.cvs.sourceforge.net:/cvsroot/pam Linux-PAM/po +pidgin pidgin tbz http://downloads.sourceforge.net/pidgin/pidgin-2.7.1.tar.bz2 pidgin-2.7.1/po diff --git a/opensuse.tlst b/opensuse.tlst new file mode 100644 index 0000000..15948d6 --- /dev/null +++ b/opensuse.tlst @@ -0,0 +1,51 @@ +# Created by: svn co https://svn.berlios.de/svnroot/repos/opensuse-i18n/trunk/lcn/ ; find lcn -name *.po | while read ; do PO=${REPLY%.??.po} PO=${PO%.??_??.po} ; PO=${PO##*/} ; echo $PO ; done | sort -u | while read ; do grep "[[:space:]]$REPLY[[:space:]]" lcn.tlst ; done | sed 's/[[:space:]]*SLE11.*//' >opensuse.tlst +# package domain method repository dir branch option +apparmorapplet-gnome apparmorapplet lcn - apparmorapplet/po +apparmor-parser apparmor-parser lcn - apparmor-parser/po +apparmor-utils apparmor-utils lcn - apparmor-utils/po +#NOTFOUND: bootloader bootloader lcn - bootloader/po +#NOTFOUND: community-repositories community-repositories lcn - community-repositories/po +cracklib cracklib lcn - cracklib/po +#YAST: dialogsolver dialogsolver lcn - dialogsolver/po +gnome-main-menu gnome-main-menu lcn - gnome-main-menu/po +gnome-packagekit gnome-packagekit lcn - gnome-packagekit/po +#TODO phase 2: gnome-patch-translation gnome-patch-translation lcn - gnome-patch-translation/po +#NA: html-help-boot html-help-boot lcn - html-help-boot/po +#NA: html-help-install html-help-install lcn - html-help-install/po +#TODO: kde4-openSUSE kde4-openSUSE lcn - kde4-openSUSE/po +#TODO: kfiledialog kfiledialog lcn - kfiledialog/po +#TODO: kinternet kinternet lcn - kinternet/po +#TODO: kio_sysinfo kio_sysinfo lcn - kio_sysinfo/po +krb5-ticket-watcher krb5-ticket-watcher lcn - krb5-ticket-watcher/po +#NA: krpmview krpmview lcn - krpmview/po +#TODO: kupdateapplet kupdateapplet lcn - kupdateapplet/po +libgnomesu libgnomesu-1.0 lcn - libgnomesu-1.0/po +limal limal lcn - limal/po +limal-apparmor-control limal-apparmor-control lcn - limal-apparmor-control/po +limal-ca-mgm limal-ca-mgm lcn - limal-ca-mgm/po +limal-nfs-server limal-nfs-server lcn - limal-nfs-server/po +limal-runlevel limal-runlevel lcn - limal-runlevel/po +linuxrc linuxrc lcn - linuxrc/po +login login lcn - login/po +#TODO: ooo-build ooo-build lcn - ooo-build/po +#NA: opensuseupdater-gnome opensuseupdater-gnome lcn - opensuseupdater-gnome/po +pam-config pam-config lcn - pam-config/po +pam_krb5 pam_krb5 lcn - pam_krb5/po +#NA: pam_pwcheck pam_pwcheck lcn - pam_pwcheck/po +#NA: pam_unix2 pam_unix2 lcn - pam_unix2/po +#TODO: patterns patterns lcn - patterns/po +#YAST: sax sax lcn - sax/po +simple-ccsm-kde simple-ccsm-kde lcn - simple-ccsm-kde/po +#NA: slideshow slideshow lcn - slideshow/po +#NA: SUSEgreeter SUSEgreeter lcn - SUSEgreeter/po +#NA: susetranslations susetranslations lcn - susetranslations/po +#TODO: update-desktop-files update-desktop-files lcn - update-desktop-files/po +#TODO: update-desktop-files-apps update-desktop-files-apps lcn - update-desktop-files-apps/po +#TODO: update-desktop-files-directories update-desktop-files-directories lcn - update-desktop-files-directories/po +#TODO: update-desktop-files-kde update-desktop-files-kde lcn - update-desktop-files-kde/po +#TODO: update-desktop-files-kde-services update-desktop-files-kde-services lcn - update-desktop-files-kde-services/po +#TODO: update-desktop-files-screensavers update-desktop-files-screensavers lcn - update-desktop-files-screensavers/po +#TODO: update-desktop-files-yast update-desktop-files-yast lcn - update-desktop-files-yast/po +#NA: xen-vm-install xen-vm-install lcn - xen-vm-install/po +#NA: zypp zypp lcn - zypp/po +zypper zypper lcn - zypper/po diff --git a/translation-update-mandatory-20100603.tar.bz2 b/translation-update-mandatory-20100603.tar.bz2 new file mode 100644 index 0000000..aa0cf0f --- /dev/null +++ b/translation-update-mandatory-20100603.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e1a9955bb7cbe1c23fbf75f5c439201ebf810f25fb0fed3f2fa6d2ed420ae37 +size 127 diff --git a/translation-update-upstream-20100202.tar.bz2 b/translation-update-upstream-20100202.tar.bz2 deleted file mode 100644 index 08c22e1..0000000 --- a/translation-update-upstream-20100202.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:30e0f6b742862230c8f9c9dec70037a220f8827c6d404a4379c6d920bd94ef0e -size 1864 diff --git a/translation-update-upstream-20100603.tar.bz2 b/translation-update-upstream-20100603.tar.bz2 new file mode 100644 index 0000000..6fed057 --- /dev/null +++ b/translation-update-upstream-20100603.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16b7e841ceb73bd671ba310ecfaa91655945abb6ee245ad8af63ba08410a7af7 +size 5804401 diff --git a/translation-update-upstream.changes b/translation-update-upstream.changes index 3ac14cf..1573c0a 100644 --- a/translation-update-upstream.changes +++ b/translation-update-upstream.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Jun 4 12:47:12 CEST 2010 - sbrabec@suse.cz + +- Added the latest upstream and LCN strings. +- Fixed minor bugs in companion scripts. + ------------------------------------------------------------------- Tue Feb 2 18:35:28 CET 2010 - sbrabec@suse.cz diff --git a/translation-update-upstream.in b/translation-update-upstream.in index 08e61f5..9845e61 100644 --- a/translation-update-upstream.in +++ b/translation-update-upstream.in @@ -5,7 +5,7 @@ shopt -s nullglob if test "$1" = "--help" ; then echo "Upstream translation update tool works in top directory of unpacked source code." - echo "Usage: $0 [translation_directory] [translation_domain]" + echo "Usage: $0 [translation_directory] [translation_domain] [command to create pot file]" fi # Update all known mechanisms to add language: @@ -39,13 +39,18 @@ DOMAIN=$2 cd $DIR -if test -z "$DOMAIN" ; then - intltool-update --pot +if test -z "$3" ; then + if test -z "$DOMAIN" ; then + intltool-update --pot + else + intltool-update --gettext-package=$DOMAIN --pot + fi else - intltool-update --gettext-package=$DOMAIN --pot + eval $3 fi POT_NOT_UNIQUE=false +MISSING=true for POT in *.pot ; do if $POT_NOT_UNIQUE ; then echo "ERROR: Directory $DIR contains more than one .pot file." @@ -62,8 +67,8 @@ for POT in *.pot ; do cp -a *.po $STRING_COLLECT_DIR/$DOMAIN else if test -d @DATADIR@/translation-update-upstream ; then - if test -d @DATADIR@/translation-update-upstream/$DOMAIN ; then - for PO_PATH in @DATADIR@/translation-update-upstream/$DOMAIN/*.po ; do + if test -d @DATADIR@/translation-update-upstream/po/$DOMAIN ; then + for PO_PATH in @DATADIR@/translation-update-upstream/po/$DOMAIN/*.po ; do PO=${PO_PATH##*/} LNG=${PO%.po} if test -f $PO ; then @@ -87,7 +92,34 @@ for POT in *.pot ; do linguas_update fi done - else + MISSING=false + fi + if test -d @DATADIR@/translation-update-upstream/po-mandatory/$DOMAIN ; then + for PO_PATH in @DATADIR@/translation-update-upstream/po-mandatory/$DOMAIN/*.po ; do + PO=${PO_PATH##*/} + LNG=${PO%.po} + if test -f $PO ; then + echo "Updating $PO using translation-update-upstream mandatory source." + # PO_PATH is first: Update any string, even if it was already translated. + # Swap $PO_PATH and $PO to disable this behavior. + msgcat --use-first $PO_PATH $PO -o $PO.new + # Return .po file notes that are not present in the update file. + msgmerge --no-fuzzy-matching --compendium=$PO_PATH -o $PO.new2 $PO.new $POT + # And finally, synthesize header that not change every time. + if ! @LIBEXECDIR@/translation-update-upstream/msgheadermerge $PO $PO.new2 $PO.header --mergemode --continue ; then + echo "WARNING: Mandatory update of $PO for $DOMAIN is older than data in package or upstream snapshot. Using anyway!" + fi + msgcat --use-first $PO.header $PO.new2 -o $PO + rm $PO.new $PO.new2 $PO.header + else + echo "Adding $PO from translation-update-upstream mandatory source." + cp -a $PO_PATH $PO + linguas_update + fi + done + MISSING=false + fi + if $MISSING ; then echo "WARNING: Missing $DOMAIN in translation-update-upstream configuration! No updates available." fi else diff --git a/translation-update-upstream.spec b/translation-update-upstream.spec index f2da472..4f4314e 100644 --- a/translation-update-upstream.spec +++ b/translation-update-upstream.spec @@ -21,9 +21,10 @@ Name: translation-update-upstream License: GPLv2+ Group: System/Localization -Version: 20100202 +Version: 20100603 Release: 1 Summary: Tool for Translation Update from Upstream +Provides: translation-update-tool Source: %{name}-%{version}.tar.bz2 Source1: %{name}.in Source2: %{name}-AUTHORS @@ -35,6 +36,7 @@ Source7: msgheadermerge-compose Source8: msgheadermerge-parse Source9: msgheadermerge-empty.pot Source10: %{name}-embedded-README +Source11: translation-update-mandatory-%{version}.tar.bz2 Patch: %{name}-embedded.patch # Files below are package maintainer tools, not used for package build: Source50: upstream-collect.sh @@ -46,7 +48,11 @@ Source55: create-tlst.conf # Configuration files for package maintainer tools: Source60: upstream-gnome_gtp.tlst Source61: upstream-gnome_gtp.hook -Source62: upstream-gnome-generic.tlst +Source62: freedesktop_org.tlst +Source63: lcn-sle.tlst +Source64: lcn-sle.hook +Source65: misc.tlst +Source66: opensuse.tlst BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: coreutils gettext-tools grep intltool sed BuildArch: noarch @@ -69,7 +75,7 @@ Authors: Stanislav Brabec %prep -%setup -q -a0 -c %{name}-%{version} +%setup -q -a0 -a11 -c %{name}-%{version} cp -a %{S:1} translation-update-upstream.in cp -a %{S:2} AUTHORS cp -a %{S:3} COPYING @@ -85,12 +91,17 @@ chmod +x translation-update-upstream-embedded.sh %build %install -mkdir -p $RPM_BUILD_ROOT%{_datadir} $RPM_BUILD_ROOT%{_prefix}/lib/translation-update-upstream -cp -a po $RPM_BUILD_ROOT%{_datadir}/%{name} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} $RPM_BUILD_ROOT%{_prefix}/lib/translation-update-upstream +cp -a po po-mandatory $RPM_BUILD_ROOT%{_datadir}/%{name} install -d $RPM_BUILD_ROOT%{_bindir} install translation-update-upstream $RPM_BUILD_ROOT%{_bindir}/ install -m0755 msgheadermerge msgheadermerge-compose msgheadermerge-parse $RPM_BUILD_ROOT%{_prefix}/lib/translation-update-upstream/ install -m0644 msgheadermerge-empty.pot $RPM_BUILD_ROOT%{_prefix}/lib/translation-update-upstream/ +ln -s translation-update-upstream $RPM_BUILD_ROOT%{_bindir}/translation-update-tool +# +# gnome-i18n says nds_FME is wrong, remove until upstream clearified that +# +rm -fv $RPM_BUILD_ROOT%{_datadir}/%{name}/po/*/nds?NFE.po %clean rm -rf $RPM_BUILD_ROOT diff --git a/upstream-collect.conf b/upstream-collect.conf index 79e7794..b3a4571 100644 --- a/upstream-collect.conf +++ b/upstream-collect.conf @@ -1,8 +1,8 @@ # upstream-collect.conf: Configuration for updating of translation-update-upstream package. # -# osc repository with packages -OSC_REPOSITORY=openSUSE:Factory +# osc repositories with packages (space separated list in parentheses, first takes precedence) +OSC_REPOSITORIES=( openSUSE:Factory ) # osc server, empty for using of the osc default OSC_APIURL= diff --git a/upstream-collect.sh b/upstream-collect.sh index be86c1f..5d127b4 100644 --- a/upstream-collect.sh +++ b/upstream-collect.sh @@ -60,11 +60,7 @@ mkdir -p ~/.upstream-collect.tmp cat >~/.upstream-collect.tmp/translation-update-upstream <\${1:-po}/.translation-update-upstream-implemented EOF chmod +x ~/.upstream-collect.tmp/translation-update-upstream @@ -116,7 +112,7 @@ SERIAL=0 for TLST in *.tlst ; do exec <$WORK_DIR/$TLST - while read PACKAGE DOMAIN METHOD REPO DIR BRANCH ; do + while read PACKAGE DOMAIN METHOD REPO DIR BRANCH MANDATORY ; do # Continue for empty lines and comments if test "${PACKAGE###}" != "$PACKAGE" ; then @@ -125,9 +121,14 @@ for TLST in *.tlst ; do if test -z "$PACKAGE" ; then continue fi + if test "$MANDATORY" = "mandatory" ; then + MANDATORY=true + else + MANDATORY=false + fi echo - echo "$(tput setf 3)Processing: package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:-(default)}$(tput init)" + echo "$(tput setf 3)Processing: package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:-(default)} mandatory=$MANDATORY$(tput init)" # NOTE: Force a limitation: tlst rules for one package must be placed on contiguous line sequence if ! $DEBUG ; then @@ -195,7 +196,7 @@ for TLST in *.tlst ; do fi RPMPKGDIR=$(echo $WORK_DIR/PACKAGES/$PACKAGE) cd $RPMPKGDIR - rpmprep $PACKAGE.spec + T_U_U_DOMAIN=$DOMAIN rpmprep $PACKAGE.spec else # During processing, builddir may contain incomplete po files: rm $WORK_DIR/STAMPS/$PACKAGE/.builddir_ok @@ -208,18 +209,28 @@ for TLST in *.tlst ; do fi cd $RPMPODIR - if ! test -f .translation-update-upstream-implemented ; then - echo "$RPMPODIR: Missing or incorrect translation-update-upstream in the spec file." - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: packaging error, package does not call translation-update-upstream properly" - fi - if intltool-update --gettext-package=$DOMAIN --pot ; then - cp -a $DOMAIN.pot $WORK_DIR/pot/ - else - if test -f $DOMAIN.pot ; then - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: intltool-update error, continuing with original $DOMAIN.pot" + if test -f .translation-update-upstream-implemented ; then + if bash ./.translation-update-upstream-implemented ; then cp -a $DOMAIN.pot $WORK_DIR/pot/ else - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: intltool-update error, no way to update" + # translation-update-upstream is implemented but fails: + if test -f $DOMAIN.pot ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: pot file update error, continuing with original $DOMAIN.pot" + cp -a $DOMAIN.pot $WORK_DIR/pot/ + else + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: pot file update error, no way to update" + mkdir -p $WORK_DIR/STAMPS/$PACKAGE/$DOMAIN/$METHOD/${REPO//[\/:.]/_}/$REPODIR/${BRANCH:-__HEAD__} + continue + fi + fi + else + echo "$RPMPODIR: Missing or incorrect translation-update-upstream in the spec file." + # translation-update-upstream is implemented, try the default: + if intltool-update --gettext-package=$DOMAIN --pot ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: packaging error, package does not call translation-update-upstream properly" + cp -a $DOMAIN.pot $WORK_DIR/pot/ + else + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: packaging error, package does not call translation-update-upstream properly and intltool-update fails, no way to update" mkdir -p $WORK_DIR/STAMPS/$PACKAGE/$DOMAIN/$METHOD/${REPO//[\/:.]/_}/$REPODIR/${BRANCH:-__HEAD__} continue fi @@ -290,6 +301,7 @@ for TLST in *.tlst ; do gimp20-tips ) GTP_NAME_BASE=gimp-tips ;; gnumeric-functions ) GTP_NAME_BASE=gnumeric-functions ;; gtk20-properties ) GTP_NAME_BASE=gtk+-properties ;; + libgweather-locations ) GTP_NAME_BASE=locations ;; esac curl http://$REPO/${REPODIR%%/*}.${BRANCH:-master}/ | sed -n 's:^.*href="\([^"]*\.po\)".*$:\1:p' | while read ; do @@ -311,6 +323,30 @@ for TLST in *.tlst ; do tar -zxf ${REPO##*/} cd $REPODIR ;; + lcn ) + if ! test -d $WORK_DIR/LCN-${BRANCH:-trunk} ; then + mkdir $WORK_DIR/LCN-${BRANCH:-trunk} + cd $WORK_DIR/LCN-${BRANCH:-trunk} + if test "${BRANCH:-trunk}" = "trunk" ; then + BRANCH_PATH="${BRANCH:-trunk}" + else + BRANCH_PATH="branches/$BRANCH" + fi + svn co https://svn.berlios.de/svnroot/repos/opensuse-i18n/$BRANCH_PATH/lcn + for PO in lcn/*/po/*.po ; do + LCN_LANG=${PO%/*} + LCN_LANG=${LCN_LANG#lcn/} + LCN_LANG=${LCN_LANG%%/*} + LCN_DOMAIN=${PO##*/} + LCN_DOMAIN=${LCN_DOMAIN%.$LCN_LANG.po} + mkdir -p data/$LCN_DOMAIN + ln $PO data/$LCN_DOMAIN/$LCN_LANG.po + done + cd - + fi + cp -a $WORK_DIR/LCN-${BRANCH:-trunk}/data/${REPODIR%/po} . + cd ${REPODIR%/po} + ;; * ) echo "$PACKAGE: Unknown update method $METHOD" exit 1 @@ -337,101 +373,118 @@ for TLST in *.tlst ; do # foo-updates.po: fixes + additions in a single file, clean form with an useful header (this file will be copied to UPDATE/) # for PO in *.po ; do - # step 0: Merge new po file into old project. Removes unused (too new) translations. - if ! msgmerge --no-fuzzy-matching $PO $RPMPODIR/$DOMAIN.pot -o ${PO%.po}-backport.po ; then - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)} po=$PO: msgmerge error" - continue - fi - if test -f $RPMPODIR/$PO ; then - # step 1: Clean the RPM po file to be safe. - if ! msgmerge --no-fuzzy-matching $RPMPODIR/$PO $RPMPODIR/$DOMAIN.pot -o $RPMPODIR/${PO%.po}-downstream.po ; then - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN directory=$RPMPODIR po=$PO: package msgmerge error" - # Failed initial msgmerge is fatal. There is no way to update. Build may fail. - continue - fi - # Do the magic: - # step 2: Merge new upstream po and previous upstream updates to RPM po (if any). - OLD_UPDATE=false - if test -f $WORK_DIR/UPDATE/po/$DOMAIN/$PO ; then - if $WORK_DIR/msgheadermerge $WORK_DIR/UPDATE/po/$DOMAIN/$PO $PO ${PO%.po}-uheader.po --mergemode --continue ; then - echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN directory=$RPMPODIR po=$PO: old po file, skipping fixes" - OLD_UPDATE=true - fi - msgcat --force-po --use-first ${PO%.po}-uheader.po ${PO%.po}-backport.po $WORK_DIR/UPDATE/po/$DOMAIN/$PO -o ${PO%.po}-upstream.po + if $MANDATORY ; then + # Mandatory sources: copy the whole source to the mandatory po directory. Strings must not be skipped. + mkdir -p $WORK_DIR/UPDATE/po-mandatory/$DOMAIN + if test -f $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO ; then + msgcat --use-first $PO $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO -o $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO~ + mv $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO~ $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO else - cp -a ${PO%.po}-backport.po ${PO%.po}-upstream.po - fi - # step 3: Join both translations, without --use-first string changes will disappear as fuzzy. - msgcat --force-po ${PO%.po}-upstream.po $RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-allfz.po - msgcat --use-first --force-po ${PO%.po}-upstream.po $RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-all.po - # step 4: Find string fixes (existed before, now different). - msgcat --force-po --unique ${PO%.po}-all.po ${PO%.po}-allfz.po -o ${PO%.po}-fixes.po - # step 5: Find newly translated strings (translation removal is not supported). - msgcat --force-po --unique $RPMPODIR/${PO%.po}-downstream.po ${PO%.po}-all.po -o ${PO%.po}-additions.po - # step 6: Join both to collect all known fixes. - if $OLD_UPDATE ; then - # If the update has an old time stamp, don't include fixes. Use just additions. - msgcat ${PO%.po}-additions.po -o $RPMPODIR/${PO%.po}-updatesraw.po - else - msgcat ${PO%.po}-fixes.po ${PO%.po}-additions.po -o $RPMPODIR/${PO%.po}-updatesraw.po - fi - # Are there any updated? If no, game over. - if test -f $RPMPODIR/${PO%.po}-updatesraw.po ; then - # step 7: Compose the best po file header. - $WORK_DIR/msgheadermerge $RPMPODIR/$PO ${PO%.po}-upstream.po ${PO%.po}-header.po --newdate - # step 8: And yet another ugly game to get rid commented out garbage. - sed '/#~/d' <$RPMPODIR/${PO%.po}-updatesraw.po >$RPMPODIR/${PO%.po}-updates.po~ - # step 9: Merge correct header to the updates file. - msgcat --no-location --use-first ${PO%.po}-header.po $RPMPODIR/${PO%.po}-updates.po~ -o $RPMPODIR/${PO%.po}-updates.po - fi - # step 10: Prepare texts for review. We created them in previous steps, but files need cleanup. - if test -f ${PO%.po}-header.po ; then - if test -f ${PO%.po}-additions.po ; then - sed -i '/#~/d' ${PO%.po}-additions.po - mkdir -p $WORK_DIR/po-review/${PO%.po}/additions - msgcat --use-first ${PO%.po}-header.po ${PO%.po}-additions.po -o $WORK_DIR/po-review/${PO%.po}/additions/$DOMAIN.po - rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/additions - fi - if test -f ${PO%.po}-fixes.po ; then - sed -i '/#~/d' ${PO%.po}-fixes.po - msgcat --use-first ${PO%.po}-header.po ${PO%.po}-fixes.po -o ${PO%.po}-fixes-clean.po - fi - if test -f ${PO%.po}-fixes-clean.po ; then - msgmerge ${PO%.po}-allfz.po ${PO%.po}-fixes-clean.po -o ${PO%.po}-fixes-review.po~ - sed -i '/#~/d' ${PO%.po}-fixes-review.po~ - msgcat ${PO%.po}-fixes-review.po~ -o ${PO%.po}-fixes-review.po - if $OLD_UPDATE ; then - mkdir -p $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR - cp -a ${PO%.po}-fixes-clean.po $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR/$DOMAIN.po - cp -a ${PO%.po}-fixes-review.po $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR/$DOMAIN-review.po - rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR - if test -d $WORK_DIR/po-review/${PO%.po}/excluded-changes ; then - echo -e "Excluded changes contains changes introduced by upstream po files with\ntime stamp older than our package." >$WORK_DIR/po-review/${PO%.po}/excluded-changes/README - fi - else - mkdir -p $WORK_DIR/po-review/${PO%.po}/changes - cp -a ${PO%.po}-fixes-clean.po $WORK_DIR/po-review/${PO%.po}/changes/$DOMAIN.po - cp -a ${PO%.po}-fixes-review.po $WORK_DIR/po-review/${PO%.po}/changes/$DOMAIN-review.po - rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/changes - fi - fi + msgcat $PO -o $WORK_DIR/UPDATE/po-mandatory/$DOMAIN/$PO fi else - # If backport was empty, no file was generated. - if test -f ${PO%.po}-backport.po ; then - # step 1: Merge new po and previous updates (if any). - sed -i '/#~/d' ${PO%.po}-backport.po - if test -f ${PO%.po}-updates.po ; then - msgcat --force-po --use-first ${PO%.po}-backport.po $RPMPODIR/${PO%.po}-updates.po -o ${PO%.po}-updates.po~ - mv ${PO%.po}-updates.po~ ${PO%.po}-updates.po - else - # To get surely a valid po file, use msgcat instead of cp. - msgcat ${PO%.po}-backport.po -o ${PO%.po}-updates.po + # step 0: Merge new po file into old project. Removes unused (too new) translations. + if ! msgmerge --no-fuzzy-matching $PO $RPMPODIR/$DOMAIN.pot -o ${PO%.po}-backport.po ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)} po=$PO: msgmerge error" + continue + fi + if test -f $RPMPODIR/$PO ; then + # step 1: Clean the RPM po file to be safe. + if ! msgmerge --no-fuzzy-matching $RPMPODIR/$PO $RPMPODIR/$DOMAIN.pot -o $RPMPODIR/${PO%.po}-downstream.po ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN repository=$REPO directory=$RPMPODIR branch=${BRANCH:(default)} po=$PO: package msgmerge error" + # Failed initial msgmerge is fatal. There is no way to update. Build may fail. + continue + fi + # Do the magic: + # step 2: Merge new upstream po and previous upstream updates to RPM po (if any). + OLD_UPDATE=false + if test -f $WORK_DIR/UPDATE/po/$DOMAIN/$PO ; then + if $WORK_DIR/msgheadermerge $WORK_DIR/UPDATE/po/$DOMAIN/$PO $PO ${PO%.po}-uheader.po --mergemode --continue ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN repository=$REPO directory=$RPMPODIR branch=${BRANCH:(default)} po=$PO: old po file, skipping fixes" + OLD_UPDATE=true + fi + msgcat --force-po --use-first ${PO%.po}-uheader.po ${PO%.po}-backport.po $WORK_DIR/UPDATE/po/$DOMAIN/$PO -o ${PO%.po}-upstream.po + else + cp -a ${PO%.po}-backport.po ${PO%.po}-upstream.po + fi + # step 3: Join both translations, without --use-first string changes will disappear as fuzzy. + msgcat --force-po ${PO%.po}-upstream.po $RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-allfz.po + msgcat --use-first --force-po ${PO%.po}-upstream.po $RPMPODIR/${PO%.po}-downstream.po -o ${PO%.po}-all.po + # step 4: Find string fixes (existed before, now different). + msgcat --force-po --unique ${PO%.po}-all.po ${PO%.po}-allfz.po -o ${PO%.po}-fixes.po + # step 5: Find newly translated strings (translation removal is not supported). + msgcat --force-po --unique $RPMPODIR/${PO%.po}-downstream.po ${PO%.po}-all.po -o ${PO%.po}-additions.po + # step 6: Join both to collect all known fixes. + if $OLD_UPDATE ; then + # If the update has an old time stamp, don't include fixes. Use just additions. + msgcat ${PO%.po}-additions.po -o $RPMPODIR/${PO%.po}-updatesraw.po + else + msgcat ${PO%.po}-fixes.po ${PO%.po}-additions.po -o $RPMPODIR/${PO%.po}-updatesraw.po + fi + # Are there any updated? If no, game over. + if test -f $RPMPODIR/${PO%.po}-updatesraw.po ; then + # step 7: Compose the best po file header. + $WORK_DIR/msgheadermerge $RPMPODIR/$PO ${PO%.po}-upstream.po ${PO%.po}-header.po --newdate + # step 8: And yet another ugly game to get rid commented out garbage. + sed '/#~/d' <$RPMPODIR/${PO%.po}-updatesraw.po >$RPMPODIR/${PO%.po}-updates.po~ + # step 9: Merge correct header to the updates file. + msgcat --no-location --use-first ${PO%.po}-header.po $RPMPODIR/${PO%.po}-updates.po~ -o $RPMPODIR/${PO%.po}-updates.po + fi + # step 10: Prepare texts for review. We created them in previous steps, but files need cleanup. + if test -f ${PO%.po}-header.po ; then + if test -f ${PO%.po}-additions.po ; then + sed -i '/#~/d' ${PO%.po}-additions.po + mkdir -p $WORK_DIR/po-review/${PO%.po}/additions + msgcat --use-first ${PO%.po}-header.po ${PO%.po}-additions.po -o $WORK_DIR/po-review/${PO%.po}/additions/$DOMAIN.po + rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/additions + fi + if test -f ${PO%.po}-fixes.po ; then + sed -i '/#~/d' ${PO%.po}-fixes.po + msgcat --use-first ${PO%.po}-header.po ${PO%.po}-fixes.po -o ${PO%.po}-fixes-clean.po + fi + if test -f ${PO%.po}-fixes-clean.po ; then + msgmerge ${PO%.po}-allfz.po ${PO%.po}-fixes-clean.po -o ${PO%.po}-fixes-review.po~ + sed -i '/#~/d' ${PO%.po}-fixes-review.po~ + msgcat ${PO%.po}-fixes-review.po~ -o ${PO%.po}-fixes-review.po + if $OLD_UPDATE ; then + mkdir -p $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR + cp -a ${PO%.po}-fixes-clean.po $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR/$DOMAIN.po + cp -a ${PO%.po}-fixes-review.po $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR/$DOMAIN-review.po + rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/excluded-changes/${REPO//[\/:.]/_}/$REPODIR + if test -d $WORK_DIR/po-review/${PO%.po}/excluded-changes ; then + echo -e "Excluded changes contains changes introduced by upstream po files with\ntime stamp older than our package." >$WORK_DIR/po-review/${PO%.po}/excluded-changes/README + fi + else + mkdir -p $WORK_DIR/po-review/${PO%.po}/changes + cp -a ${PO%.po}-fixes-clean.po $WORK_DIR/po-review/${PO%.po}/changes/$DOMAIN.po + cp -a ${PO%.po}-fixes-review.po $WORK_DIR/po-review/${PO%.po}/changes/$DOMAIN-review.po + rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/changes + fi + fi + fi + else + # If backport was empty, no file was generated. + if test -f ${PO%.po}-backport.po ; then + # step 1: Merge new po and previous updates (if any). + sed -i '/#~/d' ${PO%.po}-backport.po + if test -f $RPMPODIR/${PO%.po}-updates.po ; then + if ! msgcat --force-po --use-first ${PO%.po}-backport.po $RPMPODIR/${PO%.po}-updates.po -o $RPMPODIR/${PO%.po}-updates.po~ ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)} po=$PO: msgcat error" + continue + fi + mv $RPMPODIR/${PO%.po}-updates.po~ $RPMPODIR/${PO%.po}-updates.po + else + # To get surely a valid po file, use msgcat instead of cp. + if ! msgcat ${PO%.po}-backport.po -o $RPMPODIR/${PO%.po}-updates.po ; then + echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE gettext-package=$DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)} po=$PO: msgcat error" + continue + fi + fi + # step 2: Prepare texts for review. + mkdir -p $WORK_DIR/po-review/${PO%.po}/new-files + cp -a $RPMPODIR/${PO%.po}-updates.po $WORK_DIR/po-review/${PO%.po}/new-files/$DOMAIN.po + rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/new-files fi - # step 2: Prepare texts for review. - mkdir -p $WORK_DIR/po-review/${PO%.po}/new-files - cp -a ${PO%.po}-updates.po $WORK_DIR/po-review/${PO%.po}/new-files/$DOMAIN.po - rmdir --ignore-fail-on-non-empty --parents $WORK_DIR/po-review/${PO%.po}/new-files fi fi done @@ -461,7 +514,12 @@ if ! $DEBUG ; then fi cd $WORK_DIR/UPDATE -tar -j -c -f $WORK_DIR/translation-update-upstream-$SNAPSHOT.tar.bz2 po +if test -d po ; then + tar -j -c -f $WORK_DIR/translation-update-upstream-$SNAPSHOT.tar.bz2 po +fi +if test -d po-mandatory ; then + tar -j -c -f $WORK_DIR/translation-update-mandatory-$SNAPSHOT.tar.bz2 po-mandatory +fi cd $WORK_DIR if ! $DEBUG ; then diff --git a/upstream-gnome_gtp.tlst b/upstream-gnome_gtp.tlst index 19b4b55..af2b94e 100644 --- a/upstream-gnome_gtp.tlst +++ b/upstream-gnome_gtp.tlst @@ -1,77 +1,80 @@ -# Manually added new items on Fri Jan 8 17:31:43 CET 2010. -# This file was generated Tue Oct 27 15:31:01 CET 2009 by create-tlst-step2-create-gnome_gtp.sh. +# This file was generated Tue Jun 1 18:22:42 CEST 2010 by create-tlst-step2-create-gnome_gtp.sh. # package domain method repository dir branch NetworkManager NetworkManager gtp l10n.gnome.org/POT NetworkManager/po NetworkManager-gnome nm-applet gtp l10n.gnome.org/POT network-manager-applet/po PackageKit PackageKit gtp l10n.gnome.org/POT packagekit/po PolicyKit-gnome PolicyKit-gnome gtp l10n.gnome.org/POT PolicyKit-gnome/po +accerciser accerciser gtp l10n.gnome.org/POT accerciser/po gnome-2-30 accerciser accerciser gtp l10n.gnome.org/POT accerciser/po -alacarte alacarte gtp l10n.gnome.org/POT alacarte/po gnome-2-28 alacarte alacarte gtp l10n.gnome.org/POT alacarte/po -anjuta anjuta gtp l10n.gnome.org/POT anjuta/po gnome-2-28 +anjuta anjuta gtp l10n.gnome.org/POT anjuta/po gnome-2-30 anjuta anjuta gtp l10n.gnome.org/POT anjuta/po -at-spi at-spi gtp l10n.gnome.org/POT at-spi/po gnome-2-28 +anjuta-extras anjuta-extras gtp l10n.gnome.org/POT anjuta-extras/po +at-spi at-spi gtp l10n.gnome.org/POT at-spi/po gnome-2-30 at-spi at-spi gtp l10n.gnome.org/POT at-spi/po -atk atk10 gtp l10n.gnome.org/POT atk/po gnome-2-28 +atk atk10 gtp l10n.gnome.org/POT atk/po gnome-2-30 atk atk10 gtp l10n.gnome.org/POT atk/po avahi avahi gtp l10n.gnome.org/POT avahi/po balsa balsa gtp l10n.gnome.org/POT balsa/po banshee-1 banshee-1 gtp l10n.gnome.org/POT banshee/po beagle beagle gtp l10n.gnome.org/POT beagle/po -brasero brasero gtp l10n.gnome.org/POT brasero/po gnome-2-28 +brasero brasero gtp l10n.gnome.org/POT brasero/po gnome-2-30 brasero brasero gtp l10n.gnome.org/POT brasero/po -bug-buddy bug-buddy gtp l10n.gnome.org/POT bug-buddy/po gnome-2-28 bug-buddy bug-buddy gtp l10n.gnome.org/POT bug-buddy/po -cheese cheese gtp l10n.gnome.org/POT cheese/po gnome-2-28 +byzanz byzanz gtp l10n.gnome.org/POT byzanz/po cheese cheese gtp l10n.gnome.org/POT cheese/po conduit conduit gtp l10n.gnome.org/POT conduit/po -# broken: -#conglomerate conglomerate gtp l10n.gnome.org/POT conglomerate/po +conglomerate conglomerate gtp l10n.gnome.org/POT conglomerate/po contact-lookup-applet contact-lookup-applet gtp l10n.gnome.org/POT contact-lookup-applet/po -dasher dasher gtp l10n.gnome.org/POT dasher/po gnome-2-28 +dasher dasher gtp l10n.gnome.org/POT dasher/po gnome-2-30 dasher dasher gtp l10n.gnome.org/POT dasher/po deskbar-applet deskbar-applet gtp l10n.gnome.org/POT deskbar-applet/po -devhelp devhelp gtp l10n.gnome.org/POT devhelp/po gnome-2-28 devhelp devhelp gtp l10n.gnome.org/POT devhelp/po devilspie devilspie gtp l10n.gnome.org/POT devilspie/po dia dia gtp l10n.gnome.org/POT dia/po ekiga ekiga gtp l10n.gnome.org/POT ekiga/po -empathy empathy gtp l10n.gnome.org/POT empathy/po gnome-2-28 +empathy empathy gtp l10n.gnome.org/POT empathy/po gnome-2-30 empathy empathy gtp l10n.gnome.org/POT empathy/po -eog eog gtp l10n.gnome.org/POT eog/po gnome-2-28 +eog eog gtp l10n.gnome.org/POT eog/po gnome-2-30 eog eog gtp l10n.gnome.org/POT eog/po -epiphany epiphany gtp l10n.gnome.org/POT epiphany/po gnome-2-28 +eog-plugins eog-plugins gtp l10n.gnome.org/POT eog-plugins/po +epiphany epiphany gtp l10n.gnome.org/POT epiphany/po gnome-2-30 epiphany epiphany gtp l10n.gnome.org/POT epiphany/po -epiphany-extensions epiphany-extensions-2.28 gtp l10n.gnome.org/POT epiphany-extensions/po gnome-2-28 -epiphany-extensions epiphany-extensions-2.28 gtp l10n.gnome.org/POT epiphany-extensions/po -evince evince gtp l10n.gnome.org/POT evince/po gnome-2-28 +epiphany-extensions epiphany-extensions-2.29 gtp l10n.gnome.org/POT epiphany-extensions/po +# Two lines added manually: +epiphany-extensions epiphany-extensions-2.30 gtp l10n.gnome.org/POT epiphany-extensions/po gnome-2-30 +epiphany-extensions epiphany-extensions-2.30 gtp l10n.gnome.org/POT epiphany-extensions/po +evince evince gtp l10n.gnome.org/POT evince/po gnome-2-30 evince evince gtp l10n.gnome.org/POT evince/po -evolution evolution-2.28 gtp l10n.gnome.org/POT evolution/po gnome-2-28 -evolution evolution-2.28 gtp l10n.gnome.org/POT evolution/po -evolution-data-server evolution-data-server-2.28 gtp l10n.gnome.org/POT evolution-data-server/po gnome-2-28 -evolution-data-server evolution-data-server-2.28 gtp l10n.gnome.org/POT evolution-data-server/po -evolution-exchange evolution-exchange-2.28 gtp l10n.gnome.org/POT evolution-exchange/po gnome-2-28 -evolution-exchange evolution-exchange-2.28 gtp l10n.gnome.org/POT evolution-exchange/po +evolution evolution-2.30 gtp l10n.gnome.org/POT evolution/po gnome-2-30 +evolution evolution-2.30 gtp l10n.gnome.org/POT evolution/po +evolution-data-server evolution-data-server-2.30 gtp l10n.gnome.org/POT evolution-data-server/po gnome-2-30 +evolution-data-server evolution-data-server-2.30 gtp l10n.gnome.org/POT evolution-data-server/po +evolution-exchange evolution-exchange-2.30 gtp l10n.gnome.org/POT evolution-exchange/po gnome-2-30 +evolution-exchange evolution-exchange-2.30 gtp l10n.gnome.org/POT evolution-exchange/po +evolution-webcal evolution-webcal gtp l10n.gnome.org/POT evolution-webcal/po gnome-2-30 evolution-webcal evolution-webcal gtp l10n.gnome.org/POT evolution-webcal/po f-spot f-spot gtp l10n.gnome.org/POT f-spot/po -file-roller file-roller gtp l10n.gnome.org/POT file-roller/po gnome-2-28 +file-roller file-roller gtp l10n.gnome.org/POT file-roller/po gnome-2-30 file-roller file-roller gtp l10n.gnome.org/POT file-roller/po gDesklets gdesklets gtp l10n.gnome.org/POT gdesklets/po gbrainy gbrainy gtp l10n.gnome.org/POT gbrainy/po -gcalctool gcalctool gtp l10n.gnome.org/POT gcalctool/po gnome-2-28 +gcalctool gcalctool gtp l10n.gnome.org/POT gcalctool/po gnome-2-30 gcalctool gcalctool gtp l10n.gnome.org/POT gcalctool/po -gconf-editor gconf-editor gtp l10n.gnome.org/POT gconf-editor/po gnome-2-28 gconf-editor gconf-editor gtp l10n.gnome.org/POT gconf-editor/po -gconf2 GConf2 gtp l10n.gnome.org/POT gconf/po gnome-2-28 +gconf2 GConf2 gtp l10n.gnome.org/POT gconf/po gnome-2-30 gconf2 GConf2 gtp l10n.gnome.org/POT gconf/po -gdl gdl-1 gtp l10n.gnome.org/POT gdl/po gnome-2-28 +gdl gdl-1 gtp l10n.gnome.org/POT gdl/po gnome-2-30 gdl gdl-1 gtp l10n.gnome.org/POT gdl/po -gdm gdm gtp l10n.gnome.org/POT gdm/po gnome-2-28 +gdm gdm gtp l10n.gnome.org/POT gdm/po gnome-2-30 gdm gdm gtp l10n.gnome.org/POT gdm/po -gedit gedit gtp l10n.gnome.org/POT gedit/po gnome-2-28 +gedit gedit gtp l10n.gnome.org/POT gedit/po gnome-2-30 gedit gedit gtp l10n.gnome.org/POT gedit/po -gftp gftp gtp l10n.gnome.org/POT gftp/po +gedit-plugins gedit-plugins gtp l10n.gnome.org/POT gedit-plugins/po gnome-2-30 +gedit-plugins gedit-plugins gtp l10n.gnome.org/POT gedit-plugins/po +genius genius gtp l10n.gnome.org/POT genius/po ghex ghex-2.0 gtp l10n.gnome.org/POT ghex/po +giggle giggle gtp l10n.gnome.org/POT giggle/po gimp gimp20 gtp l10n.gnome.org/POT gimp/po gimp-2-6 gimp gimp20 gtp l10n.gnome.org/POT gimp/po gimp gimp20-libgimp gtp l10n.gnome.org/POT gimp/po-libgimp gimp-2-6 @@ -85,63 +88,62 @@ gimp gimp20-std-plug-ins gtp l10n.gnome.org/POT gimp gimp20-tips gtp l10n.gnome.org/POT gimp/po-tips gimp-2-6 gimp gimp20-tips gtp l10n.gnome.org/POT gimp/po-tips gimp-gap gimp20-gap gtp l10n.gnome.org/POT gimp-gap/po +gitg gitg gtp l10n.gnome.org/POT gitg/po glabels glabels gtp l10n.gnome.org/POT glabels/po -glade3 glade3 gtp l10n.gnome.org/POT glade3/po gnome-2-28 glade3 glade3 gtp l10n.gnome.org/POT glade3/po +glib2 glib20 gtp l10n.gnome.org/POT glib/po glib-2-24 glib2 glib20 gtp l10n.gnome.org/POT glib/po -gnome-applets gnome-applets-2.0 gtp l10n.gnome.org/POT gnome-applets/po gnome-2-28 +gnome-applets gnome-applets-2.0 gtp l10n.gnome.org/POT gnome-applets/po gnome-2-30 gnome-applets gnome-applets-2.0 gtp l10n.gnome.org/POT gnome-applets/po gnome-backgrounds gnome-backgrounds gtp l10n.gnome.org/POT gnome-backgrounds/po gnome-blog gnome-blog gtp l10n.gnome.org/POT gnome-blog/po -gnome-bluetooth gnome-bluetooth2 gtp l10n.gnome.org/POT gnome-bluetooth/po gnome-2-28 +gnome-bluetooth gnome-bluetooth2 gtp l10n.gnome.org/POT gnome-bluetooth/po gnome-2-30 gnome-bluetooth gnome-bluetooth2 gtp l10n.gnome.org/POT gnome-bluetooth/po +gnome-color-manager gnome-color-manager gtp l10n.gnome.org/POT gnome-color-manager/po gnome-commander gnome-commander gtp l10n.gnome.org/POT gnome-commander/po -gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po gnome-2-28 +gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po gnome-2-30 gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po -gnome-desktop gnome-desktop-2.0 gtp l10n.gnome.org/POT gnome-desktop/po gnome-2-28 +gnome-desktop gnome-desktop-2.0 gtp l10n.gnome.org/POT gnome-desktop/po gnome-2-30 gnome-desktop gnome-desktop-2.0 gtp l10n.gnome.org/POT gnome-desktop/po -gnome-doc-utils gnome-doc-utils gtp l10n.gnome.org/POT gnome-doc-utils/po gnome-2-28 gnome-doc-utils gnome-doc-utils gtp l10n.gnome.org/POT gnome-doc-utils/po -gnome-games gnome-games gtp l10n.gnome.org/POT gnome-games/po gnome-2-28 -gnome-games gnome-games gtp l10n.gnome.org/POT gnome-games/po -gnome-keyring gnome-keyring gtp l10n.gnome.org/POT gnome-keyring/po gnome-2-28 gnome-keyring gnome-keyring gtp l10n.gnome.org/POT gnome-keyring/po -gnome-mag gnome-mag gtp l10n.gnome.org/POT gnome-mag/po gnome-2-28 +gnome-mag gnome-mag gtp l10n.gnome.org/POT gnome-mag/po gnome-2-30 gnome-mag gnome-mag gtp l10n.gnome.org/POT gnome-mag/po gnome-main-menu gnome-main-menu gtp l10n.gnome.org/POT gnome-main-menu/po +gnome-media gnome-media-2.0 gtp l10n.gnome.org/POT gnome-media/po gnome-2-30 gnome-media gnome-media-2.0 gtp l10n.gnome.org/POT gnome-media/po gnome-menus gnome-menus gtp l10n.gnome.org/POT gnome-menus/po -gnome-mount gnome-mount gtp l10n.gnome.org/POT gnome-mount/po gnome-netstatus gnome-netstatus gtp l10n.gnome.org/POT gnome-netstatus/po gnome-nettool gnome-nettool gtp l10n.gnome.org/POT gnome-nettool/po +gnome-packagekit gnome-packagekit gtp l10n.gnome.org/POT gnome-packagekit/po gnome-2-30 gnome-packagekit gnome-packagekit gtp l10n.gnome.org/POT gnome-packagekit/po gnome-panel gnome-panel-2.0 gtp l10n.gnome.org/POT gnome-panel/po gnome-pilot gnome-pilot gtp l10n.gnome.org/POT gnome-pilot/po gnome-pilot-conduits gnome-pilot-conduits gtp l10n.gnome.org/POT gnome-pilot-conduits/po -gnome-power-manager gnome-power-manager gtp l10n.gnome.org/POT gnome-power-manager/po gnome-2-28 +gnome-power-manager gnome-power-manager gtp l10n.gnome.org/POT gnome-power-manager/po gnome-2-30 gnome-power-manager gnome-power-manager gtp l10n.gnome.org/POT gnome-power-manager/po -gnome-screensaver gnome-screensaver gtp l10n.gnome.org/POT gnome-screensaver/po gnome-2-28 +gnome-screensaver gnome-screensaver gtp l10n.gnome.org/POT gnome-screensaver/po gnome-2-30 gnome-screensaver gnome-screensaver gtp l10n.gnome.org/POT gnome-screensaver/po +gnome-session gnome-session-2.0 gtp l10n.gnome.org/POT gnome-session/po gnome-2-30 gnome-session gnome-session-2.0 gtp l10n.gnome.org/POT gnome-session/po -gnome-settings-daemon gnome-settings-daemon gtp l10n.gnome.org/POT gnome-settings-daemon/po gnome-2-28 +gnome-settings-daemon gnome-settings-daemon gtp l10n.gnome.org/POT gnome-settings-daemon/po gnome-2-30 gnome-settings-daemon gnome-settings-daemon gtp l10n.gnome.org/POT gnome-settings-daemon/po gnome-shell gnome-shell gtp l10n.gnome.org/POT gnome-shell/po gnome-system-monitor gnome-system-monitor gtp l10n.gnome.org/POT gnome-system-monitor/po -gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po gnome-2-28 +gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po gnome-2-30 gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po -gnome-themes gnome-themes gtp l10n.gnome.org/POT gnome-themes/po gnome-2-28 +gnome-themes gnome-themes gtp l10n.gnome.org/POT gnome-themes/po gnome-2-30 gnome-themes gnome-themes gtp l10n.gnome.org/POT gnome-themes/po gnome-themes-extras gnome-themes-extras gtp l10n.gnome.org/POT gnome-themes-extras/po -gnome-user-share gnome-user-share gtp l10n.gnome.org/POT gnome-user-share/po gnome-2-28 gnome-user-share gnome-user-share gtp l10n.gnome.org/POT gnome-user-share/po -gnome-utils gnome-utils-2.0 gtp l10n.gnome.org/POT gnome-utils/po gnome-2-28 +gnome-utils gnome-utils-2.0 gtp l10n.gnome.org/POT gnome-utils/po gnome-2-30 gnome-utils gnome-utils-2.0 gtp l10n.gnome.org/POT gnome-utils/po gnome-web-photo gnome-web-photo gtp l10n.gnome.org/POT gnome-web-photo/po gnomeicu gnomeicu gtp l10n.gnome.org/POT gnomeicu/po gnumeric gnumeric gtp l10n.gnome.org/POT gnumeric/po gnumeric gnumeric-functions gtp l10n.gnome.org/POT gnumeric/po-functions -goffice goffice-0.7.13 gtp l10n.gnome.org/POT goffice/po -gok gok gtp l10n.gnome.org/POT gok/po gnome-2-28 +goffice goffice-0.8.2 gtp l10n.gnome.org/POT goffice/po +gok gok gtp l10n.gnome.org/POT gok/po gnome-2-30 gok gok gtp l10n.gnome.org/POT gok/po goobox goobox gtp l10n.gnome.org/POT goobox/po gstreamer-0_10 gstreamer-0.10 gtp l10n.gnome.org/POT gstreamer/po @@ -149,58 +151,62 @@ gstreamer-0_10-plugins-bad gst-plugins-bad-0.10 gtp l10n.gnome.org/POT gstreamer-0_10-plugins-base gst-plugins-base-0.10 gtp l10n.gnome.org/POT gst-plugins-base/po gstreamer-0_10-plugins-good gst-plugins-good-0.10 gtp l10n.gnome.org/POT gst-plugins-good/po gstreamer-0_10-plugins-ugly gst-plugins-ugly-0.10 gtp l10n.gnome.org/POT gst-plugins-ugly/po -# broken: -#gtetrinet gtetrinet gtp l10n.gnome.org/POT gtetrinet/po +gtetrinet gtetrinet gtp l10n.gnome.org/POT gtetrinet/po gthumb gthumb gtp l10n.gnome.org/POT gthumb/po -gtk2 gtk20 gtp l10n.gnome.org/POT gtk+/po gtk-2-18 +gtk-vnc gtk-vnc gtp l10n.gnome.org/POT gtk-vnc/po +gtk2 gtk20 gtp l10n.gnome.org/POT gtk+/po gtk-2-20 gtk2 gtk20 gtp l10n.gnome.org/POT gtk+/po -gtk2 gtk20-properties gtp l10n.gnome.org/POT gtk+/po-properties gtk-2-18 +gtk2 gtk20-properties gtp l10n.gnome.org/POT gtk+/po-properties gtk-2-20 gtk2 gtk20-properties gtp l10n.gnome.org/POT gtk+/po-properties -gtksourceview gtksourceview-2.0 gtp l10n.gnome.org/POT gtksourceview/po gnome-2-28 +gtksourceview gtksourceview-2.0 gtp l10n.gnome.org/POT gtksourceview/po gnome-2-30 gtksourceview gtksourceview-2.0 gtp l10n.gnome.org/POT gtksourceview/po -gucharmap gucharmap gtp l10n.gnome.org/POT gucharmap/po gnome-2-28 +gtranslator gtranslator gtp l10n.gnome.org/POT gtranslator/po +gucharmap gucharmap gtp l10n.gnome.org/POT gucharmap/po gnome-2-30 gucharmap gucharmap gtp l10n.gnome.org/POT gucharmap/po -gvfs gvfs gtp l10n.gnome.org/POT gvfs/po gnome-2-28 gvfs gvfs gtp l10n.gnome.org/POT gvfs/po gwget gwget gtp l10n.gnome.org/POT gwget/po -hamster-applet hamster-applet gtp l10n.gnome.org/POT hamster-applet/po gnome-2-28 +hamster-applet hamster-applet gtp l10n.gnome.org/POT hamster-applet/po gnome-2-30 hamster-applet hamster-applet gtp l10n.gnome.org/POT hamster-applet/po istanbul istanbul gtp l10n.gnome.org/POT istanbul/po +jhbuild jhbuild gtp l10n.gnome.org/POT jhbuild/po last-exit last-exit gtp l10n.gnome.org/POT last-exit/po libbonobo libbonobo-2.0 gtp l10n.gnome.org/POT libbonobo/po libbonoboui libbonoboui-2.0 gtp l10n.gnome.org/POT libbonoboui/po -libgda libgda-4.0 gtp l10n.gnome.org/POT libgda/po +libepc libepc gtp l10n.gnome.org/POT libepc/po libgdata gdata gtp l10n.gnome.org/POT libgdata/po -libgnome libgnome-2.0 gtp l10n.gnome.org/POT libgnome/po gnome-2-28 libgnome libgnome-2.0 gtp l10n.gnome.org/POT libgnome/po +libgnome-keyring libgnome-keyring gtp l10n.gnome.org/POT libgnome-keyring/po libgnomecanvas libgnomecanvas-2.0 gtp l10n.gnome.org/POT libgnomecanvas/po libgnomecups libgnomecups gtp l10n.gnome.org/POT libgnomecups/po libgnomedb libgnomedb-4.0 gtp l10n.gnome.org/POT libgnomedb/po +libgnomekbd libgnomekbd gtp l10n.gnome.org/POT libgnomekbd/po gnome-2-30 libgnomekbd libgnomekbd gtp l10n.gnome.org/POT libgnomekbd/po libgnomeprint libgnomeprint-2.2 gtp l10n.gnome.org/POT libgnomeprint/po libgnomeprintui libgnomeprintui-2.2 gtp l10n.gnome.org/POT libgnomeprintui/po libgnomeui libgnomeui-2.0 gtp l10n.gnome.org/POT libgnomeui/po libgsf libgsf gtp l10n.gnome.org/POT libgsf/po libgtop libgtop-2.0 gtp l10n.gnome.org/POT libgtop/po -libgweather libgweather gtp l10n.gnome.org/POT libgweather/po gnome-2-28 libgweather libgweather gtp l10n.gnome.org/POT libgweather/po +libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations gnome-2-30 +libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations libslab libslab gtp l10n.gnome.org/POT libslab/po libwnck libwnck gtp l10n.gnome.org/POT libwnck/po +meld meld gtp l10n.gnome.org/POT meld/po memprof memprof gtp l10n.gnome.org/POT memprof/po mergeant mergeant gtp l10n.gnome.org/POT mergeant/po -metacity metacity gtp l10n.gnome.org/POT metacity/po gnome-2-28 metacity metacity gtp l10n.gnome.org/POT metacity/po -mousetweaks mousetweaks gtp l10n.gnome.org/POT mousetweaks/po gnome-2-28 +mousetweaks mousetweaks gtp l10n.gnome.org/POT mousetweaks/po gnome-2-30 mousetweaks mousetweaks gtp l10n.gnome.org/POT mousetweaks/po mutter mutter gtp l10n.gnome.org/POT mutter/po -nautilus nautilus gtp l10n.gnome.org/POT nautilus/po gnome-2-28 +nautilus nautilus gtp l10n.gnome.org/POT nautilus/po gnome-2-30 nautilus nautilus gtp l10n.gnome.org/POT nautilus/po -nautilus-cd-burner nautilus-cd-burner gtp l10n.gnome.org/POT nautilus-cd-burner/po nautilus-open-terminal nautilus-open-terminal gtp l10n.gnome.org/POT nautilus-open-terminal/po nautilus-sendto nautilus-sendto gtp l10n.gnome.org/POT nautilus-sendto/po nautilus-share nautilus-share gtp l10n.gnome.org/POT nautilus-share/po nemiver nemiver gtp l10n.gnome.org/POT nemiver/po -orca orca gtp l10n.gnome.org/POT orca/po gnome-2-28 +network-manager-netbook network-manager-netbook gtp l10n.gnome.org/POT network-manager-netbook/po +notification-daemon notification-daemon gtp l10n.gnome.org/POT notification-daemon/po +orca orca gtp l10n.gnome.org/POT orca/po gnome-2-30 orca orca gtp l10n.gnome.org/POT orca/po pan pan gtp l10n.gnome.org/POT pan/po pdfmod pdfmod gtp l10n.gnome.org/POT pdfmod/po @@ -208,29 +214,28 @@ pessulus pessulus gtp l10n.gnome.org/POT planner planner gtp l10n.gnome.org/POT planner/po pybliographer pybliographer gtp l10n.gnome.org/POT pybliographer/po rhythmbox rhythmbox gtp l10n.gnome.org/POT rhythmbox/po -sabayon sabayon gtp l10n.gnome.org/POT sabayon/po gnome-2-28 sabayon sabayon gtp l10n.gnome.org/POT sabayon/po -seahorse seahorse gtp l10n.gnome.org/POT seahorse/po gnome-2-28 seahorse seahorse gtp l10n.gnome.org/POT seahorse/po seahorse-plugins seahorse-plugins gtp l10n.gnome.org/POT seahorse-plugins/po shared-mime-info shared-mime-info gtp l10n.gnome.org/POT shared-mime-info/po sound-juicer sound-juicer gtp l10n.gnome.org/POT sound-juicer/po swfdec-gnome swfdec-gnome gtp l10n.gnome.org/POT swfdec-gnome/po tasque tasque gtp l10n.gnome.org/POT tasque/po -tomboy tomboy gtp l10n.gnome.org/POT tomboy/po gnome-2-28 +tomboy tomboy gtp l10n.gnome.org/POT tomboy/po gnome-2-30 tomboy tomboy gtp l10n.gnome.org/POT tomboy/po -totem totem gtp l10n.gnome.org/POT totem/po gnome-2-28 +totem totem gtp l10n.gnome.org/POT totem/po gnome-2-30 totem totem gtp l10n.gnome.org/POT totem/po totem-pl-parser totem-pl-parser gtp l10n.gnome.org/POT totem-pl-parser/po -vinagre vinagre gtp l10n.gnome.org/POT vinagre/po gnome-2-28 +tracker tracker gtp l10n.gnome.org/POT tracker/po vinagre vinagre gtp l10n.gnome.org/POT vinagre/po vino vino gtp l10n.gnome.org/POT vino/po +vte vte gtp l10n.gnome.org/POT vte/po gnome-2-30 vte vte gtp l10n.gnome.org/POT vte/po xchat-gnome xchat-gnome gtp l10n.gnome.org/POT xchat-gnome/po xdg-user-dirs xdg-user-dirs gtp l10n.gnome.org/POT xdg-user-dirs/po xdg-user-dirs-gtk xdg-user-dirs-gtk gtp l10n.gnome.org/POT xdg-user-dirs-gtk/po xkeyboard-config xkeyboard-config gtp l10n.gnome.org/POT xkeyboard-config/po -yelp yelp gtp l10n.gnome.org/POT yelp/po gnome-2-28 +yelp yelp gtp l10n.gnome.org/POT yelp/po gnome-2-30 yelp yelp gtp l10n.gnome.org/POT yelp/po -zenity zenity gtp l10n.gnome.org/POT zenity/po gnome-2-28 +zenity zenity gtp l10n.gnome.org/POT zenity/po gnome-2-30 zenity zenity gtp l10n.gnome.org/POT zenity/po From 84a9ec465ea9fdee20248e0e66d6219a07a34b3841e27ff844b78e1042ea7783 Mon Sep 17 00:00:00 2001 From: Stanislav Brabec Date: Fri, 4 Jun 2010 10:53:05 +0000 Subject: [PATCH 3/4] Changelog update. OBS-URL: https://build.opensuse.org/package/show/Base:System/translation-update-upstream?expand=0&rev=6 --- translation-update-upstream.changes | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/translation-update-upstream.changes b/translation-update-upstream.changes index 1573c0a..b8ffd4e 100644 --- a/translation-update-upstream.changes +++ b/translation-update-upstream.changes @@ -2,7 +2,12 @@ Fri Jun 4 12:47:12 CEST 2010 - sbrabec@suse.cz - Added the latest upstream and LCN strings. -- Fixed minor bugs in companion scripts. +- Ported fixes from SLE11-SP1: + * Added support for custom pot generator. + * Implemented suppport for LCN as a translation source. + * Implemented mandatory sources with absolute precedence. + * Symlinks to the new name: translation-update-tool. + * Updated translation sources. ------------------------------------------------------------------- Tue Feb 2 18:35:28 CET 2010 - sbrabec@suse.cz From 7a878f0c75d5ec8ae4318d1d3dcf0756af3d1b7c0f39c8ee30744fd8a3acd4be Mon Sep 17 00:00:00 2001 From: OBS User buildservice-autocommit Date: Fri, 4 Jun 2010 12:49:58 +0000 Subject: [PATCH 4/4] Updating link to change in openSUSE:Factory/translation-update-upstream revision 8.0 OBS-URL: https://build.opensuse.org/package/show/Base:System/translation-update-upstream?expand=0&rev=84878a6535be9c00f706076a7758e10f --- translation-update-upstream.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translation-update-upstream.spec b/translation-update-upstream.spec index 4f4314e..a44b0eb 100644 --- a/translation-update-upstream.spec +++ b/translation-update-upstream.spec @@ -1,5 +1,5 @@ # -# spec file for package translation-update-upstream (Version 20100202) +# spec file for package translation-update-upstream (Version 20100603) # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. #