1
0
Fork 0
mirror of https://git.jami.net/savoirfairelinux/jami-client-qt.git synced 2025-07-01 22:25:26 +02:00
jami-client-qt/extras/scripts/update-translations.py
ovari123 5540001e7a copyright: happy new year!
Cf. https://review.jami.net/c/jami-daemon/+/29901

Change-Id: I46a0d1297c2e60ca43dc5524fd6e8a192bc45139
2025-02-12 09:47:26 -05:00

59 lines
1.8 KiB
Python
Executable file

#!/usr/bin/python
##
## Copyright (C) 2016-2025 Savoir-faire Linux Inc.
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 3 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
##
import os
import shutil
print("== Updating from sources")
if os.system("lupdate jami.pro -no-obsolete"):
print("Attempting with 'lupdate-qt5'")
if os.system("lupdate-qt5 jami.pro -no-obsolete"):
raise RuntimeError("Unable to find any suitable lupdate Qt tool on this system. Stopping…")
print("== Pushing sources")
os.system("tx push -s")
print("== Pulling translations")
os.system("tx pull -af --minimum-perc=1")
print("Updating .pro file")
translationFiles = []
for filename in os.listdir('./translations'):
translationFiles.append("translations/{0}".format(filename))
proFile = "jami.pro"
shutil.move(proFile, proFile + "~")
destination = open(proFile, "w")
source = open(proFile + "~", "r")
for line in source:
if not ".ts" in line:
destination.write(line)
if "TRANSLATIONS = " in line:
for filename in translationFiles:
destination.write(" {0} \\\n".format(filename))
source.close()
destination.close()
os.remove(proFile + "~")
print("== All done you can commit now")