[PATCH v3] i18n: deprecate intltool and use only gettext 0.19.8

Aleksander Morgado aleksander at aleksander.es
Tue Aug 29 09:13:58 UTC 2017


Instead of mixing both intltool and gettext, which not always work
correctly together, this patch obsoletes intltool and uses only
gettext, which includes support for translating XML files with ITS
rules.

See migration steps for GNOME projects here:
  https://wiki.gnome.org/MigratingFromIntltoolToGettext

And gettext support for ITS rules here:
  https://www.gnu.org/software/gettext/manual/html_node/Preparing-ITS-Rules.html
---

Hey,

This v3 totally gets rid of itstool, so there is no longer any need to keep generated files in git. gettext 0.19.8 takes care of the generation of the policy xml file including translations, using gettext's msgfmt and custom .its and .loc files (which are btw not installed anywhere, as they're just used to generate the xml file).

I also updated the Makevars file to set "DIST_DEPENDS_ON_UPDATE_PO = no", which avoids updating the .po files during a make dist.

I'm personally quite happy with this patch, even if i18n in ModemManager is really not that useful, given the lack of translations we currently have... :)

Comments?

---
 .gitignore                                      |  2 +
 Makefile.am                                     | 16 +----
 autogen.sh                                      |  3 +-
 configure.ac                                    |  8 +--
 data/Makefile.am                                | 17 +++---
 data/org.freedesktop.ModemManager1.policy.in.in | 32 +++++-----
 data/polkit-policy-i18n.its                     |  6 ++
 data/polkit-policy-i18n.loc                     |  4 ++
 po/Makevars                                     | 78 +++++++++++++++++++++++++
 po/POTFILES.in                                  |  1 -
 po/POTFILES.skip                                |  2 -
 po/de.po                                        | 48 +++++++++------
 po/uk.po                                        | 48 +++++++++------
 13 files changed, 182 insertions(+), 83 deletions(-)
 create mode 100644 data/polkit-policy-i18n.its
 create mode 100644 data/polkit-policy-i18n.loc
 create mode 100644 po/Makevars

diff --git a/.gitignore b/.gitignore
index 685ff84f..75631e0a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -94,6 +94,8 @@ Makefile.in
 /po/insert-header.sin
 /po/quot.sed
 /po/remove-potcdate.sin
+/po/remove-potcdate.sed
+/po/stamp-po
 /po/*.gmo

 /docs/reference/api/version.xml
diff --git a/Makefile.am b/Makefile.am
index e0c14b02..a85e4154 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,6 +2,7 @@
 SUBDIRS = \
 	. \
 	build-aux \
+	po \
 	data \
 	include \
 	libqcdm \
@@ -13,7 +14,6 @@ SUBDIRS = \
 	vapi \
 	introspection \
 	uml290 \
-	po \
 	test \
 	examples \
 	docs \
@@ -25,21 +25,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
 	--enable-gtk-doc=yes \
 	$(NULL)

-INTLTOOL_FILES = \
-	intltool-extract.in \
-	intltool-merge.in \
-	intltool-update.in \
-	$(NULL)
-
-DISTCLEANFILES = \
-	intltool-extract \
-	intltool-merge \
-	intltool-update \
-	po/.intltool-merge-cache \
-	$(NULL)
-
 EXTRA_DIST = \
-	$(INTLTOOL_FILES) \
 	autogen.sh \
 	gtester.make \
 	COPYING.LIB \
diff --git a/autogen.sh b/autogen.sh
index 230a7218..a3ff2db0 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -15,8 +15,7 @@ PKG_NAME=ModemManager

 (cd $srcdir;
     gtkdocize || exit 1
-    autopoint --force
-    AUTOPOINT='intltoolize --automake --copy' autoreconf --force --install --verbose
+    autoreconf --force --install --verbose
 )

 if test -z "$NOCONFIGURE"; then
diff --git a/configure.ac b/configure.ac
index fa46b4f5..d75f963c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -82,15 +82,15 @@ dnl-----------------------------------------------------------------------------
 dnl i18n
 dnl

-IT_PROG_INTLTOOL([0.40.0])
-
 AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.19.3])
+AM_GNU_GETTEXT_VERSION([0.19.8])

 GETTEXT_PACKAGE=ModemManager
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package])

+AC_PATH_PROG([MSGFMT], [msgfmt])
+
 dnl-----------------------------------------------------------------------------
 dnl Build dependencies
 dnl
@@ -389,9 +389,9 @@ Makefile
 data/Makefile
 data/ModemManager.pc
 data/mm-glib.pc
-data/org.freedesktop.ModemManager1.policy.in
 data/tests/Makefile
 data/tests/org.freedesktop.ModemManager1.service
+data/org.freedesktop.ModemManager1.policy.in
 include/Makefile
 include/ModemManager-version.h
 build-aux/Makefile
diff --git a/data/Makefile.am b/data/Makefile.am
index 168895d9..706c5b86 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -61,37 +61,36 @@ diagrams = \


 # Polkit
-polkit_policy_in_in_files = org.freedesktop.ModemManager1.policy.in.in
 if WITH_POLKIT
+org.freedesktop.ModemManager1.policy: org.freedesktop.ModemManager1.policy.in
+	$(AM_V_GEN) $(MSGFMT) --xml -d $(top_srcdir)/po/ -o $@ --template $<
 polkit_policydir = $(datadir)/polkit-1/actions
-polkit_policy_DATA = $(polkit_policy_in_in_files:.policy.in.in=.policy)
- at INTLTOOL_POLICY_RULE@
+polkit_policy_DATA = org.freedesktop.ModemManager1.policy
 endif

-
 # Set up pkg-config .pc files for exported libraries
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = \
 	ModemManager.pc \
 	mm-glib.pc

-
 DISTCLEANFILES = \
+	org.freedesktop.ModemManager1.policy \
 	$(dbusactivation_DATA) \
-	$(dbusservice_DATA) \
-	$(polkit_policy_DATA)
+	$(dbusservice_DATA)

 if HAVE_SYSTEMD
 DISTCLEANFILES += $(systemdsystemunit_DATA)
 endif

-
 EXTRA_DIST = \
+	polkit-policy-i18n.its \
+	polkit-policy-i18n.loc \
+	org.freedesktop.ModemManager1.policy.in.in \
 	$(systemdsystemunit_in_files) \
 	$(dbusactivation_in_files) \
 	$(dbusservice_file_polkit) \
 	$(dbusservice_file_nopolkit) \
 	$(icon_DATA) \
-	$(polkit_policy_in_in_files) \
 	$(logos) \
 	$(diagrams)
diff --git a/data/org.freedesktop.ModemManager1.policy.in.in b/data/org.freedesktop.ModemManager1.policy.in.in
index bb60192b..7edb20c7 100644
--- a/data/org.freedesktop.ModemManager1.policy.in.in
+++ b/data/org.freedesktop.ModemManager1.policy.in.in
@@ -10,8 +10,8 @@
   <icon_name>ModemManager</icon_name>

   <action id="org.freedesktop.ModemManager1.Control">
-    <_description>Control the Modem Manager daemon</_description>
-    <_message>System policy prevents controlling the Modem Manager.</_message>
+    <description>Control the Modem Manager daemon</description>
+    <message>System policy prevents controlling the Modem Manager.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>auth_admin</allow_active>
@@ -19,8 +19,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Device.Control">
-    <_description>Unlock and control a mobile broadband device</_description>
-    <_message>System policy prevents unlocking or controlling the mobile broadband device.</_message>
+    <description>Unlock and control a mobile broadband device</description>
+    <message>System policy prevents unlocking or controlling the mobile broadband device.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>@MM_DEFAULT_USER_POLICY@</allow_active>
@@ -28,8 +28,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Contacts">
-    <_description>Add, modify, and delete mobile broadband contacts</_description>
-    <_message>System policy prevents adding, modifying, or deleting this device's contacts.</_message>
+    <description>Add, modify, and delete mobile broadband contacts</description>
+    <message>System policy prevents adding, modifying, or deleting this device's contacts.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>@MM_DEFAULT_USER_POLICY@</allow_active>
@@ -37,8 +37,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Messaging">
-    <_description>Send, save, modify, and delete text messages</_description>
-    <_message>System policy prevents sending or manipulating this device's text messages.</_message>
+    <description>Send, save, modify, and delete text messages</description>
+    <message>System policy prevents sending or manipulating this device's text messages.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>@MM_DEFAULT_USER_POLICY@</allow_active>
@@ -46,8 +46,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Voice">
-    <_description>Accept incoming voice calls or start outgoing voice calls.</_description>
-    <_message>System policy prevents voice calls.</_message>
+    <description>Accept incoming voice calls or start outgoing voice calls.</description>
+    <message>System policy prevents voice calls.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>@MM_DEFAULT_USER_POLICY@</allow_active>
@@ -55,8 +55,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Location">
-    <_description>Enable and view geographic location and positioning information</_description>
-    <_message>System policy prevents enabling or viewing geographic location information.</_message>
+    <description>Enable and view geographic location and positioning information</description>
+    <message>System policy prevents enabling or viewing geographic location information.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>@MM_DEFAULT_USER_POLICY@</allow_active>
@@ -64,8 +64,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.USSD">
-    <_description>Query and utilize network information and services</_description>
-    <_message>System policy prevents querying or utilizing network information and services.</_message>
+    <description>Query and utilize network information and services</description>
+    <message>System policy prevents querying or utilizing network information and services.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>yes</allow_active>
@@ -73,8 +73,8 @@
   </action>

   <action id="org.freedesktop.ModemManager1.Firmware">
-    <_description>Query and manage firmware on a mobile broadband device</_description>
-    <_message>System policy prevents querying or managing this device's firmware.</_message>
+    <description>Query and manage firmware on a mobile broadband device</description>
+    <message>System policy prevents querying or managing this device's firmware.</message>
     <defaults>
       <allow_inactive>no</allow_inactive>
       <allow_active>auth_admin</allow_active>
diff --git a/data/polkit-policy-i18n.its b/data/polkit-policy-i18n.its
new file mode 100644
index 00000000..099e7a34
--- /dev/null
+++ b/data/polkit-policy-i18n.its
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
+  <its:translateRule selector="/policyconfig"                    translate="no"/>
+  <its:translateRule selector="/policyconfig/action/description" translate="yes"/>
+  <its:translateRule selector="/policyconfig/action/message"     translate="yes"/>
+</its:rules>
diff --git a/data/polkit-policy-i18n.loc b/data/polkit-policy-i18n.loc
new file mode 100644
index 00000000..b8664a0f
--- /dev/null
+++ b/data/polkit-policy-i18n.loc
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<locatingRules>
+  <locatingRule name="Policy" pattern="*policy.in.in" target="policy.its"/>
+</locatingRules>
\ No newline at end of file
diff --git a/po/Makevars b/po/Makevars
new file mode 100644
index 00000000..9fb2d36f
--- /dev/null
+++ b/po/Makevars
@@ -0,0 +1,78 @@
+# Makefile variables for PO directory in any package using GNU gettext.
+
+# Usually the message domain is the same as the package name.
+DOMAIN = $(PACKAGE)
+
+# These two variables depend on the location of this directory.
+subdir = po
+top_builddir = ..
+
+# These options get passed to xgettext.
+XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3
+
+# This is the copyright holder that gets inserted into the header of the
+# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding
+# package.  (Note that the msgstr strings, extracted from the package's
+# sources, belong to the copyright holder of the package.)  Translators are
+# expected to transfer the copyright for their translations to this person
+# or entity, or to disclaim their copyright.  The empty string stands for
+# the public domain; in this case the translators are expected to disclaim
+# their copyright.
+COPYRIGHT_HOLDER = The ModemManager developers.
+
+# This tells whether or not to prepend "GNU " prefix to the package
+# name that gets inserted into the header of the $(DOMAIN).pot file.
+# Possible values are "yes", "no", or empty.  If it is empty, try to
+# detect it automatically by scanning the files in $(top_srcdir) for
+# "GNU packagename" string.
+PACKAGE_GNU = no
+
+# This is the email address or URL to which the translators shall report
+# bugs in the untranslated strings:
+# - Strings which are not entire sentences, see the maintainer guidelines
+#   in the GNU gettext documentation, section 'Preparing Strings'.
+# - Strings which use unclear terms or require additional context to be
+#   understood.
+# - Strings which make invalid assumptions about notation of date, time or
+#   money.
+# - Pluralisation problems.
+# - Incorrect English spelling.
+# - Incorrect formatting.
+# It can be your email address, or a mailing list address where translators
+# can write to without being subscribed, or the URL of a web page through
+# which the translators can contact you.
+MSGID_BUGS_ADDRESS = modemmanager-devel at lists.freedesktop.org
+
+# This is the list of locale categories, beyond LC_MESSAGES, for which the
+# message catalogs shall be used.  It is usually empty.
+EXTRA_LOCALE_CATEGORIES =
+
+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
+# context.  Possible values are "yes" and "no".  Set this to yes if the
+# package uses functions taking also a message context, like pgettext(), or
+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
+USE_MSGCTXT = no
+
+# These options get passed to msgmerge.
+# Useful options are in particular:
+#   --previous            to keep previous msgids of translated messages,
+#   --quiet               to reduce the verbosity.
+MSGMERGE_OPTIONS = --quiet
+
+# These options get passed to msginit.
+# If you want to disable line wrapping when writing PO files, add
+# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
+# MSGINIT_OPTIONS.
+MSGINIT_OPTIONS =
+
+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
+# has changed.  Possible values are "yes" and "no".  Set this to no if
+# the POT file is checked in the repository and the version control
+# program ignores timestamps.
+PO_DEPENDS_ON_POT = yes
+
+# This tells whether or not to forcibly update $(DOMAIN).pot and
+# regenerate PO files on "make dist".  Possible values are "yes" and
+# "no".  Set this to no if the POT file and PO files are maintained
+# externally.
+DIST_DEPENDS_ON_UPDATE_PO = no
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 330da0fa..e1be0d06 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,4 +1,3 @@
-[encoding: UTF-8]
 # List of source files containing translatable strings.
 # Please keep this file sorted alphabetically.
 data/org.freedesktop.ModemManager1.policy.in.in
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index dd87d5d8..8675cb27 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -1,4 +1,2 @@
 data/org.freedesktop.ModemManager1.policy.in
 data/tests/org.freedesktop.ModemManager1.service.in
-# https://bugs.launchpad.net/intltool/+bug/1117944
-sub/data/org.freedesktop.ModemManager1.policy.in
diff --git a/po/de.po b/po/de.po
index d11e4fe5..7fc9dc4e 100644
--- a/po/de.po
+++ b/po/de.po
@@ -7,8 +7,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: ModemManager\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-01-06 21:12+0100\n"
+"Report-Msgid-Bugs-To: modemmanager-devel at lists.freedesktop.org\n"
+"POT-Creation-Date: 2017-08-29 09:24+0200\n"
 "PO-Revision-Date: 2014-01-06 21:23+0100\n"
 "Last-Translator: Mario Blättermann <mario.blaettermann at gmail.com>\n"
 "Language-Team: German <debian-l10n-german at lists.debian.org>\n"
@@ -18,65 +18,75 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 1.5.4\n"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:1
+#: data/org.freedesktop.ModemManager1.policy.in.in:13
 msgid "Control the Modem Manager daemon"
 msgstr "Den Modem-Manager-Daemon steuern"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:2
+#: data/org.freedesktop.ModemManager1.policy.in.in:14
 msgid "System policy prevents controlling the Modem Manager."
 msgstr "Die Systemrichtlinien verhindern die Steuerung von ModemManager."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:3
+#: data/org.freedesktop.ModemManager1.policy.in.in:22
 msgid "Unlock and control a mobile broadband device"
 msgstr "Ein mobiles Breitbandgerät entsperren und steuern"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:4
+#: data/org.freedesktop.ModemManager1.policy.in.in:23
 msgid ""
 "System policy prevents unlocking or controlling the mobile broadband device."
 msgstr ""
 "Die Systemrichtlinien verhindern das Entsperren oder Steuern des mobilen "
 "Breitbandgerätes."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:5
+#: data/org.freedesktop.ModemManager1.policy.in.in:31
 msgid "Add, modify, and delete mobile broadband contacts"
 msgstr "Kontakte für mobiles Breitband hinzufügen, ändern und löschen"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:6
+#: data/org.freedesktop.ModemManager1.policy.in.in:32
 msgid ""
 "System policy prevents adding, modifying, or deleting this device's contacts."
 msgstr ""
 "Die Systemrichtlinien verhindern das Hinzufügen, Ändern oder Löschen der "
 "Kontakte dieses Gerätes."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:7
+#: data/org.freedesktop.ModemManager1.policy.in.in:40
 msgid "Send, save, modify, and delete text messages"
 msgstr "Textnachrichten senden, speichern, bearbeiten und löschen"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:8
+#: data/org.freedesktop.ModemManager1.policy.in.in:41
+#, fuzzy
 msgid ""
-"System policy prevents sending or maniuplating this device's text messages."
+"System policy prevents sending or manipulating this device's text messages."
 msgstr ""
 "Die Systemrichtlinien verhindern das Senden oder Bearbeiten der "
 "Textnachrichten dieses Gerätes."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:9
+#: data/org.freedesktop.ModemManager1.policy.in.in:49
+msgid "Accept incoming voice calls or start outgoing voice calls."
+msgstr ""
+
+#: data/org.freedesktop.ModemManager1.policy.in.in:50
+#, fuzzy
+msgid "System policy prevents voice calls."
+msgstr "Die Systemrichtlinien verhindern die Steuerung von ModemManager."
+
+#: data/org.freedesktop.ModemManager1.policy.in.in:58
 msgid "Enable and view geographic location and positioning information"
 msgstr ""
 "Informationen zum geografischen Standort und Positionierung aktivieren und "
 "anzeigen"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:10
+#: data/org.freedesktop.ModemManager1.policy.in.in:59
 msgid ""
 "System policy prevents enabling or viewing geographic location information."
 msgstr ""
 "Die Systemrichtlinien verhindern das Aktivieren oder Ändern der "
 "Informationen zum geografischen Standort."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:11
+#: data/org.freedesktop.ModemManager1.policy.in.in:67
 msgid "Query and utilize network information and services"
 msgstr "Netzwerkinformationen und -dienste abfragen und nutzen"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:12
+#: data/org.freedesktop.ModemManager1.policy.in.in:68
 msgid ""
 "System policy prevents querying or utilizing network information and "
 "services."
@@ -84,12 +94,16 @@ msgstr ""
 "Die Systemrichtlinien verhindern die Abfrage der Netzwerkinformationen und -"
 "dienste."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:13
+#: data/org.freedesktop.ModemManager1.policy.in.in:76
 msgid "Query and manage firmware on a mobile broadband device"
 msgstr "Firmware auf mobilen Breitbandgeräten abfragen und verwalten"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:14
+#: data/org.freedesktop.ModemManager1.policy.in.in:77
 msgid "System policy prevents querying or managing this device's firmware."
 msgstr ""
 "Die Systemrichtlinien verhindern die Abfrage oder Verwaltung der Firmware "
 "dieses Gerätes."
+
+#: src/mm-sleep-monitor.c:114
+msgid "ModemManager needs to reset devices"
+msgstr ""
diff --git a/po/uk.po b/po/uk.po
index b4c8c5d8..5b1f8d59 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -6,8 +6,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: Modem Manager\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-19 18:13+0300\n"
+"Report-Msgid-Bugs-To: modemmanager-devel at lists.freedesktop.org\n"
+"POT-Creation-Date: 2017-08-29 09:24+0200\n"
 "PO-Revision-Date: 2013-10-19 18:17+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor at ukr.net>\n"
 "Language-Team: Ukrainian <kde-i18n-uk at kde.org>\n"
@@ -19,65 +19,75 @@ msgstr ""
 "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 "X-Generator: Lokalize 1.5\n"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:1
+#: data/org.freedesktop.ModemManager1.policy.in.in:13
 msgid "Control the Modem Manager daemon"
 msgstr "Керування фоновою службою Modem Manager"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:2
+#: data/org.freedesktop.ModemManager1.policy.in.in:14
 msgid "System policy prevents controlling the Modem Manager."
 msgstr "Правила системи перешкоджають керування Modem Manager."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:3
+#: data/org.freedesktop.ModemManager1.policy.in.in:22
 msgid "Unlock and control a mobile broadband device"
 msgstr "Розблокувати пристрій мобільної широкосмугової мережі і керувати ним"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:4
+#: data/org.freedesktop.ModemManager1.policy.in.in:23
 msgid ""
 "System policy prevents unlocking or controlling the mobile broadband device."
 msgstr ""
 "Правила системи забороняють розблокування і керування пристроями "
 "широкосмугових мобільних мереж."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:5
+#: data/org.freedesktop.ModemManager1.policy.in.in:31
 msgid "Add, modify, and delete mobile broadband contacts"
 msgstr ""
 "Додати, внести зміни і вилучити контакти пристрою мобільних широкосмугових "
 "мереж"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:6
+#: data/org.freedesktop.ModemManager1.policy.in.in:32
 msgid ""
 "System policy prevents adding, modifying, or deleting this device's contacts."
 msgstr ""
 "Правила системи перешкоджають додаванню, внесенню змін та вилученню записів "
 "контактів на цьому пристрої."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:7
+#: data/org.freedesktop.ModemManager1.policy.in.in:40
 msgid "Send, save, modify, and delete text messages"
 msgstr "Надіслати, зберегти, внести зміни або вилучити текстові повідомлення"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:8
+#: data/org.freedesktop.ModemManager1.policy.in.in:41
+#, fuzzy
 msgid ""
-"System policy prevents sending or maniuplating this device's text messages."
+"System policy prevents sending or manipulating this device's text messages."
 msgstr ""
 "Правила системи забороняють надсилання або керування текстовими "
 "повідомленнями цього пристрою."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:9
+#: data/org.freedesktop.ModemManager1.policy.in.in:49
+msgid "Accept incoming voice calls or start outgoing voice calls."
+msgstr ""
+
+#: data/org.freedesktop.ModemManager1.policy.in.in:50
+#, fuzzy
+msgid "System policy prevents voice calls."
+msgstr "Правила системи перешкоджають керування Modem Manager."
+
+#: data/org.freedesktop.ModemManager1.policy.in.in:58
 msgid "Enable and view geographic location and positioning information"
 msgstr ""
 "Увімкнути або переглянути дані щодо географічного розташування і позиціювання"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:10
+#: data/org.freedesktop.ModemManager1.policy.in.in:59
 msgid ""
 "System policy prevents enabling or viewing geographic location information."
 msgstr ""
 "Правила системи забороняють вмикання або перегляд даних щодо розташування."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:11
+#: data/org.freedesktop.ModemManager1.policy.in.in:67
 msgid "Query and utilize network information and services"
 msgstr "Надіслати запит і використати дані щодо мережі і служби"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:12
+#: data/org.freedesktop.ModemManager1.policy.in.in:68
 msgid ""
 "System policy prevents querying or utilizing network information and "
 "services."
@@ -85,14 +95,18 @@ msgstr ""
 "Правила системи забороняють надсилання запитів і використання даних щодо "
 "мережі і служб."

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:13
+#: data/org.freedesktop.ModemManager1.policy.in.in:76
 msgid "Query and manage firmware on a mobile broadband device"
 msgstr ""
 "Опитування та керування мікропрограмою на пристрої мобільної широкосмугової "
 "мережі"

-#: ../data/org.freedesktop.ModemManager1.policy.in.in.h:14
+#: data/org.freedesktop.ModemManager1.policy.in.in:77
 msgid "System policy prevents querying or managing this device's firmware."
 msgstr ""
 "Правила системи перешкоджають опитуванню або керування мікропрограмою цього "
 "пристрою."
+
+#: src/mm-sleep-monitor.c:114
+msgid "ModemManager needs to reset devices"
+msgstr ""
--
2.14.1


More information about the ModemManager-devel mailing list