Accepting request 810691 from Base:System
OBS-URL: https://build.opensuse.org/request/show/810691 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/translation-update-upstream?expand=0&rev=42
This commit is contained in:
commit
2bf463815c
@ -9,8 +9,8 @@ set -o errexit
|
||||
|
||||
source ${0%create-tlst-step1-list-all-po-projects.sh}create-tlst.conf
|
||||
|
||||
for i in $BINARY_REPO/*/{$BINARY_ARCH,noarch}/*.rpm ; do rpm -q --queryformat=%{name} -p $i ; echo : ; rpm -qlp $i | grep LC_MESSAGES || : ; done |
|
||||
sed "s~^$BINARY_REPO/suse/($BINARY_ARCH|noarch)~~" >create-tlst-temp-all-po-files.lst
|
||||
for i in $BINARY_REPO/{$BINARY_ARCH,noarch}/*.rpm ; do rpm -q --queryformat=%{name} -p $i ; echo : ; rpm -qlp $i | grep LC_MESSAGES || : ; done |
|
||||
sed "s~^$BINARY_REPO/($BINARY_ARCH|noarch)~~" >create-tlst-temp-all-po-files.lst
|
||||
|
||||
cat create-tlst-temp-all-po-files.lst |
|
||||
sed '
|
||||
|
@ -17,10 +17,10 @@ for REPOSITORY in ${OSC_REPOSITORIES[@]} ; do
|
||||
done | sort -u >create-tlst-temp-osc-projects.lst
|
||||
|
||||
# branches tried for all apps:
|
||||
KNOWN_BRANCHES="gnome-3-30|gnome-3-26"
|
||||
KNOWN_BRANCHES="gnome-3-34|gnome-3-36"
|
||||
# branches tried apps with the same name base:
|
||||
# Do not forget hardcoded strings in the code below!
|
||||
APP_BRANCHES="gimp-2-10|gimp-2-8|gtk-3-24|gtk-3-22|gtk-2-24|glib-2-54"
|
||||
APP_BRANCHES="|gimp-2-8|gimp-2-10|gtk-3-22|gtk-3-24|gtk-2-24|glib-2.62|glib-2.64"
|
||||
# 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
|
||||
@ -53,23 +53,19 @@ curl https://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-54
|
||||
echo glib glib2 glib20 glib-2-62
|
||||
echo glib glib2 glib20 glib-2-64
|
||||
echo glib glib2 glib20 master
|
||||
echo gtk+ gtk2 gtk20 gtk-2-24
|
||||
echo gtk+ gtk2 gtk20 master
|
||||
echo gtk+ gtk2 gtk20-properties gtk-2-24
|
||||
echo gtk+ gtk2 gtk20-properties master
|
||||
echo gtk+ gtk3 gtk30 gtk-3-24
|
||||
echo gtk+ gtk3 gtk30 gtk-3-22
|
||||
echo gtk+ gtk3 gtk30 master
|
||||
echo gtk+ gtk3 gtk30-properties gtk-3-24
|
||||
echo gtk+ gtk3 gtk30-properties gtk-3-22
|
||||
echo gtk+ gtk3 gtk30-properties master
|
||||
echo libgweather libgweather libgweather-locations gnome-3-30
|
||||
echo libgweather libgweather libgweather-locations gnome-3-26
|
||||
echo libgweather libgweather libgweather-locations master
|
||||
echo gnome-phone-manager phonemgr gnome-phone-manager gnome-3-30
|
||||
echo gnome-phone-manager phonemgr gnome-phone-manager gnome-3-26
|
||||
echo gnome-phone-manager phonemgr gnome-phone-manager gnome-3-34
|
||||
echo gnome-phone-manager phonemgr gnome-phone-manager gnome-3-36
|
||||
echo gnome-phone-manager phonemgr gnome-phone-manager master
|
||||
echo network-manager-applet NetworkManager-gnome nm-applet master
|
||||
echo udisks udisks2 udisks2 master
|
||||
|
@ -3,4 +3,4 @@
|
||||
ibus ibus10 git https://github.com/ibus/ibus.git ibus/po
|
||||
eiciel eiciel git https://github.com/rofirrim/eiciel.git eiciel/po
|
||||
libgnomesu libgnomesu-1.0 git https://github.com/openSUSE/libgnomesu.git libgnomesu/po
|
||||
virt-manager virt-manager git https://github.com/virt-manager/virt-manager.git virt-manager/po
|
||||
#UNSUPPORTED-POT: virt-manager virt-manager git https://github.com/virt-manager/virt-manager.git virt-manager/po
|
||||
|
@ -2,4 +2,4 @@
|
||||
#NOT-IN-SLE: NetworkManager-vpnc NetworkManager-vpnc lcn - NetworkManager-vpnc/po SLE12-SP4
|
||||
#NOT-IN-SLE: krb5-ticket-watcher krb5-ticket-watcher lcn - krb5-ticket-watcher/po SLE12-SP4
|
||||
libgnomesu libgnomesu-1.0 lcn - libgnomesu/po SLE12-SP4
|
||||
linuxrc linuxrc lcn - linuxrc/po SLE12-SP4
|
||||
#LOST-I18N-SUPPORT: linuxrc linuxrc lcn - linuxrc/po SLE12-SP4
|
||||
|
@ -2,9 +2,9 @@
|
||||
# Already latest version:
|
||||
#pidgin pidgin tbz http://downloads.sourceforge.net/pidgin/pidgin-2.13.0.tar.bz2 pidgin-2.13.0/po
|
||||
pam Linux-PAM git https://github.com/linux-pam/linux-pam.git linux-pam/po
|
||||
firewalld firewalld git https://github.com/firewalld/firewalld.git firewalld/po
|
||||
virt-manager virt-manager git https://github.com/virt-manager/virt-manager.git virt-manager/po
|
||||
eiciel eiciel git https://github.com/rofirrim/eiciel.git eiciel/po
|
||||
#BROKEN: firewalld firewalld git https://github.com/firewalld/firewalld.git firewalld/po
|
||||
#DUP: virt-manager virt-manager git https://github.com/virt-manager/virt-manager.git virt-manager/po
|
||||
#DUP: eiciel eiciel git https://github.com/rofirrim/eiciel.git eiciel/po
|
||||
# package domain method repository dir branch
|
||||
pam Linux-PAM cvs pam.cvs.sourceforge.net:/cvsroot/pam Linux-PAM/po
|
||||
# Already latest version, and will probably never update:
|
||||
|
@ -1,6 +1,6 @@
|
||||
# package domain method repository dir branch option
|
||||
cracklib cracklib lcn - cracklib/po
|
||||
gnome-packagekit gnome-packagekit lcn - gnome-packagekit/po
|
||||
linuxrc linuxrc lcn - linuxrc/po
|
||||
#LOST-I18N-SUPPORT: linuxrc linuxrc lcn - linuxrc/po
|
||||
pam-config pam-config lcn - pam-config/po
|
||||
pam_krb5 pam_krb5 lcn - pam_krb5/po
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9c177f524d514c9b09e82da4fd1121dbc9481aaf4aed74692cb9f6cfa5b300bc
|
||||
size 245
|
BIN
translation-update-mandatory-20200601.tar.bz2
(Stored with Git LFS)
Normal file
BIN
translation-update-mandatory-20200601.tar.bz2
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0b3166bf3d4a64c4aaf182d26be80fb8292fa7c0318d784bc3a46e0167bd1178
|
||||
size 32872
|
BIN
translation-update-upstream-20200601.tar.bz2
(Stored with Git LFS)
Normal file
BIN
translation-update-upstream-20200601.tar.bz2
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,14 +1,14 @@
|
||||
--- translation-update-upstream-embedded.sh 2018-12-10 22:58:17.369805285 +0100
|
||||
+++ translation-update-upstream-embedded.sh 2018-12-10 23:01:32.309607787 +0100
|
||||
@@ -74,6 +74,7 @@
|
||||
fi
|
||||
--- translation-update-upstream-embedded.sh 2020-01-22 22:19:22.911348880 +0100
|
||||
+++ translation-update-upstream-embedded.sh 2020-01-22 22:39:26.134577525 +0100
|
||||
@@ -85,6 +85,7 @@
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
+BASE_DIR=$PWD
|
||||
DIR=${1:-po}
|
||||
|
||||
if test -z "$3" ; then
|
||||
@@ -202,7 +203,7 @@
|
||||
@@ -259,7 +260,7 @@
|
||||
echo "WARNING: Missing $DOMAIN in translation-update-upstream configuration! No updates available."
|
||||
fi
|
||||
else
|
||||
|
@ -27,7 +27,8 @@ mkdir\
|
||||
TRANSLATION_UPDATE TRANSLATION_UPDATE/translation-update TRANSLATION_UPDATE/TUU\
|
||||
TRANSLATION_UPDATE/NOT_UPDATED \
|
||||
TRANSLATION_UPDATE/UPDATED \
|
||||
TRANSLATION_UPDATE/complete TRANSLATION_UPDATE/rebuilt
|
||||
TRANSLATION_UPDATE/complete TRANSLATION_UPDATE/rebuilt \
|
||||
TRANSLATION_UPDATE/complete/translation-update TRANSLATION_UPDATE/rebuilt/translation-update
|
||||
|
||||
# more tarballs are available => use the latest one
|
||||
# FIXME: Fix 20090213.10 < 20090213.9
|
||||
|
@ -1,3 +1,46 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 10 14:37:34 CET 2020 - sbrabec@suse.com
|
||||
|
||||
- Reset outdated translations and turn translate-update-upstream
|
||||
into dummy (bsc#1172337, boo#1172367).
|
||||
- Drop SLE / Leap discrimination code.
|
||||
- translation-update-upstream.in:
|
||||
* Disable msgmerge. Never cause translation regression, even at
|
||||
cost of superfluous strings (bsc#1160114).
|
||||
* Implement new heuristic: use xgettext. Make it the default
|
||||
(bsc#1160114).
|
||||
* translation-update-upstream-embedded.patch: Update.
|
||||
- upstream-collect.sh supplementary script: Port
|
||||
translation-update-upstream.in changes.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 5 18:49:52 CET 2019 - sbrabec@suse.com
|
||||
|
||||
- upstream-collect.sh supplementary script: Port meson support to
|
||||
the fallback pot extractor (bsc#1095368#c9).
|
||||
- upstream-collect.sh, upstream-collect.conf supplementary script:
|
||||
Evaluate %is_opensuse for target system instead of host
|
||||
(bsc#1095368#c8).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 2 02:48:55 CEST 2019 - sbrabec@suse.com
|
||||
|
||||
- Update to version 20191002 (bsc#1095361, bsc#1095364,
|
||||
bsc#1095368, bsc#1095371, bsc#1095377, bsc#1095379):
|
||||
* Update configuration to be SLE15 SP1 Update compatible.
|
||||
* Add new upstream branches to tlst files.
|
||||
* Update create-tlst-step2-create-gnome_gtp.sh to cover new
|
||||
upstream branches.
|
||||
* Update all strings from upstream and LCN.
|
||||
- upstream-collect.sh supplementary script: Make paths compatible
|
||||
with Tumbleweed.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 29 00:41:19 CET 2019 - sbrabec@suse.com
|
||||
|
||||
- Update to version 20190328:
|
||||
* Translation updates.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 10 22:58:25 CET 2018 - sbrabec@suse.com
|
||||
|
||||
|
@ -1,5 +1,8 @@
|
||||
#! /bin/bash
|
||||
|
||||
echo "No translation-update-upstream data available. Keeping existing translation."
|
||||
exit 0
|
||||
|
||||
set -o errexit
|
||||
shopt -s nullglob
|
||||
|
||||
@ -74,6 +77,17 @@ if test -f meson.build -a ! \( -f ${1:-po}/Makefile.in.in -o -f ${1:-po}/Makefil
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
USE_INTLTOOL=false
|
||||
if test -f configure.ac ; then
|
||||
if grep PROG_INTLTOOL configure.ac ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
if test -f configure.in ; then
|
||||
if grep PROG_INTLTOOL configure.in ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
DIR=${1:-po}
|
||||
|
||||
if test -z "$3" ; then
|
||||
@ -107,10 +121,27 @@ if test -z "$3" ; then
|
||||
cd $DIR
|
||||
else
|
||||
cd $DIR
|
||||
if test -z "$DOMAIN" ; then
|
||||
intltool-update --pot
|
||||
if $USE_INTLTOOL ; then
|
||||
if test -z "$DOMAIN" ; then
|
||||
intltool-update --pot
|
||||
else
|
||||
intltool-update --gettext-package=$DOMAIN --pot
|
||||
fi
|
||||
else
|
||||
intltool-update --gettext-package=$DOMAIN --pot
|
||||
# Fallback: use xgettext with default options except those that we
|
||||
# cannot guess (it can stil fail, as options can be customized).
|
||||
if test -z "$DOMAIN" ; then
|
||||
## Ugly hack! intltool could return invalid po, but its
|
||||
## FindPackageName() can guess domain. Call it to get it.
|
||||
intltool-update --pot
|
||||
for POT in *.pot ; do
|
||||
DOMAIN=${POT%.pot}
|
||||
done
|
||||
fi
|
||||
xgettext --default-domain="$DOMAIN" --directory="$OLDPWD" \
|
||||
--add-comments=TRANSLATORS: --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments \
|
||||
--files-from=./POTFILES.in
|
||||
mv "$DOMAIN.po" "$DOMAIN.pot"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
@ -151,13 +182,29 @@ for POT in *.pot ; do
|
||||
# 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
|
||||
## In theory, we should call msgmerge here, as the
|
||||
## imported file might be outdated. But we have to live
|
||||
## with the fact that the pot file heuristic above
|
||||
## might be incorrect, and the generated pot file is
|
||||
## incomplete. Never make things worse, and skip
|
||||
## msgmerge. Superfluous strings are better than
|
||||
## deleted strings.
|
||||
## In time of writing the priginal code, --compendium
|
||||
## worked around the fact that msgcat prefers empty
|
||||
## string from the first file over translated string
|
||||
## from the second file. Now msgcat behaves logically,
|
||||
## so this step is not needed.
|
||||
#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 ; then
|
||||
msgcat --use-first $PO.header $PO.new2 -o $PO
|
||||
rm $PO.new $PO.new2 $PO.header
|
||||
#if @LIBEXECDIR@/translation-update-upstream/msgheadermerge $PO $PO.new2 $PO.header --mergemode ; then
|
||||
if @LIBEXECDIR@/translation-update-upstream/msgheadermerge $PO $PO.new $PO.header --mergemode ; then
|
||||
#msgcat --use-first $PO.header $PO.new2 -o $PO
|
||||
msgcat --use-first $PO.header -o $PO
|
||||
#rm $PO.new $PO.new2 $PO.header
|
||||
rm $PO.new $PO.header
|
||||
else
|
||||
rm $PO.new $PO.new2
|
||||
#rm $PO.new $PO.new2
|
||||
rm $PO.new
|
||||
echo "WARNING: Update of $PO for $DOMAIN is older than data in package. Skipping."
|
||||
fi
|
||||
else
|
||||
@ -183,13 +230,28 @@ for POT in *.pot ; do
|
||||
# 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
|
||||
## In theory, we should call msgmerge here, as the
|
||||
## imported file might be outdated. But we have to live
|
||||
## with the fact that the pot file heuristic above
|
||||
## might be incorrect, and the generated pot file is
|
||||
## incomplete. Never make things worse, and skip
|
||||
## msgmerge. Superfluous strings are better than
|
||||
## deleted strings.
|
||||
## In time of writing the priginal code, --compendium
|
||||
## worked around the fact that msgcat prefers empty
|
||||
## string from the first file over translated string
|
||||
## from the second file. Now msgcat behaves logically,
|
||||
## so this step is not needed.
|
||||
#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
|
||||
#if ! @LIBEXECDIR@/translation-update-upstream/msgheadermerge $PO $PO.new2 $PO.header --mergemode --continue ; then
|
||||
if ! @LIBEXECDIR@/translation-update-upstream/msgheadermerge $PO $PO.new $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
|
||||
#msgcat --use-first $PO.header $PO.new2 -o $PO
|
||||
msgcat --use-first $PO.header $PO.new -o $PO
|
||||
#rm $PO.new $PO.new2 $PO.header
|
||||
rm $PO.new $PO.header
|
||||
else
|
||||
echo "Adding $PO from translation-update-upstream mandatory source."
|
||||
cp -a $PO_PATH $PO
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package translation-update-upstream
|
||||
#
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
Name: translation-update-upstream
|
||||
Version: 20181128
|
||||
Version: 20200601
|
||||
Release: 0
|
||||
Summary: Tool for Translation Update from Upstream
|
||||
# Ignore cracklib, as it causes build loop cracklib <-> translation-update-upstream
|
||||
@ -93,10 +93,7 @@ sed 's/@LIBEXECDIR@/\$BASE_DIR/g;s:@DATADIR@/translation-update-upstream:\$BASE_
|
||||
chmod +x translation-update-upstream-embedded.sh
|
||||
|
||||
%build
|
||||
%if ! 0%{?is_opensuse}
|
||||
echo "This is a openSUSE only package! Please use SLE version."
|
||||
exit 1
|
||||
%endif
|
||||
. %{_sourcedir}/upstream-collect.conf
|
||||
|
||||
%install
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} $RPM_BUILD_ROOT%{_prefix}/lib/translation-update-upstream
|
||||
@ -137,7 +134,7 @@ set +x
|
||||
cd $RPM_BUILD_ROOT%{_datadir} ;
|
||||
echo translation*/*/*.po | sed 's:.*/::;s:\.po$::' | sort -u
|
||||
for LOCALE in $(set +x ; cd $RPM_BUILD_ROOT%{_datadir} ; ls -1 translation*/*/*/*.po | sed 's:.*/::;s:\.po$::' | sort -u) ; do
|
||||
if ! test -d /usr/share/locale/$LOCALE ; then
|
||||
if ! test -d /usr/share/locale/$LOCALE ; then
|
||||
for file in $RPM_BUILD_ROOT%{_datadir}/translation*/*/*/$LOCALE.po; do
|
||||
# fake it so it looks like removed from %%find_lang
|
||||
package=$(echo $file | sed -e 's,.*translation[^/]*/po/,,; s,/[^/]*.po,,')
|
||||
|
@ -6,11 +6,11 @@
|
||||
# - proposed-translation-fixes repository with yet unreleased changes (if exists; such repo allows us to create a tarball update for translation-update package without rebuild)
|
||||
# - latest patchlevel packages sources (if exists)
|
||||
# - the original gold master (GA) package sources
|
||||
OSC_REPOSITORIES=( openSUSE:Factory )
|
||||
OSC_REPOSITORIES=( openSUSE:Leap:15.2 openSUSE:Leap:15.1:Update openSUSE:Leap:15.1 openSUSE:Leap:15.0:Update openSUSE:Leap:15.0 )
|
||||
|
||||
# OSC_REPOSITORIES array index of the main (fully rebuilt with current translation-update-upstream) repository (starts with 0).
|
||||
# It is typically 0 for Factory based products, 1 for products where 0 is a proposed-translation-fixes repo, 2 for products which are not fully rebuilt before release where 1 represents patchlevel repository.
|
||||
OSC_MAIN_INDEX=0
|
||||
OSC_MAIN_INDEX=4
|
||||
|
||||
# OSC_REPOSITORIES array index of the repository with proposed translation updates that don't appear in the main product (starts with 0). Keep empty if there is no such repository.
|
||||
# It is typically empty for Factory based products, otherwise it points to an unreleased proposed-translation-fixes repository with index 0.
|
||||
|
@ -22,6 +22,9 @@ WORK_DIR=$PWD
|
||||
set -o errexit
|
||||
shopt -s nullglob
|
||||
|
||||
rpm -q obs-service-tar >/dev/null
|
||||
rpm -q obs-service-recompress >/dev/null
|
||||
|
||||
source ${0%.sh}.conf
|
||||
|
||||
function get_pot_name {
|
||||
@ -76,8 +79,19 @@ EOF
|
||||
# Modify some requirements to work without relevant packages installed.
|
||||
s/%{xulrunner_version}/dummy/g
|
||||
s/%{mozilla_ver}/dummy/g
|
||||
s/%{glib2_gsettings_schema_requires}/Requires: dummy/g
|
||||
s/%glib2_gsettings_schema_requires/Requires: dummy/g
|
||||
s/%{gtk2_immodule_requires}/Requires: dummy/g
|
||||
s/%{gtk3_immodule_requires}/Requires: dummy/g
|
||||
s/%{py_requires}/Requires: dummy/g
|
||||
s/%py_requires/Requires: dummy/g
|
||||
s/%kde4_runtime_requires/Requires: dummy/g
|
||||
s/%systemd_requires/Requires: dummy/g
|
||||
s/%gconf_schemas_prereq/Requires: dummy/g
|
||||
s/%{gconf_schemas_prereq}/Requires: dummy/g
|
||||
s/%glib2_gio_module_requires/Requires: dummy/g
|
||||
s/%{glib2_gio_module_requires}/Requires: dummy/g
|
||||
s/%{_bluezVersion}/0/g
|
||||
' *.spec
|
||||
eval rpmbuild --macros=/usr/lib/rpm/macros:/usr/lib/rpm/suse_macros:/usr/lib/rpm/suse/macros:/usr/lib/rpm/macros.d/macros.systemd:/usr/lib/rpm/platform/$(uname -i)-linux/macros:/etc/rpm/\\\*:$RPMDIR/macros --nodeps -bp ${*:-*.spec}
|
||||
rm -rf $RPMDIR
|
||||
@ -117,20 +131,45 @@ mkdir -p ~/.upstream-collect.tmp
|
||||
cat >~/.upstream-collect.tmp/translation-update-upstream <<EOF
|
||||
#!/bin/sh
|
||||
echo "Dummy translation-update-upstream for upstream-collect.sh. Skipping merge of old translations."
|
||||
|
||||
DOMAIN=\$2
|
||||
USE_MESON=false
|
||||
if test -f meson.build -a ! \( -f \${1:-po}/Makefile.in.in -o -f \${1:-po}/Makefile.in -o -f \${1:-po}/Makefile \); then
|
||||
echo "Switching to meson style pot file extraction."
|
||||
if test -n "\$2" ; then
|
||||
DOMAIN="\$2"
|
||||
else
|
||||
if test -f meson.build -a ! \( -f \${1:-po}/Makefile.in.in -o -f \${1:-po}/Makefile.in -o -f \${1:-po}/Makefile \) ; then
|
||||
echo "Switching to meson style pot file extraction." >&2
|
||||
USE_MESON=true
|
||||
if test -z "\$DOMAIN" ; then
|
||||
MESON_PROJECT="\$(sed -n "/^project(/,+1{1{h;d};2{x;G}};s/^project[[:space:]]*([[:space:]]*'\([^']*\)'.*/\1/p" <meson.build)"
|
||||
DOMAIN="\$(sed -n "s/meson.project_name[[:space:]]*([[:space:]]*)/'\$MESON_PROJECT'/g;s/.*\\\\.set_quoted[[:space:]]*('GETTEXT_PACKAGE',[[:space:]]'\([^']*\)').*/\1/p" <meson.build)"
|
||||
DOMAIN="\$(sed -n "s/meson.project_name[[:space:]]*([[:space:]]*)/'\$MESON_PROJECT'/g;s/.*\.set_quoted[[:space:]]*('GETTEXT_PACKAGE',[[:space:]]'\([^']*\)').*/\1/p" <meson.build)"
|
||||
if test -z "\$DOMAIN" ; then
|
||||
if ! grep -q GETTEXT_PACKAGE meson.build ; then
|
||||
DOMAIN="\$MESON_PROJECT"
|
||||
else
|
||||
echo "Error: Gettext domain cannot be determined." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if test -f \${1:-po}/POTFILES ; then
|
||||
POTFILES="\$PWD/\${1:-po}/POTFILES"
|
||||
else
|
||||
POTFILES="\$PWD/\${1:-po}/POTFILES.in"
|
||||
fi
|
||||
USE_INTLTOOL=false
|
||||
if test -f configure.ac ; then
|
||||
if grep PROG_INTLTOOL configure.ac ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
if test -f configure.in ; then
|
||||
if grep PROG_INTLTOOL configure.in ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
DIR=\${1:-po}
|
||||
|
||||
if test -z "\$3" ; then
|
||||
if \$USE_MESON ; then
|
||||
if test -f POTFILES ; then
|
||||
POTFILES="\$PWD/\${1:-po}/POTFILES"
|
||||
else
|
||||
POTFILES="\$PWD/\${1:-po}/POTFILES.in"
|
||||
fi
|
||||
echo "cd \\"\$PWD\\"
|
||||
xgettext --package-name=\\"\$DOMAIN\\"\\\\
|
||||
-p \\"\$PWD\\"\\\\
|
||||
@ -155,8 +194,34 @@ xgettext --package-name=\\"\$DOMAIN\\"\\\\
|
||||
--keyword=g_dpgettext2:2c,3\\\\
|
||||
--keyword=_\\\\
|
||||
--keyword=g_dcgettext:2" >\${1:-po}/.translation-update-upstream-implemented
|
||||
else
|
||||
if \$USE_INTLTOOL ; then
|
||||
if test -z "\$DOMAIN" ; then
|
||||
echo "intltool-update --pot" >\${1:-po}/.translation-update-upstream-implemented
|
||||
else
|
||||
intltool-update --gettext-package=\$DOMAIN --pot
|
||||
echo "intltool-update --gettext-package=\$DOMAIN --pot" >\${1:-po}/.translation-update-upstream-implemented
|
||||
fi
|
||||
else
|
||||
# Fallback: use xgettext with default options except those that we
|
||||
# cannot guess (it can stil fail, as options can be customized).
|
||||
echo "cd \\"\$DIR\\"
|
||||
if test -z \\"\$DOMAIN\\" ; then
|
||||
## Ugly hack! intltool could return invalid po, but its
|
||||
## FindPackageName() can guess domain. Call it to get it.
|
||||
intltool-update --pot
|
||||
for POT in *.pot ; do
|
||||
DOMAIN=\\\${POT%.pot}
|
||||
done
|
||||
fi
|
||||
xgettext --default-domain=\\"\$DOMAIN\\" --directory=\\"\$OLDPWD\\" \\\\
|
||||
--add-comments=TRANSLATORS: --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments \\\\
|
||||
--files-from=./POTFILES.in
|
||||
mv \\"\\\$DOMAIN.po\\" \\"\\\$DOMAIN.pot\\"" >\${1:-po}/.translation-update-upstream-implemented
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo \${3:-intltool-update\${2+ --gettext-package=\$2} --pot} >\${1:-po}/.translation-update-upstream-implemented
|
||||
echo \$3 >\${1:-po}/.translation-update-upstream-implemented
|
||||
fi
|
||||
cd \${1:-po}
|
||||
# Generate and save a copy of the pot file now and compare later.
|
||||
@ -310,6 +375,15 @@ for TLST in *.tlst ; do
|
||||
echo "Trying to check-out PACKAGES $PACKAGE from $OSC_REPOSITORY..."
|
||||
# FIXME: When obs-service-download_url appears in Factory, use --source-service-files
|
||||
if osc ${OSC_APIURL:+--apiurl=$OSC_APIURL} checkout --server-side-source-service-files --expand-link $OSC_REPOSITORY $PACKAGE >gnome-patch-translation-collect-tmp.log 2>&1 ; then
|
||||
cd $OSC_REPOSITORY/$PACKAGE
|
||||
if test -f _service ; then
|
||||
for FILE in *.obscpio ; do
|
||||
cpio -d -i <$FILE
|
||||
done
|
||||
sed -i '/<service .*mode="disabled"\(\|.*[^\/]\)>/,/<\/service>/d;/<service .*mode="disabled".*\/>/d;s/mode="buildtime"//' _service
|
||||
osc service runall
|
||||
fi
|
||||
cd "$OLDPWD"
|
||||
mv $OSC_REPOSITORY/$PACKAGE $WORK_DIR/PACKAGES/
|
||||
for FILE in $WORK_DIR/PACKAGES/$PACKAGE/_service\:download_url\:* ; do
|
||||
mv "$FILE" "${FILE/_service:download_url:/}"
|
||||
@ -383,19 +457,89 @@ for TLST in *.tlst ; do
|
||||
else
|
||||
echo "$RPMPODIR: Missing or incorrect translation-update-upstream in the spec file."
|
||||
# translation-update-upstream is implemented, try the default with the upstream domain:
|
||||
if intltool-update --gettext-package=$DOMAIN --pot ; then
|
||||
get_pot_name
|
||||
cd ..
|
||||
RC=0
|
||||
if test -f meson.build -a ! \( -f po/Makefile.in.in -o -f po/Makefile.in -o -f po/Makefile \); then
|
||||
echo "Switching to meson style pot file extraction."
|
||||
MESON_PROJECT="$(sed -n "/^project(/,+1{1{h;d};2{x;G}};s/^project[[:space:]]*([[:space:]]*'\([^']*\)'.*/\1/p" <meson.build)"
|
||||
DOMAIN="$(sed -n "s/meson.project_name[[:space:]]*([[:space:]]*)/'$MESON_PROJECT'/g;s/.*\\.set_quoted[[:space:]]*('GETTEXT_PACKAGE',[[:space:]]'\([^']*\)').*/\1/p" <meson.build)"
|
||||
if test -f po/POTFILES ; then
|
||||
POTFILES="$PWD/po/POTFILES"
|
||||
else
|
||||
POTFILES="$PWD/po/POTFILES.in"
|
||||
fi
|
||||
xgettext --package-name="$DOMAIN"\
|
||||
-p "$PWD"\
|
||||
-f "$POTFILES"\
|
||||
-D "$PWD"\
|
||||
-k_ -o "$PWD/po/$DOMAIN.pot"\
|
||||
--keyword=NC_:1c,2\
|
||||
--flag=g_strdup_printf:1:c-format\
|
||||
--flag=g_set_error:4:c-format\
|
||||
--flag=g_dngettext:2:pass-c-format\
|
||||
--flag=g_string_printf:2:c-format\
|
||||
--add-comments\
|
||||
--from-code=UTF-8\
|
||||
--keyword=C_:1c,2\
|
||||
--flag=N_:1:pass-c-format\
|
||||
--flag=g_string_append_printf:2:c-format\
|
||||
--flag=C_:2:pass-c-format\
|
||||
--keyword=N_\
|
||||
--flag=g_error_new:3:c-format\
|
||||
--flag=NC_:2:pass-c-format\
|
||||
--keyword=g_dngettext:2,3\
|
||||
--keyword=g_dpgettext2:2c,3\
|
||||
--keyword=_\
|
||||
--keyword=g_dcgettext:2
|
||||
RC=$?
|
||||
cd -
|
||||
else
|
||||
cd -
|
||||
USE_INTLTOOL=false
|
||||
if test -f configure.ac ; then
|
||||
if grep PROG_INTLTOOL configure.ac ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
if test -f configure.in ; then
|
||||
if grep PROG_INTLTOOL configure.in ; then
|
||||
USE_INTLTOOL=true
|
||||
fi
|
||||
fi
|
||||
if $USE_INTLTOOL ; then
|
||||
if test -z "$DOMAIN" ; then
|
||||
intltool-update --pot
|
||||
else
|
||||
intltool-update --gettext-package=$DOMAIN --pot
|
||||
fi
|
||||
else
|
||||
# Fallback: use xgettext with default options except those that we
|
||||
# cannot guess (it can stil fail, as options can be customized).
|
||||
if test -z "$DOMAIN" ; then
|
||||
## Ugly hack! intltool could return invalid po, but its
|
||||
## FindPackageName() can guess domain. Call it to get it.
|
||||
if ! intltool-update --pot ; then
|
||||
echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE domain=$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"
|
||||
STATUS=TUU_BROKEN
|
||||
mkdir -p $WORK_DIR/STAMPS/$PACKAGE/$DOMAIN/$METHOD/${REPO//[\/:.]/_}/$REPODIR/${BRANCH:-__HEAD__}
|
||||
# However we cannot do anything, build dir is successfully processed.
|
||||
touch $WORK_DIR/STAMPS/$PACKAGE/.builddir_ok
|
||||
continue
|
||||
fi
|
||||
for POT in *.pot ; do
|
||||
DOMAIN=${POT%.pot}
|
||||
done
|
||||
fi
|
||||
xgettext --default-domain="$DOMAIN" --directory="$OLDPWD" \
|
||||
--add-comments=TRANSLATORS: --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments \
|
||||
--files-from=./POTFILES.in
|
||||
mv "$DOMAIN.po" "$DOMAIN.pot"
|
||||
fi
|
||||
get_pot_name
|
||||
REAL_DOMAIN=${POT%.pot}
|
||||
echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE domain=$DOMAIN gettext-package=$REAL_DOMAIN method=$METHOD repository=$REPO directory=$DIR branch=${BRANCH:(default)}: packaging error, package does not call translation-update-upstream properly"
|
||||
STATUS=TUU_NOT_CALLED
|
||||
cp -a $DOMAIN.pot $WORK_DIR/pot/
|
||||
else
|
||||
echo >>$WORK_DIR/upstream-collect.log "package=$PACKAGE domain=$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"
|
||||
STATUS=TUU_BROKEN
|
||||
mkdir -p $WORK_DIR/STAMPS/$PACKAGE/$DOMAIN/$METHOD/${REPO//[\/:.]/_}/$REPODIR/${BRANCH:-__HEAD__}
|
||||
# However we cannot do anything, build dir is successfully processed.
|
||||
touch $WORK_DIR/STAMPS/$PACKAGE/.builddir_ok
|
||||
continue
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -440,10 +584,10 @@ for TLST in *.tlst ; do
|
||||
cgit )
|
||||
# Some tricks to be able to recycle git:// URI
|
||||
CGIT_URI=$REPO
|
||||
CGIT_URI=${CGIT_URI/git:\/\/anongit./http://cgit.}
|
||||
CGIT_URI=${CGIT_URI/git:\/\//http://}
|
||||
CGIT_URI=${CGIT_URI/git:\/\/anongit./https://cgit.}
|
||||
CGIT_URI=${CGIT_URI/git:\/\//https://}
|
||||
CGIT_BRANCH=${BRANCH:+?id=$BRANCH}
|
||||
CGIT_SERVER=${CGIT_URI#http://}
|
||||
CGIT_SERVER=${CGIT_URI#https://}
|
||||
CGIT_SERVER=${CGIT_SERVER%%/*}
|
||||
curl $CGIT_URI/tree/${REPODIR#*/}$CGIT_BRANCH | sed -n 's:^.*class='\''ls-blob[^'\'']*'\'' href='\''\([^'\'']*\)'\''.*$:\1:p' |
|
||||
while read ; do
|
||||
|
@ -1,4 +1,4 @@
|
||||
# This file was generated Tue Nov 27 19:04:15 CET 2018 by create-tlst-step2-create-gnome_gtp.sh.
|
||||
# This file was generated Sun Mar 29 03:21:28 CEST 2020 by create-tlst-step2-create-gnome_gtp.sh.
|
||||
# package domain method repository dir branch
|
||||
AppStream appstream gtp l10n.gnome.org/POT appstream/po
|
||||
ModemManager ModemManager gtp l10n.gnome.org/POT ModemManager/po
|
||||
@ -12,10 +12,12 @@ PackageKit PackageKit gtp l
|
||||
accountsservice accounts-service gtp l10n.gnome.org/POT accountsservice/po
|
||||
alacarte alacarte gtp l10n.gnome.org/POT alacarte/po
|
||||
appstream-glib appstream-glib gtp l10n.gnome.org/POT appstream-glib/po
|
||||
at-spi2-core at-spi2-core gtp l10n.gnome.org/POT at-spi2-core/po gnome-3-34
|
||||
at-spi2-core at-spi2-core gtp l10n.gnome.org/POT at-spi2-core/po
|
||||
atk atk10 gtp l10n.gnome.org/POT atk/po gnome-3-34
|
||||
atk atk10 gtp l10n.gnome.org/POT atk/po
|
||||
avahi avahi gtp l10n.gnome.org/POT avahi/po
|
||||
baobab baobab gtp l10n.gnome.org/POT baobab/po gnome-3-30
|
||||
baobab baobab gtp l10n.gnome.org/POT baobab/po gnome-3-34
|
||||
baobab baobab gtp l10n.gnome.org/POT baobab/po
|
||||
brasero brasero gtp l10n.gnome.org/POT brasero/po
|
||||
caribou caribou gtp l10n.gnome.org/POT caribou/po
|
||||
@ -26,151 +28,176 @@ cogl cogl gtp l
|
||||
colord colord gtp l10n.gnome.org/POT colord/po
|
||||
cups-pk-helper cups-pk-helper gtp l10n.gnome.org/POT cups-pk-helper/po
|
||||
dasher dasher gtp l10n.gnome.org/POT dasher/po
|
||||
dconf-editor dconf gtp l10n.gnome.org/POT dconf-editor/po gnome-3-30
|
||||
dconf-editor dconf gtp l10n.gnome.org/POT dconf-editor/po
|
||||
devhelp devhelp gtp l10n.gnome.org/POT devhelp/po gnome-3-30
|
||||
dconf-editor dconf-editor gtp l10n.gnome.org/POT dconf-editor/po gnome-3-34
|
||||
dconf-editor dconf-editor gtp l10n.gnome.org/POT dconf-editor/po gnome-3-36
|
||||
dconf-editor dconf-editor gtp l10n.gnome.org/POT dconf-editor/po
|
||||
devhelp devhelp gtp l10n.gnome.org/POT devhelp/po gnome-3-34
|
||||
devhelp devhelp gtp l10n.gnome.org/POT devhelp/po
|
||||
dia dia gtp l10n.gnome.org/POT dia/po
|
||||
ekiga ekiga gtp l10n.gnome.org/POT ekiga/po
|
||||
eog eog gtp l10n.gnome.org/POT eog/po gnome-3-34
|
||||
eog eog gtp l10n.gnome.org/POT eog/po
|
||||
evince evince gtp l10n.gnome.org/POT evince/po gnome-3-30
|
||||
evince evince gtp l10n.gnome.org/POT evince/po gnome-3-34
|
||||
evince evince gtp l10n.gnome.org/POT evince/po
|
||||
evolution evolution gtp l10n.gnome.org/POT evolution/po gnome-3-30
|
||||
evolution evolution gtp l10n.gnome.org/POT evolution/po gnome-3-34
|
||||
evolution evolution gtp l10n.gnome.org/POT evolution/po gnome-3-36
|
||||
evolution evolution gtp l10n.gnome.org/POT evolution/po
|
||||
evolution-data-server evolution-data-server gtp l10n.gnome.org/POT evolution-data-server/po gnome-3-30
|
||||
evolution-data-server evolution-data-server gtp l10n.gnome.org/POT evolution-data-server/po gnome-3-34
|
||||
evolution-data-server evolution-data-server gtp l10n.gnome.org/POT evolution-data-server/po gnome-3-36
|
||||
evolution-data-server evolution-data-server gtp l10n.gnome.org/POT evolution-data-server/po
|
||||
evolution-ews evolution-ews gtp l10n.gnome.org/POT evolution-ews/po gnome-3-30
|
||||
evolution-ews evolution-ews gtp l10n.gnome.org/POT evolution-ews/po gnome-3-34
|
||||
evolution-ews evolution-ews gtp l10n.gnome.org/POT evolution-ews/po gnome-3-36
|
||||
evolution-ews evolution-ews gtp l10n.gnome.org/POT evolution-ews/po
|
||||
file-roller file-roller gtp l10n.gnome.org/POT file-roller/po gnome-3-30
|
||||
file-roller file-roller gtp l10n.gnome.org/POT file-roller/po
|
||||
flatpak flatpak gtp l10n.gnome.org/POT flatpak/po
|
||||
folks folks gtp l10n.gnome.org/POT folks/po
|
||||
fwupd fwupd gtp l10n.gnome.org/POT fwupd/po
|
||||
gcab gcab gtp l10n.gnome.org/POT gcab/po
|
||||
gconf2 GConf2 gtp l10n.gnome.org/POT gconf/po
|
||||
gcr gcr gtp l10n.gnome.org/POT gcr/po gnome-3-34
|
||||
gcr gcr gtp l10n.gnome.org/POT gcr/po gnome-3-36
|
||||
gcr gcr gtp l10n.gnome.org/POT gcr/po
|
||||
gdk-pixbuf gdk-pixbuf gtp l10n.gnome.org/POT gdk-pixbuf/po
|
||||
gdm gdm gtp l10n.gnome.org/POT gdm/po gnome-3-30
|
||||
gdm gdm gtp l10n.gnome.org/POT gdm/po
|
||||
gedit gedit gtp l10n.gnome.org/POT gedit/po gnome-3-30
|
||||
gedit gedit gtp l10n.gnome.org/POT gedit/po gnome-3-34
|
||||
gedit gedit gtp l10n.gnome.org/POT gedit/po gnome-3-36
|
||||
gedit gedit gtp l10n.gnome.org/POT gedit/po
|
||||
ghex ghex-3.0 gtp l10n.gnome.org/POT ghex/po
|
||||
gimp gimp20 gtp l10n.gnome.org/POT gimp/po gimp-2-10
|
||||
gimp gimp20 gtp l10n.gnome.org/POT gimp/po
|
||||
gimp gimp20-libgimp gtp l10n.gnome.org/POT gimp/po-libgimp gimp-2-10
|
||||
gimp gimp20-libgimp gtp l10n.gnome.org/POT gimp/po-libgimp
|
||||
gimp gimp20-python gtp l10n.gnome.org/POT gimp/po-python gimp-2-10
|
||||
gimp gimp20-python gtp l10n.gnome.org/POT gimp/po-python
|
||||
gimp gimp20-script-fu gtp l10n.gnome.org/POT gimp/po-script-fu gimp-2-10
|
||||
gimp gimp20-script-fu gtp l10n.gnome.org/POT gimp/po-script-fu
|
||||
gimp gimp20-std-plug-ins gtp l10n.gnome.org/POT gimp/po-plug-ins gimp-2-10
|
||||
gimp gimp20-std-plug-ins gtp l10n.gnome.org/POT gimp/po-plug-ins
|
||||
gimp gimp20-tips gtp l10n.gnome.org/POT gimp/po-tips gimp-2-10
|
||||
gimp gimp20-tips gtp l10n.gnome.org/POT gimp/po-tips
|
||||
glade glade gtp l10n.gnome.org/POT glade/po
|
||||
glib-networking glib-networking gtp l10n.gnome.org/POT glib-networking/po glib-2-54
|
||||
glib-networking glib-networking gtp l10n.gnome.org/POT glib-networking/po
|
||||
glib2 glib20 gtp l10n.gnome.org/POT glib/po glib-2-54
|
||||
glib2 glib20 gtp l10n.gnome.org/POT glib/po
|
||||
gnome-bluetooth gnome-bluetooth2 gtp l10n.gnome.org/POT gnome-bluetooth/po
|
||||
gnome-builder gnome-builder gtp l10n.gnome.org/POT gnome-builder/po
|
||||
gnome-calculator gnome-calculator gtp l10n.gnome.org/POT gnome-calculator/po gnome-3-30
|
||||
gnome-calculator gnome-calculator gtp l10n.gnome.org/POT gnome-calculator/po gnome-3-34
|
||||
gnome-calculator gnome-calculator gtp l10n.gnome.org/POT gnome-calculator/po
|
||||
gnome-characters org.gnome.Characters gtp l10n.gnome.org/POT gnome-characters/po gnome-3-30
|
||||
gnome-characters org.gnome.Characters gtp l10n.gnome.org/POT gnome-characters/po
|
||||
gnome-clocks gnome-clocks gtp l10n.gnome.org/POT gnome-clocks/po gnome-3-30
|
||||
gnome-clocks gnome-clocks gtp l10n.gnome.org/POT gnome-clocks/po gnome-3-34
|
||||
gnome-clocks gnome-clocks gtp l10n.gnome.org/POT gnome-clocks/po gnome-3-36
|
||||
gnome-clocks gnome-clocks gtp l10n.gnome.org/POT gnome-clocks/po
|
||||
gnome-color-manager gnome-color-manager gtp l10n.gnome.org/POT gnome-color-manager/po
|
||||
gnome-contacts gnome-contacts gtp l10n.gnome.org/POT gnome-contacts/po gnome-3-30
|
||||
gnome-contacts gnome-contacts gtp l10n.gnome.org/POT gnome-contacts/po gnome-3-34
|
||||
gnome-contacts gnome-contacts gtp l10n.gnome.org/POT gnome-contacts/po gnome-3-36
|
||||
gnome-contacts gnome-contacts gtp l10n.gnome.org/POT gnome-contacts/po
|
||||
gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-30
|
||||
gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-34
|
||||
gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-36
|
||||
gnome-control-center gnome-control-center-2.0 gtp l10n.gnome.org/POT gnome-control-center/po
|
||||
gnome-control-center gnome-control-center-2.0-timezones gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-30
|
||||
gnome-control-center gnome-control-center-2.0-timezones gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-34
|
||||
gnome-control-center gnome-control-center-2.0-timezones gtp l10n.gnome.org/POT gnome-control-center/po gnome-3-36
|
||||
gnome-control-center gnome-control-center-2.0-timezones gtp l10n.gnome.org/POT gnome-control-center/po
|
||||
gnome-desktop gnome-desktop-3.0 gtp l10n.gnome.org/POT gnome-desktop/po gnome-3-30
|
||||
gnome-desktop gnome-desktop-3.0 gtp l10n.gnome.org/POT gnome-desktop/po gnome-3-34
|
||||
gnome-desktop gnome-desktop-3.0 gtp l10n.gnome.org/POT gnome-desktop/po gnome-3-36
|
||||
gnome-desktop gnome-desktop-3.0 gtp l10n.gnome.org/POT gnome-desktop/po
|
||||
gnome-disk-utility gnome-disk-utility gtp l10n.gnome.org/POT gnome-disk-utility/po gnome-3-30
|
||||
gnome-disk-utility gnome-disk-utility gtp l10n.gnome.org/POT gnome-disk-utility/po gnome-3-34
|
||||
gnome-disk-utility gnome-disk-utility gtp l10n.gnome.org/POT gnome-disk-utility/po gnome-3-36
|
||||
gnome-disk-utility gnome-disk-utility gtp l10n.gnome.org/POT gnome-disk-utility/po
|
||||
gnome-documents gnome-documents gtp l10n.gnome.org/POT gnome-documents/po gnome-3-30
|
||||
gnome-documents gnome-documents gtp l10n.gnome.org/POT gnome-documents/po
|
||||
gnome-initial-setup gnome-initial-setup gtp l10n.gnome.org/POT gnome-initial-setup/po gnome-3-30
|
||||
gnome-initial-setup gnome-initial-setup gtp l10n.gnome.org/POT gnome-initial-setup/po gnome-3-34
|
||||
gnome-initial-setup gnome-initial-setup gtp l10n.gnome.org/POT gnome-initial-setup/po gnome-3-36
|
||||
gnome-initial-setup gnome-initial-setup gtp l10n.gnome.org/POT gnome-initial-setup/po
|
||||
gnome-keyring gnome-keyring gtp l10n.gnome.org/POT gnome-keyring/po gnome-3-34
|
||||
gnome-keyring gnome-keyring gtp l10n.gnome.org/POT gnome-keyring/po
|
||||
gnome-logs gnome-logs gtp l10n.gnome.org/POT gnome-logs/po gnome-3-30
|
||||
gnome-logs gnome-logs gtp l10n.gnome.org/POT gnome-logs/po
|
||||
gnome-menus gnome-menus-3.0 gtp l10n.gnome.org/POT gnome-menus/po
|
||||
gnome-music gnome-music gtp l10n.gnome.org/POT gnome-music/po gnome-3-30
|
||||
gnome-music gnome-music gtp l10n.gnome.org/POT gnome-music/po
|
||||
gnome-online-accounts gnome-online-accounts gtp l10n.gnome.org/POT gnome-online-accounts/po gnome-3-30
|
||||
gnome-menus gnome-menus gtp l10n.gnome.org/POT gnome-menus/po
|
||||
gnome-music org.gnome.Music gtp l10n.gnome.org/POT gnome-music/po gnome-3-34
|
||||
gnome-music org.gnome.Music gtp l10n.gnome.org/POT gnome-music/po gnome-3-36
|
||||
gnome-music org.gnome.Music gtp l10n.gnome.org/POT gnome-music/po
|
||||
gnome-online-accounts gnome-online-accounts gtp l10n.gnome.org/POT gnome-online-accounts/po gnome-3-34
|
||||
gnome-online-accounts gnome-online-accounts gtp l10n.gnome.org/POT gnome-online-accounts/po gnome-3-36
|
||||
gnome-online-accounts gnome-online-accounts gtp l10n.gnome.org/POT gnome-online-accounts/po
|
||||
gnome-packagekit gnome-packagekit gtp l10n.gnome.org/POT gnome-packagekit/po
|
||||
gnome-photos gnome-photos gtp l10n.gnome.org/POT gnome-photos/po gnome-3-30
|
||||
gnome-photos gnome-photos gtp l10n.gnome.org/POT gnome-photos/po gnome-3-34
|
||||
gnome-photos gnome-photos gtp l10n.gnome.org/POT gnome-photos/po
|
||||
gnome-power-manager gnome-power-manager gtp l10n.gnome.org/POT gnome-power-manager/po
|
||||
gnome-screenshot gnome-screenshot gtp l10n.gnome.org/POT gnome-screenshot/po gnome-3-30
|
||||
gnome-screenshot gnome-screenshot gtp l10n.gnome.org/POT gnome-screenshot/po gnome-3-36
|
||||
gnome-screenshot gnome-screenshot gtp l10n.gnome.org/POT gnome-screenshot/po
|
||||
gnome-session gnome-session-3.0 gtp l10n.gnome.org/POT gnome-session/po gnome-3-34
|
||||
gnome-session gnome-session-3.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-3-30
|
||||
gnome-settings-daemon gnome-settings-daemon gtp l10n.gnome.org/POT gnome-settings-daemon/po gnome-3-34
|
||||
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-3-30
|
||||
gnome-shell gnome-shell gtp l10n.gnome.org/POT gnome-shell/po gnome-3-34
|
||||
gnome-shell gnome-shell gtp l10n.gnome.org/POT gnome-shell/po
|
||||
gnome-software gnome-software gtp l10n.gnome.org/POT gnome-software/po gnome-3-30
|
||||
gnome-software gnome-software gtp l10n.gnome.org/POT gnome-software/po gnome-3-34
|
||||
gnome-software gnome-software gtp l10n.gnome.org/POT gnome-software/po
|
||||
gnome-system-monitor gnome-system-monitor gtp l10n.gnome.org/POT gnome-system-monitor/po gnome-3-34
|
||||
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-3-30
|
||||
gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po gnome-3-34
|
||||
gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po gnome-3-36
|
||||
gnome-terminal gnome-terminal gtp l10n.gnome.org/POT gnome-terminal/po
|
||||
gnome-tweak-tool gnome-tweak-tool gtp l10n.gnome.org/POT gnome-tweak-tool/po
|
||||
gnome-weather org.gnome.Weather gtp l10n.gnome.org/POT gnome-weather/po gnome-3-34
|
||||
gnome-weather org.gnome.Weather gtp l10n.gnome.org/POT gnome-weather/po
|
||||
gnote gnote gtp l10n.gnome.org/POT gnote/po gnome-3-30
|
||||
gnote gnote gtp l10n.gnome.org/POT gnote/po gnome-3-34
|
||||
gnote gnote gtp l10n.gnome.org/POT gnote/po
|
||||
grilo grilo gtp l10n.gnome.org/POT grilo/po
|
||||
grilo-plugins grilo-plugins gtp l10n.gnome.org/POT grilo-plugins/po
|
||||
gsettings-desktop-schemas gsettings-desktop-schemas gtp l10n.gnome.org/POT gsettings-desktop-schemas/po gnome-3-34
|
||||
gsettings-desktop-schemas gsettings-desktop-schemas gtp l10n.gnome.org/POT gsettings-desktop-schemas/po
|
||||
gspell gspell-1 gtp l10n.gnome.org/POT gspell/po
|
||||
gstreamer gstreamer-1.0 gtp l10n.gnome.org/POT gstreamer/po
|
||||
gtk-vnc gtk-vnc gtp l10n.gnome.org/POT gtk-vnc/po
|
||||
gtk2 gtk20 gtp l10n.gnome.org/POT gtk+/po gtk-2-24
|
||||
gtk2 gtk20 gtp l10n.gnome.org/POT gtk+/po
|
||||
gtk2 gtk20-properties gtp l10n.gnome.org/POT gtk+/po-properties gtk-2-24
|
||||
gtk2 gtk20-properties gtp l10n.gnome.org/POT gtk+/po-properties
|
||||
gtk3 gtk30 gtp l10n.gnome.org/POT gtk+/po gtk-3-22
|
||||
gtk3 gtk30 gtp l10n.gnome.org/POT gtk+/po gtk-3-24
|
||||
gtk3 gtk30 gtp l10n.gnome.org/POT gtk+/po
|
||||
gtk3 gtk30-properties gtp l10n.gnome.org/POT gtk+/po gtk-3-22
|
||||
gtk3 gtk30-properties gtp l10n.gnome.org/POT gtk+/po gtk-3-24
|
||||
gtk3 gtk30-properties gtp l10n.gnome.org/POT gtk+/po
|
||||
gtksourceview gtksourceview-3.0 gtp l10n.gnome.org/POT gtksourceview/po
|
||||
gvfs gvfs gtp l10n.gnome.org/POT gvfs/po gnome-3-30
|
||||
gvfs gvfs gtp l10n.gnome.org/POT gvfs/po gnome-3-34
|
||||
gvfs gvfs gtp l10n.gnome.org/POT gvfs/po
|
||||
json-glib json-glib-1.0 gtp l10n.gnome.org/POT json-glib/po
|
||||
libcryptui cryptui gtp l10n.gnome.org/POT libcryptui/po
|
||||
libgdata gdata gtp l10n.gnome.org/POT libgdata/po
|
||||
libgnome libgnome-2.0 gtp l10n.gnome.org/POT libgnome/po
|
||||
libgnome-keyring libgnome-keyring gtp l10n.gnome.org/POT libgnome-keyring/po
|
||||
libgnomekbd libgnomekbd gtp l10n.gnome.org/POT libgnomekbd/po
|
||||
libgnomeui libgnomeui-2.0 gtp l10n.gnome.org/POT libgnomeui/po
|
||||
libgsf libgsf gtp l10n.gnome.org/POT libgsf/po
|
||||
libgtop libgtop gtp l10n.gnome.org/POT libgtop/po
|
||||
libgweather libgweather-3.0 gtp l10n.gnome.org/POT libgweather/po gnome-3-34
|
||||
libgweather libgweather-3.0 gtp l10n.gnome.org/POT libgweather/po gnome-3-36
|
||||
libgweather libgweather-3.0 gtp l10n.gnome.org/POT libgweather/po
|
||||
libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations gnome-3-30
|
||||
libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations gnome-3-34
|
||||
libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations gnome-3-36
|
||||
libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations
|
||||
libgweather libgweather-locations gtp l10n.gnome.org/POT libgweather/po-locations
|
||||
libpeas libpeas gtp l10n.gnome.org/POT libpeas/po
|
||||
libpeas libpeas-1.0 gtp l10n.gnome.org/POT libpeas/po
|
||||
libsecret libsecret gtp l10n.gnome.org/POT libsecret/po
|
||||
libsoup libsoup gtp l10n.gnome.org/POT libsoup/po gnome-3-30
|
||||
libsoup libsoup gtp l10n.gnome.org/POT libsoup/po gnome-3-34
|
||||
libsoup libsoup gtp l10n.gnome.org/POT libsoup/po
|
||||
libwnck libwnck-3.0 gtp l10n.gnome.org/POT libwnck/po gnome-3-30
|
||||
libwnck libwnck-3.0 gtp l10n.gnome.org/POT libwnck/po
|
||||
meld meld gtp l10n.gnome.org/POT meld/po
|
||||
mousetweaks mousetweaks gtp l10n.gnome.org/POT mousetweaks/po
|
||||
mutter mutter gtp l10n.gnome.org/POT mutter/po gnome-3-30
|
||||
mutter mutter gtp l10n.gnome.org/POT mutter/po gnome-3-34
|
||||
mutter mutter gtp l10n.gnome.org/POT mutter/po
|
||||
nautilus nautilus gtp l10n.gnome.org/POT nautilus/po gnome-3-30
|
||||
nautilus nautilus gtp l10n.gnome.org/POT nautilus/po gnome-3-34
|
||||
nautilus nautilus gtp l10n.gnome.org/POT nautilus/po gnome-3-36
|
||||
nautilus nautilus gtp l10n.gnome.org/POT nautilus/po
|
||||
orca orca gtp l10n.gnome.org/POT orca/po gnome-3-30
|
||||
orca orca gtp l10n.gnome.org/POT orca/po gnome-3-34
|
||||
orca orca gtp l10n.gnome.org/POT orca/po gnome-3-36
|
||||
orca orca gtp l10n.gnome.org/POT orca/po
|
||||
plymouth plymouth gtp l10n.gnome.org/POT plymouth/po
|
||||
polkit polkit-1 gtp l10n.gnome.org/POT polkit/po
|
||||
pulseaudio pulseaudio gtp l10n.gnome.org/POT PulseAudio/po
|
||||
pulseaudio pulseaudio gtp l10n.gnome.org/POT Pulseaudio/po
|
||||
seahorse seahorse gtp l10n.gnome.org/POT seahorse/po gnome-3-30
|
||||
seahorse seahorse gtp l10n.gnome.org/POT seahorse/po gnome-3-34
|
||||
seahorse seahorse gtp l10n.gnome.org/POT seahorse/po gnome-3-36
|
||||
seahorse seahorse gtp l10n.gnome.org/POT seahorse/po
|
||||
shared-mime-info shared-mime-info gtp l10n.gnome.org/POT shared-mime-info/po
|
||||
simple-scan simple-scan gtp l10n.gnome.org/POT simple-scan/po gnome-3-30
|
||||
simple-scan simple-scan gtp l10n.gnome.org/POT simple-scan/po gnome-3-34
|
||||
simple-scan simple-scan gtp l10n.gnome.org/POT simple-scan/po gnome-3-36
|
||||
simple-scan simple-scan gtp l10n.gnome.org/POT simple-scan/po
|
||||
systemd systemd gtp l10n.gnome.org/POT systemd/po
|
||||
totem totem gtp l10n.gnome.org/POT totem/po gnome-3-30
|
||||
totem totem gtp l10n.gnome.org/POT totem/po gnome-3-34
|
||||
totem totem gtp l10n.gnome.org/POT totem/po
|
||||
totem-pl-parser totem-pl-parser gtp l10n.gnome.org/POT totem-pl-parser/po
|
||||
tracker tracker gtp l10n.gnome.org/POT tracker/po
|
||||
@ -183,6 +210,5 @@ xdg-desktop-portal-gtk xdg-desktop-portal-gtk gtp l
|
||||
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-3-30
|
||||
yelp yelp gtp l10n.gnome.org/POT yelp/po
|
||||
zenity zenity gtp l10n.gnome.org/POT zenity/po
|
||||
|
Loading…
Reference in New Issue
Block a user