mirror of
https://github.com/YunoHost/moulinette.git
synced 2024-09-03 20:06:31 +02:00
[fix] Add i18n in yunohost binaries and update them
This commit is contained in:
parent
60c6150877
commit
b501e186be
4 changed files with 25 additions and 18 deletions
20
bin/yunohost
20
bin/yunohost
|
@ -28,19 +28,23 @@ if __name__ == '__main__':
|
||||||
use_cache = False
|
use_cache = False
|
||||||
sys.argv.remove('--no-cache')
|
sys.argv.remove('--no-cache')
|
||||||
|
|
||||||
try:
|
|
||||||
args = list(sys.argv)
|
args = list(sys.argv)
|
||||||
args.pop(0)
|
args.pop(0)
|
||||||
|
|
||||||
# Check that YunoHost is installed
|
# Check that YunoHost is installed
|
||||||
if not os.path.isfile('/etc/yunohost/installed') \
|
if not os.path.isfile('/etc/yunohost/installed') and \
|
||||||
and (len(args) < 2 or args[1] != 'tools' or args[2] != 'postinstall'):
|
(len(args) < 2 or args[1] != 'tools' or args[2] != 'postinstall'):
|
||||||
raise YunoHostError(17, _("YunoHost is not correctly installed, please execute 'yunohost tools postinstall'"))
|
from moulinette.interfaces.cli import colorize, get_locale
|
||||||
|
|
||||||
|
# Init i18n
|
||||||
|
m18n.load_namespace('yunohost')
|
||||||
|
m18n.set_locale(get_locale())
|
||||||
|
|
||||||
|
# Print error and exit
|
||||||
|
print('%s %s' % (colorize(m18n.g('error'), 'red'),
|
||||||
|
m18n.n('yunohost_not_installed')))
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
# Execute the action
|
# Execute the action
|
||||||
ret = cli(['yunohost'], args, use_cache)
|
ret = cli(['yunohost'], args, use_cache)
|
||||||
except YunoHostError as e:
|
|
||||||
# TODO: Remove this and associated import when yunohost package has been revisited
|
|
||||||
print(colorize(_("Error: "), 'red') + e.message)
|
|
||||||
sys.exit(e.code)
|
|
||||||
sys.exit(ret)
|
sys.exit(ret)
|
||||||
|
|
|
@ -47,6 +47,6 @@ if __name__ == '__main__':
|
||||||
{('GET', '/installed'): is_installed}, use_cache)
|
{('GET', '/installed'): is_installed}, use_cache)
|
||||||
except MoulinetteError as e:
|
except MoulinetteError as e:
|
||||||
from moulinette.interfaces.cli import colorize
|
from moulinette.interfaces.cli import colorize
|
||||||
print(_('%s: %s' % (colorize(_('Error'), 'red'), e.strerror)))
|
print('%s %s' % (colorize(m18n.g('error'), 'red'), e.strerror))
|
||||||
sys.exit(e.errno)
|
sys.exit(e.errno)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"yunohost" : "YunoHost",
|
"yunohost" : "YunoHost",
|
||||||
|
"yunohost_not_installed" : "YunoHost is not or not correctly installed. Please execute 'yunohost tools postinstall'.",
|
||||||
|
|
||||||
"upgrade_complete" : "Upgrade complete",
|
"upgrade_complete" : "Upgrade complete",
|
||||||
"installation_complete" : "Installation complete",
|
"installation_complete" : "Installation complete",
|
||||||
|
|
|
@ -4,6 +4,7 @@ import os
|
||||||
import errno
|
import errno
|
||||||
import getpass
|
import getpass
|
||||||
import argparse
|
import argparse
|
||||||
|
import locale
|
||||||
|
|
||||||
from moulinette.core import MoulinetteError
|
from moulinette.core import MoulinetteError
|
||||||
from moulinette.interfaces import (BaseActionsMapParser, BaseInterface)
|
from moulinette.interfaces import (BaseActionsMapParser, BaseInterface)
|
||||||
|
@ -63,6 +64,10 @@ def pretty_print_dict(d, depth=0):
|
||||||
v = str(v)
|
v = str(v)
|
||||||
print((" ") * depth + "%s: %s" % (str(k), v))
|
print((" ") * depth + "%s: %s" % (str(k), v))
|
||||||
|
|
||||||
|
def get_locale():
|
||||||
|
"""Return current user locale"""
|
||||||
|
lang = locale.getdefaultlocale()[0]
|
||||||
|
return lang[:2]
|
||||||
|
|
||||||
# CLI Classes Implementation -------------------------------------------
|
# CLI Classes Implementation -------------------------------------------
|
||||||
|
|
||||||
|
@ -157,11 +162,8 @@ class Interface(BaseInterface):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
def __init__(self, actionsmap):
|
def __init__(self, actionsmap):
|
||||||
import locale
|
|
||||||
|
|
||||||
# Set user locale
|
# Set user locale
|
||||||
lang = locale.getdefaultlocale()[0]
|
m18n.set_locale(get_locale())
|
||||||
m18n.set_locale(lang[:2])
|
|
||||||
|
|
||||||
# Connect signals to handlers
|
# Connect signals to handlers
|
||||||
msignals.set_handler('authenticate', self._do_authenticate)
|
msignals.set_handler('authenticate', self._do_authenticate)
|
||||||
|
|
Loading…
Reference in a new issue