[Scummvm-git-logs] scummvm master -> c3578ca22d21a83be1f333e08d43248c577f267c

lephilousophe noreply at scummvm.org
Thu Jun 1 18:39:25 UTC 2023


This automated email contains information about 6 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
078a0febc6 PORTS: Make sure target is up to date before installing
f683b9b916 DISTS: Fix AppData id and update it to latest specification
94aff8553d I18N: Fix AppData international generation.
287b228af0 POSIX: Add AppImage support
4955800221 DISTS: Move icon file to match metainfo id
c3578ca22d DISTS: Add support for go-appimage


Commit: 078a0febc60d597b8c12237930184347186c8128
    https://github.com/scummvm/scummvm/commit/078a0febc60d597b8c12237930184347186c8128
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
PORTS: Make sure target is up to date before installing

And update phony rules.

Changed paths:
    ports.mk


diff --git a/ports.mk b/ports.mk
index 4d6deece1fb..85bfafd13ec 100644
--- a/ports.mk
+++ b/ports.mk
@@ -25,7 +25,7 @@ ifneq ($(DIST_FILES_SHADERS),)
 	$(INSTALL) -c -m 644 $(DIST_FILES_SHADERS) "$(DESTDIR)$(datadir)/shaders"
 endif
 
-install: install-data
+install: $(EXECUTABLE) $(PLUGINS) install-data
 	$(INSTALL) -d "$(DESTDIR)$(bindir)"
 	$(INSTALL) -c -m 755 "./$(EXECUTABLE)" "$(DESTDIR)$(bindir)/$(EXECUTABLE)"
 ifdef DYNAMIC_MODULES
@@ -33,7 +33,7 @@ ifdef DYNAMIC_MODULES
 	$(INSTALL) -c -m 644 $(PLUGINS) "$(DESTDIR)$(libdir)/scummvm/"
 endif
 
-install-strip: install-data
+install-strip: $(EXECUTABLE) $(PLUGINS) install-data
 	$(INSTALL) -d "$(DESTDIR)$(bindir)"
 	$(INSTALL) -c -s -m 755 "./$(EXECUTABLE)" "$(DESTDIR)$(bindir)/$(EXECUTABLE)"
 ifdef DYNAMIC_MODULES
@@ -629,4 +629,6 @@ release-checks:
 	devtools/release-checks.sh
 
 # Mark special targets as phony
-.PHONY: deb bundle osxsnap install uninstall
+.PHONY: install-data install install-strip uninstall dist-generic
+.PHONY: bundle-pack bundle iphonebundle ios7bundle tvosbundle iphone osxsnap publish-appcast
+.PHONY: ideprojects release-checks


Commit: f683b9b916a730d93defcd12522205633588059b
    https://github.com/scummvm/scummvm/commit/f683b9b916a730d93defcd12522205633588059b
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
DISTS: Fix AppData id and update it to latest specification

AppData id should really be a rDNS but its filename and desktop
filename must match this id.
This commit makes everything match.
The provides directive must not mention its own desktop file but
launchable should.

Changed paths:
  A devtools/generate-metainfo.py
  A dists/org.scummvm.scummvm.desktop
  A dists/org.scummvm.scummvm.metainfo.xml
  A dists/org.scummvm.scummvm.metainfo.xml.cpp
  R devtools/generate-appdata.py
  R dists/scummvm.appdata.xml
  R dists/scummvm.appdata.xml.cpp
  R dists/scummvm.desktop
    backends/taskbar/unity/unity-taskbar.cpp
    dists/debian/scummvm.install
    dists/redhat/scummvm.spec
    dists/redhat/scummvm.spec.in
    po/POTFILES
    po/ar.po
    po/be-tarask.po
    po/be_BY.po
    po/ca_ES.po
    po/cs_CZ.po
    po/da.po
    po/de_DE.po
    po/el.po
    po/es_ES.po
    po/eu.po
    po/fi_FI.po
    po/fr_FR.po
    po/gl_ES.po
    po/he.po
    po/hi.po
    po/hu_HU.po
    po/it_IT.po
    po/ja.po
    po/ko.po
    po/nb_NO.po
    po/nl_NL.po
    po/nn_NO.po
    po/pl_PL.po
    po/pt_BR.po
    po/pt_PT.po
    po/ru_RU.po
    po/scummvm.pot
    po/sv_SE.po
    po/tr.po
    po/uk_UA.po
    po/zh.po
    ports.mk


diff --git a/backends/taskbar/unity/unity-taskbar.cpp b/backends/taskbar/unity/unity-taskbar.cpp
index dc9a8c5aca1..f8a8b19c436 100644
--- a/backends/taskbar/unity/unity-taskbar.cpp
+++ b/backends/taskbar/unity/unity-taskbar.cpp
@@ -43,7 +43,7 @@ UnityTaskbarManager::UnityTaskbarManager() {
 
 	_loop = g_main_loop_new(NULL, FALSE);
 
-	_launcher = unity_launcher_entry_get_for_desktop_id("scummvm.desktop");
+	_launcher = unity_launcher_entry_get_for_desktop_id("org.scummvm.scummvm.desktop");
 }
 
 UnityTaskbarManager::~UnityTaskbarManager() {
diff --git a/devtools/generate-appdata.py b/devtools/generate-metainfo.py
similarity index 88%
rename from devtools/generate-appdata.py
rename to devtools/generate-metainfo.py
index 4a2f753a4c7..40dee24d175 100644
--- a/devtools/generate-appdata.py
+++ b/devtools/generate-metainfo.py
@@ -1,23 +1,24 @@
 #!/usr/bin/env python3
 
-# This script generates a dists/scummvm.appdata.xml file with multilanguage support.
+# This script generates dists/org.scummvm.scummvm.metainfo.xml file with multilanguage support.
 # The multilanguage data is extracted from po/*.po files
 
 import re
 import os
 
-appdata_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
+metainfo_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
 <!-- Copyright 2020-2023 The ScummVM Team -->
-<component type="desktop">
-  <id>scummvm.desktop</id>
+<component type="desktop-application">
+  <id>org.scummvm.scummvm</id>
   <metadata_license>CC0-1.0</metadata_license>
   <project_license>GPL-3.0-or-later</project_license>
   <name>ScummVM</name>
   <summary>Interpreter for numerous adventure games and role-playing games</summary>
   <summary xml:lang="xy">I18N: One line summary as shown in *nix distributions</summary>
   <developer_name>The ScummVM Team</developer_name>
+  <launchable type="desktop-id">org.scummvm.scummvm.desktop</launchable>
   <provides>
-    <id>scummvm.desktop</id>
+    <binary>scummvm</binary>
   </provides>
   <description>
     <p>
@@ -97,11 +98,10 @@ appdata_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
 </component>
 '''
 
-
 def extract_summary(file):
     with open('../po/' + file) as f:
         content = f.read()
-    pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:32\nmsgid ".+"\nmsgstr "(.+)"'
+    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:32\nmsgid ".+"\nmsgstr "(.+)"'
     summary_match = re.search(pattern, content)
     if summary_match:
         summary = summary_match.group(1)
@@ -113,7 +113,7 @@ def extract_summary(file):
 def extract_par1(file):
     with open('../po/' + file) as f:
         content = f.read()
-    pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:37\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:37\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
     par1_match = re.search(pattern, content)
     if par1_match:
         par1 = par1_match.group(2)
@@ -128,7 +128,7 @@ def extract_par1(file):
 def extract_par2(file):
     with open('../po/' + file) as f:
         content = f.read()
-    pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:45\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:45\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
     par2_match = re.search(pattern, content)
     if par2_match:
         par2 = par2_match.group(2)
@@ -143,7 +143,7 @@ def extract_par2(file):
 def extract_par3(file):
     with open('../po/' + file) as f:
         content = f.read()
-    pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:51\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:51\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
     par3_match = re.search(pattern, content)
     if par3_match:
         par3 = par3_match.group(2)
@@ -179,9 +179,9 @@ def get_summary_translations(po_file_names):
 def substitute_summary_translations(summary_translations, xml):
     pattern = r'<summary xml:lang="xy">I18N: One line summary as shown in \*nix distributions<\/summary>'
 
-    appdata_xml = re.sub(pattern, summary_translations, xml)
+    metainfo_xml = re.sub(pattern, summary_translations, xml)
 
-    return appdata_xml
+    return metainfo_xml
 
 
 def get_parx_translations(x, po_file_names):
@@ -201,7 +201,7 @@ def get_parx_translations(x, po_file_names):
             continue
 
         # parx also contains " (quotes) around the text; so we need to replace them with empty character
-        # otherwise " (quotes) will appear in scummvm.appdata.xml generated file
+        # otherwise " (quotes) will appear in scummvm.metainfo.xml generated file
         parx = parx.replace('"', '')
 
         lang = '"' + file[0] + file[1] + '"'
@@ -222,8 +222,8 @@ def substitute_parx_translations(x, parx_translations, xml):
     elif (x == 3):
         pattern = r'<p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
 
-    appdata_xml = re.sub(pattern, parx_translations, xml)
-    return appdata_xml
+    metainfo_xml = re.sub(pattern, parx_translations, xml)
+    return metainfo_xml
 
 
 def get_po_files():
@@ -242,7 +242,7 @@ def main():
 
     summary_translations = get_summary_translations(po_file_names)
     xml = substitute_summary_translations(
-        summary_translations, appdata_xml_template)
+        summary_translations, metainfo_xml_template)
 
     par1_translations = get_parx_translations(1, po_file_names)
     xml = substitute_parx_translations(1, par1_translations, xml)
@@ -253,8 +253,8 @@ def main():
     par3_translations = get_parx_translations(3, po_file_names)
     xml = substitute_parx_translations(3, par3_translations, xml)
 
-    # write to scummvm.appdata.xml file
-    with open("../dists/scummvm.appdata.xml", "w") as f:
+    # write to org.scummvm.scummvm.metainfo.xml file
+    with open("../dists/org.scummvm.scummvm.metainfo.xml", "w") as f:
         f.write(xml)
 
 
diff --git a/dists/debian/scummvm.install b/dists/debian/scummvm.install
index 838c30419fe..0b7763cd1ac 100644
--- a/dists/debian/scummvm.install
+++ b/dists/debian/scummvm.install
@@ -1,2 +1,2 @@
 scummvm usr/games
-dists/scummvm.desktop usr/share/applications
+dists/org.scummvm.scummvm.desktop usr/share/applications
diff --git a/dists/scummvm.desktop b/dists/org.scummvm.scummvm.desktop
similarity index 100%
rename from dists/scummvm.desktop
rename to dists/org.scummvm.scummvm.desktop
diff --git a/dists/scummvm.appdata.xml b/dists/org.scummvm.scummvm.metainfo.xml
similarity index 94%
rename from dists/scummvm.appdata.xml
rename to dists/org.scummvm.scummvm.metainfo.xml
index 68de2b679e3..cd39e03b33f 100644
--- a/dists/scummvm.appdata.xml
+++ b/dists/org.scummvm.scummvm.metainfo.xml
@@ -1,11 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Copyright 2020-2023 The ScummVM Team -->
-<component type="desktop">
-  <id>scummvm.desktop</id>
+<component type="desktop-application">
+  <id>org.scummvm.scummvm</id>
   <metadata_license>CC0-1.0</metadata_license>
   <project_license>GPL-3.0-or-later</project_license>
   <name>ScummVM</name>
   <summary>Interpreter for numerous adventure games and role-playing games</summary>
+  <summary xml:lang="ar">مترجم للعديد من ألعاب المغامرات ولعب الأدوار</summary>
   <summary xml:lang="be">Інтэрпрэтатар многіх авантурных і ролявых гульняў</summary>
   <summary xml:lang="ca">Intèrpret per a nombrosos jocs d'aventura i jocs de rol</summary>
   <summary xml:lang="de">Interpreter für zahlreiche Adventure-Spiele und RPGs</summary>
@@ -25,8 +26,9 @@
   <summary xml:lang="ru">Интерпретатор множества приключенческих и ролевых игр</summary>
   <summary xml:lang="uk">Інтерпретатор для численних пригодницьких і рольових ігор</summary>
   <developer_name>The ScummVM Team</developer_name>
+  <launchable type="desktop-id">org.scummvm.scummvm.desktop</launchable>
   <provides>
-    <id>scummvm.desktop</id>
+    <binary>scummvm</binary>
   </provides>
   <description>
     <p>
@@ -36,6 +38,11 @@
       ScummVM just replaces the executables shipped with the game,
       allowing you to play them on systems for which they were never designed!
     </p>
+    <p xml:lang="ar">ScummVM هو برنامج يسمح لك بتشغيل مجموعة متنوعة من ألعاب المغامرات وألعاب 
+تقمص الأدوار الرسومية والتأشير والنقر ، بشرط أن يكون لديك بالفعل ملفات 
+البيانات الخاصة بهم. الجزء الذكي في هذا الأمر: يستبدل ScummVM الملفات 
+التنفيذية التي يتم شحنها مع اللعبة ، مما يتيح لك تشغيلها على أنظمة لم يتم 
+تصميمها من أجلها مطلقًا!</p>
     <p xml:lang="be">ScummVM — гэта праграма для запуску розных клясічных графічных point-and-
 click авантурных і ралявых гульняў, пры ўмове, што вы маеце зьвесткі тых 
 гульняў. Карацей, ScummVM проста замяняе выканальныя файлы гульняў, 
@@ -128,6 +135,10 @@ eles nunca foram projetados!</p>
       It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
       Revolution Software, Cyan, Inc. and Westwood Studios.
     </p>
+    <p xml:lang="ar">حاليًا ، تدعم ScummVM مكتبة ضخمة من المغامرات تضم أكثر من 4000 لعبة في 
+المجموع. وهو يدعم العديد من الكلاسيكيات التي نشرتها الاستوديوهات الأسطورية 
+مثل LucasArts و Sierra On-Line و Revolution Software و Cyan، Inc. و Westwood 
+Studios.</p>
     <p xml:lang="be">На гэты момант ScummVM падтрымлівае вялічэзную бібліятэку авантур, дзе болей 
 за 4000 гульняў. Вы зможаце дакрануцца да многіх клясічных твораў, выданых 
 леґэндарнымі студыямі як LucasArts, Sierra On-Line, Revolution Software, 
@@ -205,6 +216,9 @@ Revolution Software, Cyan, Inc. та Westwood Studios.</p>
       Myst, Blade Runner and countless other games you will find
       some really obscure adventures and truly hidden gems to explore.
     </p>
+    <p xml:lang="ar">بجانب العناوين الرائدة مثل سلسلة Monkey Island و Broken Sword و Myst و Blade 
+Runner وعدد لا يحصى من الألعاب الأخرى ، ستجد بعض المغامرات الغامضة حقًا 
+والأحجار الكريمة المخفية حقًا لاستكشافها.</p>
     <p xml:lang="be">Разам з рэвалюцыйнымі гульнямі як Monkey Island, Broken Sword, Myst, Blade 
 Runner і безьлічам іншых гульняў, вы знойдзіце насамрэч малавядомыя авантуры 
 й прыхаваныя скарбы.</p>
diff --git a/dists/scummvm.appdata.xml.cpp b/dists/org.scummvm.scummvm.metainfo.xml.cpp
similarity index 97%
rename from dists/scummvm.appdata.xml.cpp
rename to dists/org.scummvm.scummvm.metainfo.xml.cpp
index ad5a7ab457d..b8c0de63b31 100644
--- a/dists/scummvm.appdata.xml.cpp
+++ b/dists/org.scummvm.scummvm.metainfo.xml.cpp
@@ -21,7 +21,7 @@
 
 /*
  * This is a dummy file used for sticking strings from
- * scummvm.appdata.xml into our translation system
+ * org.scummvm.scummvm.metainfo.xml into our translation system
  *
  */
 
diff --git a/dists/redhat/scummvm.spec b/dists/redhat/scummvm.spec
index 85b28ca8b78..bcfda9f3713 100644
--- a/dists/redhat/scummvm.spec
+++ b/dists/redhat/scummvm.spec
@@ -64,7 +64,7 @@ make %{_smp_mflags}
 %install
 make DESTDIR=%{buildroot} install
 install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
-desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/scummvm.desktop
+desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/org.scummvm.scummvm.desktop
 
 %clean
 rm -Rf ${RPM_BUILD_ROOT}
@@ -92,7 +92,7 @@ fi
 %{_datadir}/pixmaps/scummvm.xpm
 %{_datadir}/icons/hicolor/48x48/apps/scummvm.png
 %{_datadir}/icons/hicolor/scalable/apps/scummvm.svg
-%{_datadir}/metainfo/scummvm.appdata.xml
+%{_datadir}/metainfo/org.scummvm.scummvm.metainfo.xml
 %{_datadir}/scummvm/*
 %{_mandir}/man6/scummvm.6*
 
diff --git a/dists/redhat/scummvm.spec.in b/dists/redhat/scummvm.spec.in
index 780e376c913..ba3e6af9d04 100644
--- a/dists/redhat/scummvm.spec.in
+++ b/dists/redhat/scummvm.spec.in
@@ -64,7 +64,7 @@ make %{_smp_mflags}
 %install
 make DESTDIR=%{buildroot} install
 install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
-desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/scummvm.desktop
+desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/org.scummvm.scummvm.desktop
 
 %clean
 rm -Rf ${RPM_BUILD_ROOT}
@@ -92,7 +92,7 @@ fi
 %{_datadir}/pixmaps/scummvm.xpm
 %{_datadir}/icons/hicolor/48x48/apps/scummvm.png
 %{_datadir}/icons/hicolor/scalable/apps/scummvm.svg
-%{_datadir}/metainfo/scummvm.appdata.xml
+%{_datadir}/metainfo/org.scummvm.scummvm.metainfo.xml
 %{_datadir}/scummvm/*
 %{_mandir}/man6/scummvm.6*
 
diff --git a/po/POTFILES b/po/POTFILES
index 7b9e9ee5b8a..0ede7f511b4 100644
--- a/po/POTFILES
+++ b/po/POTFILES
@@ -39,7 +39,7 @@ common/updates.cpp
 common/util.cpp
 
 dists/android.strings.xml.cpp
-dists/scummvm.appdata.xml.cpp
+dists/org.scummvm.scummvm.metainfo.xml.cpp
 
 engines/achievements.cpp
 engines/advancedDetector.cpp
diff --git a/po/ar.po b/po/ar.po
index 7452cf717b4..f006427793a 100644
--- a/po/ar.po
+++ b/po/ar.po
@@ -2823,12 +2823,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "مترجم للعديد من ألعاب المغامرات ولعب الأدوار"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2843,7 +2843,7 @@ msgstr ""
 "تصميمها من أجلها مطلقًا!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2856,7 +2856,7 @@ msgstr ""
 "Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/be-tarask.po b/po/be-tarask.po
index 99d7d714b89..914ae9eaca7 100644
--- a/po/be-tarask.po
+++ b/po/be-tarask.po
@@ -2825,12 +2825,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Інтэрпрэтатар многіх авантурных і ролявых гульняў"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2844,7 +2844,7 @@ msgstr ""
 "дазваляючы гуляць на сістэмах, на якія іх ніколі не распрацоўвалі!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2857,7 +2857,7 @@ msgstr ""
 "Cyan, Inc. Ñ– Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/be_BY.po b/po/be_BY.po
index d5e2b3b8900..f86a5550828 100644
--- a/po/be_BY.po
+++ b/po/be_BY.po
@@ -2856,12 +2856,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2871,7 +2871,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2880,7 +2880,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/ca_ES.po b/po/ca_ES.po
index 94d9e67e02e..983d8f468a2 100644
--- a/po/ca_ES.po
+++ b/po/ca_ES.po
@@ -2817,12 +2817,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Intèrpret per a nombrosos jocs d'aventura i jocs de rol"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2837,7 +2837,7 @@ msgstr ""
 "jugar-los en sistemes per als quals mai van ser dissenyats!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2850,7 +2850,7 @@ msgstr ""
 "Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/cs_CZ.po b/po/cs_CZ.po
index fdd3257153a..af51f913a0b 100644
--- a/po/cs_CZ.po
+++ b/po/cs_CZ.po
@@ -2842,12 +2842,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2857,7 +2857,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2866,7 +2866,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/da.po b/po/da.po
index 025ceddc862..b1083aa2884 100644
--- a/po/da.po
+++ b/po/da.po
@@ -2852,12 +2852,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2867,7 +2867,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2876,7 +2876,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/de_DE.po b/po/de_DE.po
index f8a7006119f..346fbbb6647 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -2848,12 +2848,12 @@ msgstr ""
 "Die Storage Access Framework Permissions für ScummVM wurden widerrufen!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpreter für zahlreiche Adventure-Spiele und RPGs"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2868,7 +2868,7 @@ msgstr ""
 "auf Systemen gespielt werden, für welche sie nie entwickelt wurden!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2881,7 +2881,7 @@ msgstr ""
 "Software, Cyan Inc. und den Westwood Studios entwickelt wurden."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/el.po b/po/el.po
index 3e40e7afcd0..a733efa85e2 100644
--- a/po/el.po
+++ b/po/el.po
@@ -2897,14 +2897,14 @@ msgstr ""
 "Framework) για το ScummVM ανακλήθηκαν!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 "Διερμηνευτής για πολυάριθμα παιχνίδια περιπέτειας και ρόλων (adventure και "
 "RPG)"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2920,7 +2920,7 @@ msgstr ""
 "να τα παίξετε σε συστήματα για τα οποία δεν είχαν σχεδιαστεί ποτέ!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2934,7 +2934,7 @@ msgstr ""
 "Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/es_ES.po b/po/es_ES.po
index 5ee39bbb041..a38b2d4100e 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -2858,12 +2858,12 @@ msgstr ""
 "ScummVM!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Intérprete de numerosas aventuras gráficas y RPG"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2878,7 +2878,7 @@ msgstr ""
 "sistemas para los que nunca fueron diseñados!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2891,7 +2891,7 @@ msgstr ""
 "y Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/eu.po b/po/eu.po
index df510434b6a..3ab112abc74 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -2842,12 +2842,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2857,7 +2857,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2866,7 +2866,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/fi_FI.po b/po/fi_FI.po
index 3d2441851ac..b405af53308 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -2819,12 +2819,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr "ScummVM:n Storage Access Framework-luvat poistettu!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Pelitulkki lukuisille seikkailu- ja roolipeleille"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2838,7 +2838,7 @@ msgstr ""
 "pelata pelejä jopa alustoilla joille pelejä ei koskaan suunniteltu!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2851,7 +2851,7 @@ msgstr ""
 "Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/fr_FR.po b/po/fr_FR.po
index 94ab3c3a09e..bd97827f88b 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -2868,12 +2868,12 @@ msgstr ""
 "Les permissions de Storage Access Framework pour ScummVM ont été révoquées !"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpréteur pour de nombreux jeux d'aventure et jeux de rôle"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2889,7 +2889,7 @@ msgstr ""
 "jamais été conçus !"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2902,7 +2902,7 @@ msgstr ""
 "Software, Cyan, Inc. et Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/gl_ES.po b/po/gl_ES.po
index d67c4a30a33..10aa84c183a 100644
--- a/po/gl_ES.po
+++ b/po/gl_ES.po
@@ -2850,12 +2850,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2865,7 +2865,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2874,7 +2874,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/he.po b/po/he.po
index c9c3485d8a3..f1df094a5ed 100644
--- a/po/he.po
+++ b/po/he.po
@@ -2814,12 +2814,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "מפרש עבור מספר גדול של משחקי הרפתקאות ומשחקי תפקידים"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2833,7 +2833,7 @@ msgstr ""
 "המשחק מעולם לא תוכנן!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2845,7 +2845,7 @@ msgstr ""
 "Line, Revolution Software, Cyan, Inc. וגם Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/hi.po b/po/hi.po
index 0356ad4c5b6..1c78073f40d 100644
--- a/po/hi.po
+++ b/po/hi.po
@@ -2718,12 +2718,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2733,7 +2733,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2742,7 +2742,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/hu_HU.po b/po/hu_HU.po
index 228fb222332..2baea4fa902 100644
--- a/po/hu_HU.po
+++ b/po/hu_HU.po
@@ -2855,12 +2855,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpreter számos kalandjátékhoz és szerepjátékhoz"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2875,7 +2875,7 @@ msgstr ""
 "hogy olyan rendszereken játsszák őket, amelyekre soha nem lettek tervezve!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2888,7 +2888,7 @@ msgstr ""
 "Inc. és a Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/it_IT.po b/po/it_IT.po
index e0b34871cd7..dcd87a820e4 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -2851,12 +2851,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr "Permessi Storage Access Framework per ScummVM revocati!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interprete per numerosi giochi di avventura e di ruolo"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2871,7 +2871,7 @@ msgstr ""
 "mai stati pensati!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2884,7 +2884,7 @@ msgstr ""
 "Line, la Revolution Software, la Cyan, Inc. o i Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/ja.po b/po/ja.po
index 641a89cd927..359198751c9 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -2793,12 +2793,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr "ScummVMのStorage Access Frameworkの権限が取り消されました!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "数多くのアドベンチャーゲームやロールプレイングゲームの通訳"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2813,7 +2813,7 @@ msgstr ""
 "できます!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2826,7 +2826,7 @@ msgstr ""
 "をサポートしています."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/ko.po b/po/ko.po
index 3d546342ba1..a506d3728dc 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -2820,12 +2820,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "여러 어드벤처 게임과 RPG를 위한 인터프리터"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2839,7 +2839,7 @@ msgstr ""
 "시스템에서도 실행할 수 있습니다!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2851,7 +2851,7 @@ msgstr ""
 "Studios 같은 전설적인 스튜디오에서 발표된 많은 고전을 지원합니다."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/nb_NO.po b/po/nb_NO.po
index 065860131e9..b22b5e4a906 100644
--- a/po/nb_NO.po
+++ b/po/nb_NO.po
@@ -2845,12 +2845,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Programvaretolk for utallige eventyr- og rollespill"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2865,7 +2865,7 @@ msgstr ""
 "det på plattformer det aldri var utviklet til å kjøre på!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2878,7 +2878,7 @@ msgstr ""
 "Cyan, Inc. og Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/nl_NL.po b/po/nl_NL.po
index c434b2c557b..73f9e118cb7 100644
--- a/po/nl_NL.po
+++ b/po/nl_NL.po
@@ -2790,12 +2790,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpreter voor diverse adventure spellen en rollenspellen"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2810,7 +2810,7 @@ msgstr ""
 "waardoor je ze kan spelen op systemen waar ze niet voor waren gemaakt!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2823,7 +2823,7 @@ msgstr ""
 "Cyan, Inc. en Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/nn_NO.po b/po/nn_NO.po
index c129ba2c569..e4735ac59ba 100644
--- a/po/nn_NO.po
+++ b/po/nn_NO.po
@@ -2828,12 +2828,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2843,7 +2843,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2852,7 +2852,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/pl_PL.po b/po/pl_PL.po
index 06235783696..ab495ec9ad4 100644
--- a/po/pl_PL.po
+++ b/po/pl_PL.po
@@ -2856,12 +2856,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpreter wielu gier przygodowych oraz RPG"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2875,7 +2875,7 @@ msgstr ""
 "pozwalając na granie w nie na systemach, na które nigdy nie były napisane!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2888,7 +2888,7 @@ msgstr ""
 "Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/pt_BR.po b/po/pt_BR.po
index fc9b37ac982..439e00b80d7 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -2843,12 +2843,12 @@ msgstr ""
 "revogadas!"
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpretador para vários jogos de aventura e RPG"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2863,7 +2863,7 @@ msgstr ""
 "eles nunca foram projetados!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2876,7 +2876,7 @@ msgstr ""
 "Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/pt_PT.po b/po/pt_PT.po
index a8a92f1d895..e538578b2d9 100644
--- a/po/pt_PT.po
+++ b/po/pt_PT.po
@@ -2833,12 +2833,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Interpretador de vários jogos de aventura e RPGs"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2848,7 +2848,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2857,7 +2857,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/ru_RU.po b/po/ru_RU.po
index 3cd6719ebe8..b069c04b2f4 100644
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -2871,12 +2871,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Интерпретатор множества приключенческих и ролевых игр"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2891,7 +2891,7 @@ msgstr ""
 "системах, для которых они никогда не были разработаны!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2905,7 +2905,7 @@ msgstr ""
 "Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/scummvm.pot b/po/scummvm.pot
index cd23d908320..f30ff084e4c 100644
--- a/po/scummvm.pot
+++ b/po/scummvm.pot
@@ -2699,12 +2699,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2714,7 +2714,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2723,7 +2723,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/sv_SE.po b/po/sv_SE.po
index b81c6a2e8c6..95973356cc4 100644
--- a/po/sv_SE.po
+++ b/po/sv_SE.po
@@ -2845,12 +2845,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2860,7 +2860,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2869,7 +2869,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/tr.po b/po/tr.po
index 821f86e0ec2..103fd9ee0ef 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -2854,12 +2854,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2869,7 +2869,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2878,7 +2878,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/uk_UA.po b/po/uk_UA.po
index 8863d4bb4e9..63606e75a4e 100644
--- a/po/uk_UA.po
+++ b/po/uk_UA.po
@@ -2869,12 +2869,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr "Інтерпретатор для численних пригодницьких і рольових ігор"
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2889,7 +2889,7 @@ msgstr ""
 "вони ніколи не були розроблені!"
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2902,7 +2902,7 @@ msgstr ""
 "Revolution Software, Cyan, Inc. та Westwood Studios."
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/po/zh.po b/po/zh.po
index 008403f8da8..cf96a4b39bb 100644
--- a/po/zh.po
+++ b/po/zh.po
@@ -2751,12 +2751,12 @@ msgid "Storage Access Framework Permissions for ScummVM were revoked!"
 msgstr ""
 
 #. I18N: One line summary as shown in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:32
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:32
 msgid "Interpreter for numerous adventure games and role-playing games"
 msgstr ""
 
 #. I18N: 1 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:37
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:37
 msgid ""
 "ScummVM is a program which allows you to run a wide variety of classic "
 "graphical point-and-click adventure games and role-playing games, provided "
@@ -2766,7 +2766,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 2 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:45
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:45
 msgid ""
 "Currently, ScummVM supports a huge library of adventures with over 4000 "
 "games in total. It supports many classics published by legendary studios "
@@ -2775,7 +2775,7 @@ msgid ""
 msgstr ""
 
 #. I18N: 3 of 3 paragraph of ScummVM description in *nix distributions
-#: dists/scummvm.appdata.xml.cpp:51
+#: dists/org.scummvm.scummvm.metainfo.xml.cpp:51
 msgid ""
 "Next to ground-breaking titles like the Monkey Island series, Broken Sword, "
 "Myst, Blade Runner and countless other games you will find some really "
diff --git a/ports.mk b/ports.mk
index 85bfafd13ec..14727ecb880 100644
--- a/ports.mk
+++ b/ports.mk
@@ -17,9 +17,9 @@ install-data:
 	$(INSTALL) -d "$(DESTDIR)$(datadir)"
 	$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(DIST_FILES_NETWORKING) $(DIST_FILES_VKEYBD) $(DIST_FILES_ENGINEDATA) "$(DESTDIR)$(datadir)/"
 	$(INSTALL) -d "$(DESTDIR)$(datarootdir)/applications"
-	$(INSTALL) -c -m 644 "$(srcdir)/dists/scummvm.desktop" "$(DESTDIR)$(datarootdir)/applications/scummvm.desktop"
+	$(INSTALL) -c -m 644 "$(srcdir)/dists/org.scummvm.scummvm.desktop" "$(DESTDIR)$(datarootdir)/applications/org.scummvm.scummvm.desktop"
 	$(INSTALL) -d "$(DESTDIR)$(datarootdir)/metainfo"
-	$(INSTALL) -c -m 644 "$(srcdir)/dists/scummvm.appdata.xml" "$(DESTDIR)$(datarootdir)/metainfo/scummvm.appdata.xml"
+	$(INSTALL) -c -m 644 "$(srcdir)/dists/org.scummvm.scummvm.metainfo.xml" "$(DESTDIR)$(datarootdir)/metainfo/org.scummvm.scummvm.metainfo.xml"
 ifneq ($(DIST_FILES_SHADERS),)
 	$(INSTALL) -d "$(DESTDIR)$(datadir)/shaders"
 	$(INSTALL) -c -m 644 $(DIST_FILES_SHADERS) "$(DESTDIR)$(datadir)/shaders"
@@ -48,8 +48,8 @@ uninstall:
 	rm -f "$(DESTDIR)$(datarootdir)/icons/hicolor/scalable/apps/scummvm.svg"
 	rm -rf "$(DESTDIR)$(docdir)"
 	rm -rf "$(DESTDIR)$(datadir)"
-	rm -f "$(DESTDIR)$(datarootdir)/applications/scummvm.desktop"
-	rm -f "$(DESTDIR)$(datarootdir)/metainfo/scummvm.appdata.xml"
+	rm -f "$(DESTDIR)$(datarootdir)/applications/org.scummvm.scummvm.desktop"
+	rm -f "$(DESTDIR)$(datarootdir)/metainfo/org.scummvm.scummvm.metainfo.xml"
 ifdef DYNAMIC_MODULES
 	rm -rf "$(DESTDIR)$(libdir)/scummvm/"
 endif


Commit: 94aff8553d4541e0fed55d55c4dd40c4befda4f6
    https://github.com/scummvm/scummvm/commit/94aff8553d4541e0fed55d55c4dd40c4befda4f6
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
I18N: Fix AppData international generation.

Language codes must be unique (pt is in double).
In addition, rework code to make it cleaner.

Changed paths:
    devtools/generate-metainfo.py
    dists/org.scummvm.scummvm.metainfo.xml


diff --git a/devtools/generate-metainfo.py b/devtools/generate-metainfo.py
index 40dee24d175..714c05b0c85 100644
--- a/devtools/generate-metainfo.py
+++ b/devtools/generate-metainfo.py
@@ -5,8 +5,10 @@
 
 import re
 import os
+import xml.sax.saxutils
 
-metainfo_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
+METAINFO_OUTPUT_FILE = 'dists/org.scummvm.scummvm.metainfo.xml'
+METAINFO_XML_TEMPLATE = '''<?xml version="1.0" encoding="UTF-8"?>
 <!-- Copyright 2020-2023 The ScummVM Team -->
 <component type="desktop-application">
   <id>org.scummvm.scummvm</id>
@@ -98,163 +100,162 @@ metainfo_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
 </component>
 '''
 
-def extract_summary(file):
-    with open('../po/' + file) as f:
+SUMMARY_TAG = 'dists/org.scummvm.scummvm.metainfo.xml.cpp:32'
+SUMMARY_PAT = r'  <summary xml:lang="xy">I18N: One line summary as shown in *nix distributions</summary>'
+PAR_TAGS = [
+    'dists/org.scummvm.scummvm.metainfo.xml.cpp:37', # Paragraph 1
+    'dists/org.scummvm.scummvm.metainfo.xml.cpp:45', # Paragraph 2
+    'dists/org.scummvm.scummvm.metainfo.xml.cpp:51', # Paragraph 3
+]
+PAR_PATS = [
+    r'    <p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in *nix distributions</p>',
+    r'    <p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in *nix distributions</p>',
+    r'    <p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in *nix distributions</p>',
+]
+
+BASE_PATH = os.path.realpath(os.path.join(os.path.dirname(__file__), '..'))
+
+def extract_po_line(file, tag):
+    with open(os.path.join(BASE_PATH, 'po', file), 'r') as f:
         content = f.read()
-    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:32\nmsgid ".+"\nmsgstr "(.+)"'
-    summary_match = re.search(pattern, content)
-    if summary_match:
-        summary = summary_match.group(1)
-        return summary.strip()
+    pattern = r'#: {0}\nmsgid ".+"\nmsgstr "(.+)"\n'.format(re.escape(tag))
+    line_match = re.search(pattern, content)
+    if line_match:
+        return line_match.group(1)
     else:
         return None
 
 
-def extract_par1(file):
-    with open('../po/' + file) as f:
+def extract_po_par(file, tag):
+    with open(os.path.join(BASE_PATH, 'po', file), 'r') as f:
         content = f.read()
-    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:37\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
-    par1_match = re.search(pattern, content)
-    if par1_match:
-        par1 = par1_match.group(2)
-        if par1:
-            return par1.strip()
-        else:
-            return None
-    else:
-        return None
-
-
-def extract_par2(file):
-    with open('../po/' + file) as f:
-        content = f.read()
-    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:45\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
-    par2_match = re.search(pattern, content)
-    if par2_match:
-        par2 = par2_match.group(2)
-        if par2:
-            return par2.strip()
-        else:
-            return None
+    pattern = r'#: {0}\nmsgid ""\n(?:".*"\n)+msgstr ""\n((?:".+"\n)+)'.format(re.escape(tag))
+    par_match = re.search(pattern, content)
+    if par_match:
+        par = par_match.group(1)
+        # Remove trailing \n
+        par = par[:-1]
+        # Remove quotes at start and end of line
+        return [line[1:-1] for line in par.split('\n')]
     else:
         return None
 
 
-def extract_par3(file):
-    with open('../po/' + file) as f:
-        content = f.read()
-    pattern = r'#: dists\/org\.scummvm\.scummvm\.metainfo\.xml\.cpp:51\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
-    par3_match = re.search(pattern, content)
-    if par3_match:
-        par3 = par3_match.group(2)
-        if par3:
-            return par3.strip()
-        else:
-            return None
-    else:
-        return None
+def po_to_lang(po_file_name):
+    # Remove .po extension
+    lang = po_file_name[:-3]
 
+    region_subtag = None
+    variant_subtag = None
+    # we use - for locale modifier (tarask)
+    if '-' in lang:
+        lang, variant_subtag = lang.split('-', maxsplit=1)
 
-def get_summary_translations(po_file_names):
-    summary_translations = ""
+    if '_' in lang:
+        lang, region_subtag = lang.split('_', maxsplit=1)
 
-    # first_translation is used to determine the indentation (first translation will not require any indentation)
-    first_translation = True
+    primary_subtag = lang
 
-    for file in po_file_names:
-        summary = extract_summary(file)
-        if (summary is None):
-            continue
+    assert(len(primary_subtag) == 2)
+    assert(region_subtag is None or len(region_subtag) == 2)
+    assert(variant_subtag is None or 6 <= len(variant_subtag) <= 8)
 
-        lang = '"' + file[0] + file[1] + '"'
-        summary_translations += ('' if first_translation else '  ') + '<summary xml:lang=' + \
-            lang + '>' + summary + '</summary>\n'
-        first_translation = False
+    lang = primary_subtag.lower()
+    if region_subtag:
+        lang += '-' + region_subtag.upper()
+    if variant_subtag:
+        lang += '-' + variant_subtag.lower()
 
-    summary_translations = summary_translations.rstrip('\n')
+    return primary_subtag, lang
 
-    return summary_translations
 
+def get_summary_translations(po_file_names):
+    summary_translations = []
 
-def substitute_summary_translations(summary_translations, xml):
-    pattern = r'<summary xml:lang="xy">I18N: One line summary as shown in \*nix distributions<\/summary>'
+    for file, lang in po_file_names.items():
+        summary = extract_po_line(file, SUMMARY_TAG)
+        if summary is None:
+            continue
 
-    metainfo_xml = re.sub(pattern, summary_translations, xml)
+        summary = xml.sax.saxutils.escape(summary)
 
-    return metainfo_xml
+        summary_translations.append('  <summary xml:lang="{0}">{1}</summary>'.format(
+                lang, summary))
 
+    return '\n'.join(summary_translations)
 
-def get_parx_translations(x, po_file_names):
-    parx_translations = ""
-    first_translation = True
 
-    for file in po_file_names:
-        parx = ""
-        if (x == 1):
-            parx = extract_par1(file)
-        elif (x == 2):
-            parx = extract_par2(file)
-        else:
-            parx = extract_par3(file)
+def substitute_summary_translations(po_file_names, xml):
+    summary_translations = get_summary_translations(po_file_names)
+    return xml.replace(SUMMARY_PAT, summary_translations)
 
-        if (parx is None):
-            continue
 
-        # parx also contains " (quotes) around the text; so we need to replace them with empty character
-        # otherwise " (quotes) will appear in scummvm.metainfo.xml generated file
-        parx = parx.replace('"', '')
+def get_parx_translations(po_file_names, tag):
+    parx_translations = []
 
-        lang = '"' + file[0] + file[1] + '"'
-        parx_translations += ('' if first_translation else '    ') + '<p xml:lang=' + \
-            lang + '>' + parx + '</p>\n'
-        first_translation = False
+    for file, lang in po_file_names.items():
+        parx = extract_po_par(file, tag)
 
-    parx_translations = parx_translations.rstrip('\n')
+        if parx is None:
+            continue
 
-    return parx_translations
+        # In XML a newline will be replace by a space character
+        # Join everything making it pretty and remove trailing spaces
+        parx = '\n'.join(line.rstrip(' ') for line in parx)
+        parx = xml.sax.saxutils.escape(parx)
 
+        parx_translations.append('    <p xml:lang="{0}">{1}</p>'.format(lang, parx))
 
-def substitute_parx_translations(x, parx_translations, xml):
-    pattern = r'<p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+    return '\n'.join(parx_translations)
 
-    if (x == 2):
-        pattern = r'<p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
-    elif (x == 3):
-        pattern = r'<p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
 
-    metainfo_xml = re.sub(pattern, parx_translations, xml)
-    return metainfo_xml
+def substitute_parx_translations(po_file_names, xml):
+    for tag, pat in zip(PAR_TAGS, PAR_PATS):
+        parx_translations = get_parx_translations(po_file_names, tag)
+        xml = xml.replace(pat, parx_translations)
+    return xml
 
 
 def get_po_files():
     po_file_names = []
-    for filename in os.listdir("../po/"):
+    for filename in os.listdir(os.path.join(BASE_PATH, 'po')):
         if filename.endswith(".po"):
             po_file_names.append(filename)
 
     po_file_names.sort()
 
-    return po_file_names
+    po_langs = {}
+    last_primary = None
+    last_file = None
+    for file in po_file_names:
+        primary_subtag, lang = po_to_lang(file)
+        if last_primary != primary_subtag:
+            # We are sorted so it's a new primary group
+            last_primary = primary_subtag
+            did_dedup = False
+            # Try with primary subtag first
+            po_langs[file] = primary_subtag
+        else:
+            if not did_dedup:
+                # Fix last file name because we have duplicate
+                po_langs[last_file] = po_to_lang(last_file)[1]
+                did_dedup = True
+            # We got a duplicate lang code: deduplicate
+            po_langs[file] = lang
+        last_file = file
+
+    return po_langs
 
 
 def main():
     po_file_names = get_po_files()
 
-    summary_translations = get_summary_translations(po_file_names)
     xml = substitute_summary_translations(
-        summary_translations, metainfo_xml_template)
-
-    par1_translations = get_parx_translations(1, po_file_names)
-    xml = substitute_parx_translations(1, par1_translations, xml)
-
-    par2_translations = get_parx_translations(2, po_file_names)
-    xml = substitute_parx_translations(2, par2_translations, xml)
+        po_file_names, METAINFO_XML_TEMPLATE)
 
-    par3_translations = get_parx_translations(3, po_file_names)
-    xml = substitute_parx_translations(3, par3_translations, xml)
+    xml = substitute_parx_translations(po_file_names, xml)
 
-    # write to org.scummvm.scummvm.metainfo.xml file
-    with open("../dists/org.scummvm.scummvm.metainfo.xml", "w") as f:
+    with open(os.path.join(BASE_PATH, METAINFO_OUTPUT_FILE), 'w') as f:
         f.write(xml)
 
 
diff --git a/dists/org.scummvm.scummvm.metainfo.xml b/dists/org.scummvm.scummvm.metainfo.xml
index cd39e03b33f..c8da017405b 100644
--- a/dists/org.scummvm.scummvm.metainfo.xml
+++ b/dists/org.scummvm.scummvm.metainfo.xml
@@ -7,7 +7,7 @@
   <name>ScummVM</name>
   <summary>Interpreter for numerous adventure games and role-playing games</summary>
   <summary xml:lang="ar">مترجم للعديد من ألعاب المغامرات ولعب الأدوار</summary>
-  <summary xml:lang="be">Інтэрпрэтатар многіх авантурных і ролявых гульняў</summary>
+  <summary xml:lang="be-tarask">Інтэрпрэтатар многіх авантурных і ролявых гульняў</summary>
   <summary xml:lang="ca">Intèrpret per a nombrosos jocs d'aventura i jocs de rol</summary>
   <summary xml:lang="de">Interpreter für zahlreiche Adventure-Spiele und RPGs</summary>
   <summary xml:lang="es">Intérprete de numerosas aventuras gráficas y RPG</summary>
@@ -21,8 +21,8 @@
   <summary xml:lang="nb">Programvaretolk for utallige eventyr- og rollespill</summary>
   <summary xml:lang="nl">Interpreter voor diverse adventure spellen en rollenspellen</summary>
   <summary xml:lang="pl">Interpreter wielu gier przygodowych oraz RPG</summary>
-  <summary xml:lang="pt">Interpretador para vários jogos de aventura e RPG</summary>
-  <summary xml:lang="pt">Interpretador de vários jogos de aventura e RPGs</summary>
+  <summary xml:lang="pt-BR">Interpretador para vários jogos de aventura e RPG</summary>
+  <summary xml:lang="pt-PT">Interpretador de vários jogos de aventura e RPGs</summary>
   <summary xml:lang="ru">Интерпретатор множества приключенческих и ролевых игр</summary>
   <summary xml:lang="uk">Інтерпретатор для численних пригодницьких і рольових ігор</summary>
   <developer_name>The ScummVM Team</developer_name>
@@ -38,219 +38,219 @@
       ScummVM just replaces the executables shipped with the game,
       allowing you to play them on systems for which they were never designed!
     </p>
-    <p xml:lang="ar">ScummVM هو برنامج يسمح لك بتشغيل مجموعة متنوعة من ألعاب المغامرات وألعاب 
-تقمص الأدوار الرسومية والتأشير والنقر ، بشرط أن يكون لديك بالفعل ملفات 
-البيانات الخاصة بهم. الجزء الذكي في هذا الأمر: يستبدل ScummVM الملفات 
-التنفيذية التي يتم شحنها مع اللعبة ، مما يتيح لك تشغيلها على أنظمة لم يتم 
+    <p xml:lang="ar">ScummVM هو برنامج يسمح لك بتشغيل مجموعة متنوعة من ألعاب المغامرات وألعاب
+تقمص الأدوار الرسومية والتأشير والنقر ، بشرط أن يكون لديك بالفعل ملفات
+البيانات الخاصة بهم. الجزء الذكي في هذا الأمر: يستبدل ScummVM الملفات
+التنفيذية التي يتم شحنها مع اللعبة ، مما يتيح لك تشغيلها على أنظمة لم يتم
 تصميمها من أجلها مطلقًا!</p>
-    <p xml:lang="be">ScummVM — гэта праграма для запуску розных клясічных графічных point-and-
-click авантурных і ралявых гульняў, пры ўмове, што вы маеце зьвесткі тых 
-гульняў. Карацей, ScummVM проста замяняе выканальныя файлы гульняў, 
+    <p xml:lang="be-tarask">ScummVM — гэта праграма для запуску розных клясічных графічных point-and-
+click авантурных і ралявых гульняў, пры ўмове, што вы маеце зьвесткі тых
+гульняў. Карацей, ScummVM проста замяняе выканальныя файлы гульняў,
 дазваляючы гуляць на сістэмах, на якія іх ніколі не распрацоўвалі!</p>
-    <p xml:lang="ca">ScummVM és un programa que permet executar una àmplia varietat de jocs 
-clàssics d'aventures gràfiques «point-and-click» i jocs de rol, sempre que 
-ja tingueu els seus fitxers de dades. La part intel·ligent sobre això: 
-ScummVM només substitueix els executables originals del joc, permetent-vos 
+    <p xml:lang="ca">ScummVM és un programa que permet executar una àmplia varietat de jocs
+clàssics d'aventures gràfiques «point-and-click» i jocs de rol, sempre que
+ja tingueu els seus fitxers de dades. La part intel·ligent sobre això:
+ScummVM només substitueix els executables originals del joc, permetent-vos
 jugar-los en sistemes per als quals mai van ser dissenyats!</p>
-    <p xml:lang="de">ScummVM ist ein Programm, welches dir ermöglicht, zahlreiche Adventures und 
-RPGs auszuführen, vorausgesetzt, du bist im Besitz der passenden 
-Spieldateien. ScummVM ersetzt dabei die ausführbaren Programmdateien, die 
-ursprünglich mit dem Spiel mitgeliefert wurden. Dadurch können diese Spiele 
+    <p xml:lang="de">ScummVM ist ein Programm, welches dir ermöglicht, zahlreiche Adventures und
+RPGs auszuführen, vorausgesetzt, du bist im Besitz der passenden
+Spieldateien. ScummVM ersetzt dabei die ausführbaren Programmdateien, die
+ursprünglich mit dem Spiel mitgeliefert wurden. Dadurch können diese Spiele
 auf Systemen gespielt werden, für welche sie nie entwickelt wurden!</p>
-    <p xml:lang="el">Το ScummVM είναι μια εφαρμογή που σας επιτρέπει να παίξετε μια ευρεία 
-ποικιλία από κλασσικά παιχνίδια περιπέτειας point-and-click, και ρόλων 
-(adventure και role-playing), αρκεί να έχετε στην κατοχή σας τα αρχεία 
-δεδομένων τους. Το ενδιαφέρον σε αυτή την υπόθεση είναι το εξής: το ScummVM 
-απλά αντικαθιστά τα εκτελέσιμα που συνόδευαν τα παιχνίδια, επιτρέποντάς σας 
+    <p xml:lang="el">Το ScummVM είναι μια εφαρμογή που σας επιτρέπει να παίξετε μια ευρεία
+ποικιλία από κλασσικά παιχνίδια περιπέτειας point-and-click, και ρόλων
+(adventure και role-playing), αρκεί να έχετε στην κατοχή σας τα αρχεία
+δεδομένων τους. Το ενδιαφέρον σε αυτή την υπόθεση είναι το εξής: το ScummVM
+απλά αντικαθιστά τα εκτελέσιμα που συνόδευαν τα παιχνίδια, επιτρέποντάς σας
 να τα παίξετε σε συστήματα για τα οποία δεν είχαν σχεδιαστεί ποτέ!</p>
-    <p xml:lang="es">ScummVM es un programa que te permite ejecutar una amplia selección de 
-aventuras gráficas «point-and-click» y RPG clásicos, siempre y cuando ya 
-tengas sus archivos de datos. Lo interesante es que ScummVM se limita a 
-sustituir los ejecutables de cada juego, ¡lo que permite jugarlos en 
+    <p xml:lang="es">ScummVM es un programa que te permite ejecutar una amplia selección de
+aventuras gráficas «point-and-click» y RPG clásicos, siempre y cuando ya
+tengas sus archivos de datos. Lo interesante es que ScummVM se limita a
+sustituir los ejecutables de cada juego, ¡lo que permite jugarlos en
 sistemas para los que nunca fueron diseñados!</p>
-    <p xml:lang="fi">ScummVM on ohjelma jonka avulla voit pelata lukuisia klassisia graafisia 
-seikkailu- ja roolipelejä, olettaen että sinulla on jo pelien datatiedostot. 
-Tämä on fiksua koska: ScummVM korvaa itse ajettavan peliohjelman, joten voit 
+    <p xml:lang="fi">ScummVM on ohjelma jonka avulla voit pelata lukuisia klassisia graafisia
+seikkailu- ja roolipelejä, olettaen että sinulla on jo pelien datatiedostot.
+Tämä on fiksua koska: ScummVM korvaa itse ajettavan peliohjelman, joten voit
 pelata pelejä jopa alustoilla joille pelejä ei koskaan suunniteltu!</p>
-    <p xml:lang="fr">ScummVM est un programme qui vous permet d'exécuter une grande variété de 
-jeux d'aventure graphique point-and-click et de jeux de rôle, à condition 
-que vous ayez déjà leurs fichiers de données. Ce qui est génial dans tout 
-ça : ScummVM remplace simplement les exécutables livrés avec les jeux, ce 
-qui vous permet de jouer sur des systèmes pour lesquels ces jeux n'ont 
+    <p xml:lang="fr">ScummVM est un programme qui vous permet d'exécuter une grande variété de
+jeux d'aventure graphique point-and-click et de jeux de rôle, à condition
+que vous ayez déjà leurs fichiers de données. Ce qui est génial dans tout
+ça : ScummVM remplace simplement les exécutables livrés avec les jeux, ce
+qui vous permet de jouer sur des systèmes pour lesquels ces jeux n'ont
 jamais été conçus !</p>
     <p xml:lang="he">ScummVM הינה תכנה שמאפשרת להריץ מגוון רחב של משחקי הרפתקאות גרפיים הצבע-
-והקלק ומשחקי תפקידים, בהינתן קבצי הנתונים שלהם. החלק המעניין הוא: ScummVM 
-מחליפה רק את קובץ הריצה שהגיע עם המשחק, מה שמאפשר לשחק בהם על מערכות אליהם 
+והקלק ומשחקי תפקידים, בהינתן קבצי הנתונים שלהם. החלק המעניין הוא: ScummVM
+מחליפה רק את קובץ הריצה שהגיע עם המשחק, מה שמאפשר לשחק בהם על מערכות אליהם
 המשחק מעולם לא תוכנן!</p>
-    <p xml:lang="hu">A ScummVM egy olyan program, mely számos klasszikus grafikus point-and-click 
-kalandjáték és szerepjáték futtatását teszi lehetővé, feltéve, hogy már 
-rendelkeznek az adatfájljaikkal. Az okos rész ebben: A ScummVM csak 
-kicseréli a játékkal szállított futtatható fájlokat, lehetővé téve számukra, 
+    <p xml:lang="hu">A ScummVM egy olyan program, mely számos klasszikus grafikus point-and-click
+kalandjáték és szerepjáték futtatását teszi lehetővé, feltéve, hogy már
+rendelkeznek az adatfájljaikkal. Az okos rész ebben: A ScummVM csak
+kicseréli a játékkal szállított futtatható fájlokat, lehetővé téve számukra,
 hogy olyan rendszereken játsszák őket, amelyekre soha nem lettek tervezve!</p>
-    <p xml:lang="it">ScummVM è un programma che permette di eseguire svariate avventure grafiche 
-e giochi di ruolo classici, a patto di averne a disposizione i files 
-originali. Il bello è che ScummVM sostituisce gli eseguibili originari, 
-permettendo di eseguire i giochi su piattaforme per cui non erano neppure 
+    <p xml:lang="it">ScummVM è un programma che permette di eseguire svariate avventure grafiche
+e giochi di ruolo classici, a patto di averne a disposizione i files
+originali. Il bello è che ScummVM sostituisce gli eseguibili originari,
+permettendo di eseguire i giochi su piattaforme per cui non erano neppure
 mai stati pensati!</p>
     <p xml:lang="ja">ScummVMは、データファイルが既にある場合に、さまざまな古典的なグラフィカルポイ
 ントアンドクリックアドベンチャーゲームやロールプレイングゲームを実行できるよ
 うにするプログラムです。これに関する巧妙な部分:ScummVMは、ゲームに付属してい
 る実行可能ファイルを置き換えるだけなので、設計されたことのないシステムで実行
 できます!</p>
-    <p xml:lang="ko">ScummVM은 데이터 파일을 가진 경우 다양한 고전 그래픽 포인트 앤 클릭 어드벤처 
-게임과 롤플레잉 게임을 실행할 수 있게 하는 프로그램입니다. ScummVM은 게임과 
-함께 제공된 실행파일을 대체하기 때문에 원래 게임이 실행되도록 설계되지 않은 
+    <p xml:lang="ko">ScummVM은 데이터 파일을 가진 경우 다양한 고전 그래픽 포인트 앤 클릭 어드벤처
+게임과 롤플레잉 게임을 실행할 수 있게 하는 프로그램입니다. ScummVM은 게임과
+함께 제공된 실행파일을 대체하기 때문에 원래 게임이 실행되도록 설계되지 않은
 시스템에서도 실행할 수 있습니다!</p>
-    <p xml:lang="nb">ScummVM er et program som lar deg kjøre et bredt assortiment av klassiske 
-pek-og-klikk-eventyrspill og rollespill – forutsatt at du allerede har 
-datafilene til spillet. Det finurlige med det hele er at ScummVM kun 
-erstatter selve programdelen av spillet og gjør det slik at du kan spille 
+    <p xml:lang="nb">ScummVM er et program som lar deg kjøre et bredt assortiment av klassiske
+pek-og-klikk-eventyrspill og rollespill – forutsatt at du allerede har
+datafilene til spillet. Det finurlige med det hele er at ScummVM kun
+erstatter selve programdelen av spillet og gjør det slik at du kan spille
 det på plattformer det aldri var utviklet til å kjøre på!</p>
-    <p xml:lang="nl">ScummVM is een programma die het mogelijk maakt om een grote verscheidenheid 
-aan klassieke grafische point-and-click adventure spellen en rollenspellen 
-te spelen, mits je de benodigde data bestanden al hebt. Het unieke hiervan 
-is: ScummVM vervangt de executables die bij het spel geleverd worden, 
+    <p xml:lang="nl">ScummVM is een programma die het mogelijk maakt om een grote verscheidenheid
+aan klassieke grafische point-and-click adventure spellen en rollenspellen
+te spelen, mits je de benodigde data bestanden al hebt. Het unieke hiervan
+is: ScummVM vervangt de executables die bij het spel geleverd worden,
 waardoor je ze kan spelen op systemen waar ze niet voor waren gemaakt!</p>
-    <p xml:lang="pl">ScummVM to program pozwalajÄ…cy na uruchomienie bogatego wyboru klasycznych 
-graficznych gier przygodowych typu „wskaż i kliknij”, oraz gier RPG - pod 
-warunkiem posiadania ich danych. ScummVM podmienia oryginalny program gier, 
+    <p xml:lang="pl">ScummVM to program pozwalajÄ…cy na uruchomienie bogatego wyboru klasycznych
+graficznych gier przygodowych typu „wskaż i kliknij”, oraz gier RPG - pod
+warunkiem posiadania ich danych. ScummVM podmienia oryginalny program gier,
 pozwalając na granie w nie na systemach, na które nigdy nie były napisane!</p>
-    <p xml:lang="pt">ScummVM é um programa que permite que você execute uma ampla variedade de 
-jogos clássicos de point-and-click (apontar e clicar) e RPG, desde que você 
-já tenha seus arquivos de dados. A melhor parte: ScummVM apenas substitui os 
-executáveis do jogo, permitindo que você os jogue em sistemas para os quais 
+    <p xml:lang="pt-BR">ScummVM é um programa que permite que você execute uma ampla variedade de
+jogos clássicos de point-and-click (apontar e clicar) e RPG, desde que você
+já tenha seus arquivos de dados. A melhor parte: ScummVM apenas substitui os
+executáveis do jogo, permitindo que você os jogue em sistemas para os quais
 eles nunca foram projetados!</p>
-    <p xml:lang="ru">ScummVM - это программа, которая позволяет запускать широкий спектр 
-классических графических приключенческих игр и ролевых игр, при условии, что 
-у вас уже есть их файлы данных. Самое умное в этом: ScummVM просто заменяет 
-исполняемые файлы, поставляемые с игрой, позволяя вам играть в них на 
+    <p xml:lang="ru">ScummVM - это программа, которая позволяет запускать широкий спектр
+классических графических приключенческих игр и ролевых игр, при условии, что
+у вас уже есть их файлы данных. Самое умное в этом: ScummVM просто заменяет
+исполняемые файлы, поставляемые с игрой, позволяя вам играть в них на
 системах, для которых они никогда не были разработаны!</p>
-    <p xml:lang="uk">ScummVM - це програма, яка дозволяє запускати широкий спектр класичних 
-графічних пригодницьких ігор та рольових ігор, якщо у вас вже є їх файли 
-даних. Щонайголовніше: ScummVM просто замінює виконувані файли, що 
-постачаються разом із грою, дозволяючи відтворювати їх у системах, для яких 
+    <p xml:lang="uk">ScummVM - це програма, яка дозволяє запускати широкий спектр класичних
+графічних пригодницьких ігор та рольових ігор, якщо у вас вже є їх файли
+даних. Щонайголовніше: ScummVM просто замінює виконувані файли, що
+постачаються разом із грою, дозволяючи відтворювати їх у системах, для яких
 вони ніколи не були розроблені!</p>
     <p>
       Currently, ScummVM supports a huge library of adventures with over 250 games in total.
       It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
       Revolution Software, Cyan, Inc. and Westwood Studios.
     </p>
-    <p xml:lang="ar">حاليًا ، تدعم ScummVM مكتبة ضخمة من المغامرات تضم أكثر من 4000 لعبة في 
-المجموع. وهو يدعم العديد من الكلاسيكيات التي نشرتها الاستوديوهات الأسطورية 
-مثل LucasArts و Sierra On-Line و Revolution Software و Cyan، Inc. و Westwood 
+    <p xml:lang="ar">حاليًا ، تدعم ScummVM مكتبة ضخمة من المغامرات تضم أكثر من 4000 لعبة في
+المجموع. وهو يدعم العديد من الكلاسيكيات التي نشرتها الاستوديوهات الأسطورية
+مثل LucasArts و Sierra On-Line و Revolution Software و Cyan، Inc. و Westwood
 Studios.</p>
-    <p xml:lang="be">На гэты момант ScummVM падтрымлівае вялічэзную бібліятэку авантур, дзе болей 
-за 4000 гульняў. Вы зможаце дакрануцца да многіх клясічных твораў, выданых 
-леґэндарнымі студыямі як LucasArts, Sierra On-Line, Revolution Software, 
+    <p xml:lang="be-tarask">На гэты момант ScummVM падтрымлівае вялічэзную бібліятэку авантур, дзе болей
+за 4000 гульняў. Вы зможаце дакрануцца да многіх клясічных твораў, выданых
+леґэндарнымі студыямі як LucasArts, Sierra On-Line, Revolution Software,
 Cyan, Inc. Ñ– Westwood Studios.</p>
-    <p xml:lang="ca">Actualment, ScummVM suporta una enorme biblioteca d'aventures amb més de 
-4.000 jocs en total. Dóna suport a molts clàssics publicats per estudis 
-llegendaris com LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. i 
+    <p xml:lang="ca">Actualment, ScummVM suporta una enorme biblioteca d'aventures amb més de
+4.000 jocs en total. Dóna suport a molts clàssics publicats per estudis
+llegendaris com LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. i
 Westwood Studios.</p>
     <p xml:lang="de">Aktuell unterstützt ScummVM eine umfangreiche Bibliothek von Adventure-
-Spielen mit insgesamt über 4000 Spielen. Unterstützt werden viele Klassiker, 
-die von legendären Studios wie LucasArts, Sierra On-Line, Revolution 
+Spielen mit insgesamt über 4000 Spielen. Unterstützt werden viele Klassiker,
+die von legendären Studios wie LucasArts, Sierra On-Line, Revolution
 Software, Cyan Inc. und den Westwood Studios entwickelt wurden.</p>
-    <p xml:lang="el">Το ScummVM υποστηρίζει μια τεράστια βιβλιοθήκη από παιχνίδια περιπέτειας 
-(adventure games) με περισσότερους από 4000 τίτλους συνολικά. Υποστηρίζει 
-πολλούς από τους κλασσικούς τίτλους που έχουν εκδώσει θρυλικά στούντιο όπως 
-οι LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. και Westwood 
+    <p xml:lang="el">Το ScummVM υποστηρίζει μια τεράστια βιβλιοθήκη από παιχνίδια περιπέτειας
+(adventure games) με περισσότερους από 4000 τίτλους συνολικά. Υποστηρίζει
+πολλούς από τους κλασσικούς τίτλους που έχουν εκδώσει θρυλικά στούντιο όπως
+οι LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. και Westwood
 Studios.</p>
-    <p xml:lang="es">ScummVM es compatible con una inmensa biblioteca de más de 4 000 juegos en 
-total. Funciona con muchos de los clásicos publicados por estudios 
-legendarios como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. 
+    <p xml:lang="es">ScummVM es compatible con una inmensa biblioteca de más de 4 000 juegos en
+total. Funciona con muchos de los clásicos publicados por estudios
+legendarios como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc.
 y Westwood Studios.</p>
-    <p xml:lang="fi">Tällä hetkellä ScummVM tukee jättimäistä seikkailujen kirjastoa, kaikkiaan 
-yli 4000 peliä. Se tukee lukuisia klassikkoja legendaarisilta studioilta 
-kuten LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. ja Westwood 
+    <p xml:lang="fi">Tällä hetkellä ScummVM tukee jättimäistä seikkailujen kirjastoa, kaikkiaan
+yli 4000 peliä. Se tukee lukuisia klassikkoja legendaarisilta studioilta
+kuten LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. ja Westwood
 Studios.</p>
-    <p xml:lang="fr">Actuellement, ScummVM supporte une énorme collection d'aventures avec plus 
-de 4000 jeux au total. Il prend en charge de nombreux classiques publiés par 
-des studios légendaires comme LucasArts, Sierra On-Line, Revolution 
+    <p xml:lang="fr">Actuellement, ScummVM supporte une énorme collection d'aventures avec plus
+de 4000 jeux au total. Il prend en charge de nombreux classiques publiés par
+des studios légendaires comme LucasArts, Sierra On-Line, Revolution
 Software, Cyan, Inc. et Westwood Studios.</p>
-    <p xml:lang="he">נכון להיום, ScummVM תומכת בספריה ענקית של הרפתקאות, עם למעלה מ-4000 משחקים 
+    <p xml:lang="he">נכון להיום, ScummVM תומכת בספריה ענקית של הרפתקאות, עם למעלה מ-4000 משחקים
 בסך הכל. ביניהם מיטב הקלאסיקות של אולפנים אגדיים כמו LucasArts, Sierra On-
 Line, Revolution Software, Cyan, Inc. וגם Westwood Studios.</p>
-    <p xml:lang="hu">Jelenleg a ScummVM egy hatalmas kalandkönyvtárat támogat, összesen több mint 
-4000 játékkal. Támogatja számos legendás stúdió által kiadott klasszikust, 
-mint például a LucasArts, a Sierra On-Line, a Revolution Software, a Cyan, 
+    <p xml:lang="hu">Jelenleg a ScummVM egy hatalmas kalandkönyvtárat támogat, összesen több mint
+4000 játékkal. Támogatja számos legendás stúdió által kiadott klasszikust,
+mint például a LucasArts, a Sierra On-Line, a Revolution Software, a Cyan,
 Inc. és a Westwood Studios.</p>
-    <p xml:lang="it">Attualmente, ScummVM supporta una vastissima collezione di giochi di 
-avventura, per un totale di oltre 4000 titoli. Tra questi, molti giochi 
+    <p xml:lang="it">Attualmente, ScummVM supporta una vastissima collezione di giochi di
+avventura, per un totale di oltre 4000 titoli. Tra questi, molti giochi
 rinomati pubblicati da editori leggendari come la LucasArts, la Sierra On-
 Line, la Revolution Software, la Cyan, Inc. o i Westwood Studios.</p>
     <p xml:lang="ja">現在、ScummVMは、合計4000を超えるゲームを備えた膨大なアドベンチャーライブラリ
 をサポートしています。 LucasArts、Sierra On-Line、Revolution Software、Cyan、
 Inc.、WestwoodStudiosなどの伝説的なスタジオによって公開された多くのクラシック
 をサポートしています.</p>
-    <p xml:lang="ko">현재 ScummVM은 합계 4000개를 넘는 수많은 어드벤처 게임을 지원합니다. 
-LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc., 그리고 Westwood 
+    <p xml:lang="ko">현재 ScummVM은 합계 4000개를 넘는 수많은 어드벤처 게임을 지원합니다.
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc., 그리고 Westwood
 Studios 같은 전설적인 스튜디오에서 발표된 많은 고전을 지원합니다.</p>
-    <p xml:lang="nb">For øyeblikket støtter ScummVM et eventyrlig bibliotek på over 4000 
-spilltitler totalt. Det støtter mange klassikere utgitt av legendariske 
-spillstudioer som bl.a. LucasArts, Sierra On-Line, Revolution Software, 
+    <p xml:lang="nb">For øyeblikket støtter ScummVM et eventyrlig bibliotek på over 4000
+spilltitler totalt. Det støtter mange klassikere utgitt av legendariske
+spillstudioer som bl.a. LucasArts, Sierra On-Line, Revolution Software,
 Cyan, Inc. og Westwood Studios.</p>
-    <p xml:lang="nl">Momenteel ondersteunt ScummVM een enorme hoeveelheid adventures van meer dan 
-4000 spellen in totaal. Het ondersteunt vele klassiekers gepubliceerd door 
-legendarische studios als LucasArts, Sierra On-Line, Revolution Software, 
+    <p xml:lang="nl">Momenteel ondersteunt ScummVM een enorme hoeveelheid adventures van meer dan
+4000 spellen in totaal. Het ondersteunt vele klassiekers gepubliceerd door
+legendarische studios als LucasArts, Sierra On-Line, Revolution Software,
 Cyan, Inc. en Westwood Studios.</p>
-    <p xml:lang="pl">Obecnie ScummVM obsługuje wielki katalog przygód liczący razem ponad 4000 
-gier. Obsługuje wiele klasycznych gier wydanych przez legandarne studia 
-takie jak LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. oraz 
+    <p xml:lang="pl">Obecnie ScummVM obsługuje wielki katalog przygód liczący razem ponad 4000
+gier. Obsługuje wiele klasycznych gier wydanych przez legandarne studia
+takie jak LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. oraz
 Westwood Studios.</p>
-    <p xml:lang="pt">Atualmente o ScummVM suporta uma enorme biblioteca de aventuras com mais de 
-4000 jogos no total. Ele suporta muitos clássicos publicados por estúdios 
-lendários como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. e 
+    <p xml:lang="pt-BR">Atualmente o ScummVM suporta uma enorme biblioteca de aventuras com mais de
+4000 jogos no total. Ele suporta muitos clássicos publicados por estúdios
+lendários como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. e
 Westwood Studios.</p>
-    <p xml:lang="ru">В настоящее время ScummVM поддерживает огромную библиотеку приключений, 
-насчитывающую в общей сложности более 4000 игр. Он поддерживает множество 
-классических произведений, выпущенных легендарными студиями, такими как 
-LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. и Westwood 
+    <p xml:lang="ru">В настоящее время ScummVM поддерживает огромную библиотеку приключений,
+насчитывающую в общей сложности более 4000 игр. Он поддерживает множество
+классических произведений, выпущенных легендарными студиями, такими как
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. и Westwood
 Studios.</p>
-    <p xml:lang="uk">В даний час ScummVM підтримує величезну бібліотеку пригодницьких ігор із 
-загальною кількістю понад 4000. Проект підтримує багато класичних творів, 
-опублікованих такими легендарними студіями, як LucasArts, Sierra On-Line, 
+    <p xml:lang="uk">В даний час ScummVM підтримує величезну бібліотеку пригодницьких ігор із
+загальною кількістю понад 4000. Проект підтримує багато класичних творів,
+опублікованих такими легендарними студіями, як LucasArts, Sierra On-Line,
 Revolution Software, Cyan, Inc. та Westwood Studios.</p>
     <p>
       Next to ground-breaking titles like the Monkey Island series, Broken Sword,
       Myst, Blade Runner and countless other games you will find
       some really obscure adventures and truly hidden gems to explore.
     </p>
-    <p xml:lang="ar">بجانب العناوين الرائدة مثل سلسلة Monkey Island و Broken Sword و Myst و Blade 
-Runner وعدد لا يحصى من الألعاب الأخرى ، ستجد بعض المغامرات الغامضة حقًا 
+    <p xml:lang="ar">بجانب العناوين الرائدة مثل سلسلة Monkey Island و Broken Sword و Myst و Blade
+Runner وعدد لا يحصى من الألعاب الأخرى ، ستجد بعض المغامرات الغامضة حقًا
 والأحجار الكريمة المخفية حقًا لاستكشافها.</p>
-    <p xml:lang="be">Разам з рэвалюцыйнымі гульнямі як Monkey Island, Broken Sword, Myst, Blade 
-Runner і безьлічам іншых гульняў, вы знойдзіце насамрэч малавядомыя авантуры 
+    <p xml:lang="be-tarask">Разам з рэвалюцыйнымі гульнямі як Monkey Island, Broken Sword, Myst, Blade
+Runner і безьлічам іншых гульняў, вы знойдзіце насамрэч малавядомыя авантуры
 й прыхаваныя скарбы.</p>
-    <p xml:lang="ca">Al costat de títols innovadors com la sèrie Monkey Island, Broken Sword, 
-Myst, Blade Runner i molts altres jocs trobareu algunes aventures realment 
+    <p xml:lang="ca">Al costat de títols innovadors com la sèrie Monkey Island, Broken Sword,
+Myst, Blade Runner i molts altres jocs trobareu algunes aventures realment
 fosques i altres gemmes realment ocultes per explorar.</p>
-    <p xml:lang="de">Neben bahnbrechenden Titel wie der Monkey Island-Serie, Baphomets Fluch, 
-Myst, Blade Runner und zahllosen weiteren Spielen wirst du auch einige 
+    <p xml:lang="de">Neben bahnbrechenden Titel wie der Monkey Island-Serie, Baphomets Fluch,
+Myst, Blade Runner und zahllosen weiteren Spielen wirst du auch einige
 wirklich kuriose Adventures und versteckte Schätze entdecken.</p>
-    <p xml:lang="el">Μαζί με καινοτόμους για την εποχή τους τίτλους, όπως ήταν οι σειρές Monkey 
-Island, Broken Sword, Myst, Blade Runner και αμέτρητα άλλα παιχνίδια, θα 
-βρείτε και μερικούς σχετικά άγνωστους τίτλους περιπέτειας και πραγματικά 
+    <p xml:lang="el">Μαζί με καινοτόμους για την εποχή τους τίτλους, όπως ήταν οι σειρές Monkey
+Island, Broken Sword, Myst, Blade Runner και αμέτρητα άλλα παιχνίδια, θα
+βρείτε και μερικούς σχετικά άγνωστους τίτλους περιπέτειας και πραγματικά
 κρυμμένα διαμαντάκια για να εξερευνήσετε.</p>
-    <p xml:lang="es">Podrás jugar a títulos tan innovadores como las sagas de Monkey Island, 
-Broken Sword, Myst, Blade Runner como aventuras menos conocidas y otras 
+    <p xml:lang="es">Podrás jugar a títulos tan innovadores como las sagas de Monkey Island,
+Broken Sword, Myst, Blade Runner como aventuras menos conocidas y otras
 joyas ocultas.</p>
-    <p xml:lang="fi">Uraauurtaneiden Monkey Island-, Broken Sword-, Myst-, Blade Runner- ja 
-lukuisten muiden pelien ohelta löydät myös vähemmän tunnettuja helmiä 
+    <p xml:lang="fi">Uraauurtaneiden Monkey Island-, Broken Sword-, Myst-, Blade Runner- ja
+lukuisten muiden pelien ohelta löydät myös vähemmän tunnettuja helmiä
 tutkittavaksesi.</p>
-    <p xml:lang="fr">À côté de titres révolutionnaires comme la série Monkey Island, Broken Sword 
-(Les Chevaliers de Baphomet) , Myst, Blade Runner et d'innombrables autres 
-jeux, vous trouverez des aventures vraiment obscures et des pépites vraiment 
+    <p xml:lang="fr">À côté de titres révolutionnaires comme la série Monkey Island, Broken Sword
+(Les Chevaliers de Baphomet) , Myst, Blade Runner et d'innombrables autres
+jeux, vous trouverez des aventures vraiment obscures et des pépites vraiment
 bien cachées à explorer.</p>
-    <p xml:lang="he">לצד כותרים פורצי דרך כמו סדרת אי הקופים, חרב שבורה, Myst, בלייד ראנר 
-ואינספור משחקים נוספים תוכלו למצוא גם הרפתקאות עמומות ופנינות נסתרות של ממש 
+    <p xml:lang="he">לצד כותרים פורצי דרך כמו סדרת אי הקופים, חרב שבורה, Myst, בלייד ראנר
+ואינספור משחקים נוספים תוכלו למצוא גם הרפתקאות עמומות ופנינות נסתרות של ממש
 שמחכות שתגלו אותן.</p>
-    <p xml:lang="hu">Az olyan úttörő címek mellett, mint a Monkey Island sorozat, a Broken Sword, 
-a Myst, a Blade Runner és számtalan más játék, valóban homályos kalandokat 
+    <p xml:lang="hu">Az olyan úttörő címek mellett, mint a Monkey Island sorozat, a Broken Sword,
+a Myst, a Blade Runner és számtalan más játék, valóban homályos kalandokat
 és valóban rejtett drágaköveket találhat.</p>
-    <p xml:lang="it">Pietre miliari come la saga di Monkey Island, Broken Sword, Myst, Blade 
-Runner e innumerevoli altri titoli tutti da scoprire. Potrai trovare 
-avventure sconosciute ai più ma anche dei gioiellini ingiustamente 
+    <p xml:lang="it">Pietre miliari come la saga di Monkey Island, Broken Sword, Myst, Blade
+Runner e innumerevoli altri titoli tutti da scoprire. Potrai trovare
+avventure sconosciute ai più ma anche dei gioiellini ingiustamente
 dimenticati.</p>
     <p xml:lang="ja">モンキーアイランドシリーズ、ブロークンソード、ミスト、ブレードランナー、その
 他の無数のゲームなどの画期的なタイトルの横に、いくつかの本当にあいまいな冒険
@@ -258,25 +258,25 @@ dimenticati.</p>
     <p xml:lang="ko">Monkey Island 시리즈, Broken Sword, Myst, Blade Runner와 같이 획기적인 타이틀
 을 비롯해, 잘 알려지지 않은 어드벤처 게임과 진정한 숨겨진 보석을 찾아볼 수 있
 습니다.</p>
-    <p xml:lang="nb">Sammen med banebrytende titler som Monkey Island-serien, Broken Sword, Myst, 
-Blade Runner og utallige andre spill finner du også enkelte kuriositeter og 
+    <p xml:lang="nb">Sammen med banebrytende titler som Monkey Island-serien, Broken Sword, Myst,
+Blade Runner og utallige andre spill finner du også enkelte kuriositeter og
 skjulte skatter det kan være verdt å gi et forsøk.</p>
-    <p xml:lang="nl">Naast spraakmakende titels zoals de Monkey Island series, Broken Sword, 
-Myst, Blade Runner en talloze andere spellen zal je enkele vage adventures 
+    <p xml:lang="nl">Naast spraakmakende titels zoals de Monkey Island series, Broken Sword,
+Myst, Blade Runner en talloze andere spellen zal je enkele vage adventures
 vinden en echte verborgen pareltjes ontdekken.</p>
-    <p xml:lang="pl">Poza przełomowymi tytułami, takimi jak seria Monkey Island, Broken Sword, 
-Myst, Blade Runner i wieloma innymi, znajdziesz tu również wiele mało 
+    <p xml:lang="pl">Poza przełomowymi tytułami, takimi jak seria Monkey Island, Broken Sword,
+Myst, Blade Runner i wieloma innymi, znajdziesz tu również wiele mało
 znanych przygód i naprawdę mało znanych perełek.</p>
-    <p xml:lang="pt">Ao lado de títulos inovadores como a série Monkey Island, Broken Sword, 
-Myst, Blade Runner e inúmeros outros jogos, você encontrará algumas 
+    <p xml:lang="pt-BR">Ao lado de títulos inovadores como a série Monkey Island, Broken Sword,
+Myst, Blade Runner e inúmeros outros jogos, você encontrará algumas
 aventuras realmente obscuras e verdadeiras joias raras para explorar.</p>
-    <p xml:lang="ru">Наряду с новаторскими играми, такими как серия Monkey Island, Broken Sword, 
-Myst, Blade Runner и бесчисленное множество других игр, вы найдете 
-действительно малоизвестные приключения и действительно скрытые сокровища 
+    <p xml:lang="ru">Наряду с новаторскими играми, такими как серия Monkey Island, Broken Sword,
+Myst, Blade Runner и бесчисленное множество других игр, вы найдете
+действительно малоизвестные приключения и действительно скрытые сокровища
 для исследования.</p>
-    <p xml:lang="uk">Окрім новаторських ігор, як-от серії Monkey Island, Broken Sword, Myst, 
-Blade Runner та незліченної кількості інших, ви знайдете декілька справді 
-маловідомих пригодницьких ігор та справді прихованих дорогоцінних каменів, 
+    <p xml:lang="uk">Окрім новаторських ігор, як-от серії Monkey Island, Broken Sword, Myst,
+Blade Runner та незліченної кількості інших, ви знайдете декілька справді
+маловідомих пригодницьких ігор та справді прихованих дорогоцінних каменів,
 які слід дослідити.</p>
   </description>
   <screenshots>


Commit: 287b228af095360356ac68cb09fa5832fddfbbb4
    https://github.com/scummvm/scummvm/commit/287b228af095360356ac68cb09fa5832fddfbbb4
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
POSIX: Add AppImage support

And add a target to generate the image

Changed paths:
    backends/platform/sdl/posix/posix.cpp
    ports.mk


diff --git a/backends/platform/sdl/posix/posix.cpp b/backends/platform/sdl/posix/posix.cpp
index 522e0714190..b5fe6ad237d 100644
--- a/backends/platform/sdl/posix/posix.cpp
+++ b/backends/platform/sdl/posix/posix.cpp
@@ -289,14 +289,21 @@ Common::String OSystem_POSIX::getScreenshotsPath() {
 
 void OSystem_POSIX::addSysArchivesToSearchSet(Common::SearchSet &s, int priority) {
 #ifdef DATA_PATH
-	const char *snap = getenv("SNAP");
-	if (snap) {
-		Common::String dataPath = Common::String(snap) + DATA_PATH;
+	const char *path = nullptr;
+	if (!path) {
+		path = getenv("SNAP");
+	}
+	if (!path) {
+		path = getenv("APPDIR");
+	}
+	if (path) {
+		Common::Path dataPath(path);
+		dataPath.joinInPlace(DATA_PATH);
 		Common::FSNode dataNode(dataPath);
 		if (dataNode.exists() && dataNode.isDirectory()) {
 			// This is the same priority which is used for the data path (below),
 			// but we insert this one first, so it will be searched first.
-			s.add(dataPath, new Common::FSDirectory(dataNode, 4), priority);
+			s.add(dataNode.getPath(), new Common::FSDirectory(dataNode, 4), priority);
 		}
 	}
 #endif
diff --git a/ports.mk b/ports.mk
index 14727ecb880..fc3cca0f536 100644
--- a/ports.mk
+++ b/ports.mk
@@ -597,6 +597,17 @@ publish-appcast:
 	cp dists/macosx/scummvm_appcast.xml ../scummvm-web/public_html/appcasts/macosx/release.xml
 
 
+APPDIR = AppDir
+
+# AppImage tool doesn't check for metainfo.xml, only appdata.xml
+appimage:
+	@if [ -z "${LINUXDEPLOY}" ]; then echo "LINUXDEPLOY variable must be set to the path of linuxdeploy binary" >&2; exit 1; fi
+	@if [ "$(prefix)" != '/usr' ]; then echo "Please re-run configure with --prefix=/usr" >&2; exit 1; fi
+	rm -rf "$(APPDIR)"
+	$(MAKE) install DESTDIR="$(APPDIR)"
+	ln -s org.scummvm.scummvm.metainfo.xml "$(APPDIR)/$(datarootdir)/metainfo/org.scummvm.scummvm.appdata.xml"
+	VERSION="$(VERSION)$(VER_REV)" "${LINUXDEPLOY}" --appdir="$(APPDIR)" -o appimage
+
 #
 # Special target to generate project files for various IDEs
 # Mainly Win32-specific
@@ -624,11 +635,10 @@ endif
 	@echo Now run
 	@echo -e "\tgit commit -m 'DISTS: Generated Code::Blocks and MSVC project files'"
 
-
 release-checks:
 	devtools/release-checks.sh
 
 # Mark special targets as phony
 .PHONY: install-data install install-strip uninstall dist-generic
 .PHONY: bundle-pack bundle iphonebundle ios7bundle tvosbundle iphone osxsnap publish-appcast
-.PHONY: ideprojects release-checks
+.PHONY: appimage ideprojects release-checks


Commit: 4955800221a8f4717046971af54718145b36537b
    https://github.com/scummvm/scummvm/commit/4955800221a8f4717046971af54718145b36537b
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
DISTS: Move icon file to match metainfo id

This follows new conventions

Changed paths:
    dists/org.scummvm.scummvm.desktop
    dists/redhat/scummvm.spec
    dists/redhat/scummvm.spec.in
    ports.mk


diff --git a/dists/org.scummvm.scummvm.desktop b/dists/org.scummvm.scummvm.desktop
index b35b36ef943..39bc6a4b1db 100644
--- a/dists/org.scummvm.scummvm.desktop
+++ b/dists/org.scummvm.scummvm.desktop
@@ -8,7 +8,7 @@ Comment[de]=Interpreter für zahlreiche Abenteuerspiele und RPGs
 Comment[es]=Intérprete para varias aventuras gráficas
 Comment[ca]=Intèrpret per diverses aventures gràfiques
 Exec=scummvm
-Icon=scummvm
+Icon=org.scummvm.scummvm
 Terminal=false
 Type=Application
 Categories=Game;AdventureGame;
diff --git a/dists/redhat/scummvm.spec b/dists/redhat/scummvm.spec
index bcfda9f3713..db974cfeef9 100644
--- a/dists/redhat/scummvm.spec
+++ b/dists/redhat/scummvm.spec
@@ -63,7 +63,7 @@ make %{_smp_mflags}
 
 %install
 make DESTDIR=%{buildroot} install
-install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
+install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/org.scummvm.scummvm.png
 desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/org.scummvm.scummvm.desktop
 
 %clean
@@ -89,9 +89,9 @@ fi
 %doc AUTHORS README.md NEWS.md COPYING LICENSES/COPYING.BSD LICENSES/COPYING.LGPL LICENSES/COPYING.FREEFONT LICENSES/COPYING.OFL LICENSES/COPYING.ISC LICENSES/COPYING.LUA LICENSES/COPYING.MIT LICENSES/COPYING.MKV LICENSES/COPYING.TINYGL LICENSES/COPYING.GLAD COPYRIGHT
 %attr(0755,root,root)%{_bindir}/scummvm
 %{_datadir}/applications/*
-%{_datadir}/pixmaps/scummvm.xpm
-%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
-%{_datadir}/icons/hicolor/scalable/apps/scummvm.svg
+%{_datadir}/pixmaps/org.scummvm.scummvm.xpm
+%{_datadir}/icons/hicolor/48x48/apps/org.scummvm.scummvm.png
+%{_datadir}/icons/hicolor/scalable/apps/org.scummvm.scummvm.svg
 %{_datadir}/metainfo/org.scummvm.scummvm.metainfo.xml
 %{_datadir}/scummvm/*
 %{_mandir}/man6/scummvm.6*
diff --git a/dists/redhat/scummvm.spec.in b/dists/redhat/scummvm.spec.in
index ba3e6af9d04..9cf421f4271 100644
--- a/dists/redhat/scummvm.spec.in
+++ b/dists/redhat/scummvm.spec.in
@@ -63,7 +63,7 @@ make %{_smp_mflags}
 
 %install
 make DESTDIR=%{buildroot} install
-install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
+install -m644 -D dists/redhat/scummvm48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/org.scummvm.scummvm.png
 desktop-file-install --vendor scummvm --dir=%{buildroot}/%{_datadir}/applications dists/org.scummvm.scummvm.desktop
 
 %clean
@@ -89,9 +89,9 @@ fi
 %doc AUTHORS README.md NEWS.md COPYING LICENSES/COPYING.BSD LICENSES/COPYING.LGPL LICENSES/COPYING.FREEFONT LICENSES/COPYING.OFL LICENSES/COPYING.ISC LICENSES/COPYING.LUA LICENSES/COPYING.MIT LICENSES/COPYING.MKV LICENSES/COPYING.TINYGL LICENSES/COPYING.GLAD COPYRIGHT
 %attr(0755,root,root)%{_bindir}/scummvm
 %{_datadir}/applications/*
-%{_datadir}/pixmaps/scummvm.xpm
-%{_datadir}/icons/hicolor/48x48/apps/scummvm.png
-%{_datadir}/icons/hicolor/scalable/apps/scummvm.svg
+%{_datadir}/pixmaps/org.scummvm.scummvm.xpm
+%{_datadir}/icons/hicolor/48x48/apps/org.scummvm.scummvm.png
+%{_datadir}/icons/hicolor/scalable/apps/org.scummvm.scummvm.svg
 %{_datadir}/metainfo/org.scummvm.scummvm.metainfo.xml
 %{_datadir}/scummvm/*
 %{_mandir}/man6/scummvm.6*
diff --git a/ports.mk b/ports.mk
index fc3cca0f536..b1e28e2fb46 100644
--- a/ports.mk
+++ b/ports.mk
@@ -9,9 +9,9 @@ install-data:
 	$(INSTALL) -d "$(DESTDIR)$(mandir)/man6/"
 	$(INSTALL) -c -m 644 "$(srcdir)/dists/scummvm.6" "$(DESTDIR)$(mandir)/man6/scummvm.6"
 	$(INSTALL) -d "$(DESTDIR)$(datarootdir)/pixmaps/"
-	$(INSTALL) -c -m 644 "$(srcdir)/icons/scummvm.xpm" "$(DESTDIR)$(datarootdir)/pixmaps/scummvm.xpm"
+	$(INSTALL) -c -m 644 "$(srcdir)/icons/scummvm.xpm" "$(DESTDIR)$(datarootdir)/pixmaps/org.scummvm.scummvm.xpm"
 	$(INSTALL) -d "$(DESTDIR)$(datarootdir)/icons/hicolor/scalable/apps/"
-	$(INSTALL) -c -m 644 "$(srcdir)/icons/scummvm.svg" "$(DESTDIR)$(datarootdir)/icons/hicolor/scalable/apps/scummvm.svg"
+	$(INSTALL) -c -m 644 "$(srcdir)/icons/scummvm.svg" "$(DESTDIR)$(datarootdir)/icons/hicolor/scalable/apps/org.scummvm.scummvm.svg"
 	$(INSTALL) -d "$(DESTDIR)$(docdir)"
 	$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) "$(DESTDIR)$(docdir)"
 	$(INSTALL) -d "$(DESTDIR)$(datadir)"


Commit: c3578ca22d21a83be1f333e08d43248c577f267c
    https://github.com/scummvm/scummvm/commit/c3578ca22d21a83be1f333e08d43248c577f267c
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2023-06-01T20:39:17+02:00

Commit Message:
DISTS: Add support for go-appimage

This allows us to build fully static AppImage
This needs appimagetool-780 or later

Changed paths:
    ports.mk


diff --git a/ports.mk b/ports.mk
index b1e28e2fb46..d9486112ccc 100644
--- a/ports.mk
+++ b/ports.mk
@@ -601,12 +601,18 @@ APPDIR = AppDir
 
 # AppImage tool doesn't check for metainfo.xml, only appdata.xml
 appimage:
-	@if [ -z "${LINUXDEPLOY}" ]; then echo "LINUXDEPLOY variable must be set to the path of linuxdeploy binary" >&2; exit 1; fi
+	@if [ -z "${LINUXDEPLOY}" -a -z "${APPIMAGETOOL}" ]; then echo "LINUXDEPLOY or APPIMAGETOOL variables must be set to the path of linuxdeploy or go-appimage binaries" >&2; exit 1; fi
 	@if [ "$(prefix)" != '/usr' ]; then echo "Please re-run configure with --prefix=/usr" >&2; exit 1; fi
 	rm -rf "$(APPDIR)"
 	$(MAKE) install DESTDIR="$(APPDIR)"
 	ln -s org.scummvm.scummvm.metainfo.xml "$(APPDIR)/$(datarootdir)/metainfo/org.scummvm.scummvm.appdata.xml"
-	VERSION="$(VERSION)$(VER_REV)" "${LINUXDEPLOY}" --appdir="$(APPDIR)" -o appimage
+	if [ -n "${APPIMAGETOOL}" ]; then \
+		"${APPIMAGETOOL}" -s deploy "$(APPDIR)/$(datarootdir)/applications/org.scummvm.scummvm.desktop" && \
+		LD_LIBRARY_PATH='' find AppDir -type f -exec ldd {} 2>&1 \; | grep '=>' | ( ! grep -v AppDir ) && \
+		VERSION="$(VERSION)$(VER_REV)" "${APPIMAGETOOL}" "$(APPDIR)" ; \
+	else \
+		VERSION="$(VERSION)$(VER_REV)" "${LINUXDEPLOY}" --appdir="$(APPDIR)" -o appimage ; \
+	fi
 
 #
 # Special target to generate project files for various IDEs




More information about the Scummvm-git-logs mailing list