diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index ab1f0e9..800629a 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -51,7 +51,7 @@ jobs:
- name: Create PortMaster.zip
id: create-zip
run: |
- ./do_release.sh ${{steps.version.outputs.version}}
+ ./do_release.sh release
- name: Create md5 hashes
id: md5
diff --git a/.gitignore b/.gitignore
index 0b54e1b..1c57a23 100644
--- a/.gitignore
+++ b/.gitignore
@@ -179,3 +179,9 @@ harbourmaster.txt
PortMaster.zip
pylibs.zip
version
+
+# PortMaster Installer scripts.
+makeself*/
+makeself-*.run
+runtimes.zip
+Install*PortMaster.sh
diff --git a/PortMaster/pugwash b/PortMaster/pugwash
index 7e401bc..807506c 100755
--- a/PortMaster/pugwash
+++ b/PortMaster/pugwash
@@ -1,7 +1,7 @@
#!/usr/bin/env python3
## -- BEGIN PORTMASTER INFO --
-PORTMASTER_VERSION = '8.4.14'
+PORTMASTER_VERSION = '8.4.15'
PORTMASTER_RELEASE_CHANNEL = 'beta'
## -- END PORTMASTER INFO --
@@ -27,6 +27,7 @@ import re
import shutil
import sys
import textwrap
+import time
import zipfile
from pathlib import Path
@@ -223,10 +224,10 @@ gettext.textdomain('messages')
## Code starts here.
__IP_ADDRESS=None
-def get_ip_address():
+def get_ip_address(force_update=False):
global __IP_ADDRESS
- if __IP_ADDRESS is not None:
+ if not force_update and __IP_ADDRESS is not None:
return __IP_ADDRESS
import socket
@@ -239,7 +240,7 @@ def get_ip_address():
__IP_ADDRESS = s.getsockname()[0]
except Exception:
- __IP_ADDRESS = _("Unknown IP")
+ __IP_ADDRESS = None
finally:
s.close()
@@ -522,7 +523,7 @@ class PortMasterGUI(pySDL2gui.GUI, harbourmaster.Callback):
# 'rg503'
# 'rg351v'
# 'rg353v'
- 'rgb30'
+ # 'rgb30'
# 'ogs'
# 'ogu'
# 'x55'
@@ -614,7 +615,7 @@ class PortMasterGUI(pySDL2gui.GUI, harbourmaster.Callback):
self.set_data('system.cfw_name', device_info['name'])
self.set_data('system.cfw_version', device_info['version'])
self.set_data('system.device_name', device_info['device'])
- self.set_data('system.ip_address', get_ip_address())
+ self.set_data('system.ip_address', get_ip_address() or _("Unknown IP"))
self.set_data('system.progress_text', "")
self.set_data('system.progress_amount', "")
self.set_data('system.progress_perc_5', "0")
@@ -1704,6 +1705,11 @@ def main(argv):
global LOG_FILE_HANDLE
global LOG_FILE
+ if not get_ip_address():
+ print(_("No network connection available."))
+ time.sleep(5)
+ return 255
+
with make_temp_directory() as temp_dir:
argv = argv[:]
diff --git a/PortMaster/pylibs/harbourmaster/harbour.py b/PortMaster/pylibs/harbourmaster/harbour.py
index 2fb1d78..3e5bcdc 100644
--- a/PortMaster/pylibs/harbourmaster/harbour.py
+++ b/PortMaster/pylibs/harbourmaster/harbour.py
@@ -478,6 +478,8 @@ def load_ports(self):
'portmaster.sh',
'thememaster',
'thememaster.sh',
+ 'install portmaster.sh',
+ 'install full portmaster.sh',
'videos',
):
continue
diff --git a/PortMaster/pylibs/harbourmaster/util.py b/PortMaster/pylibs/harbourmaster/util.py
index 70ddcd4..19f3df4 100644
--- a/PortMaster/pylibs/harbourmaster/util.py
+++ b/PortMaster/pylibs/harbourmaster/util.py
@@ -51,7 +51,7 @@ def json_safe_load(*args):
def fetch(url):
- r = requests.get(url)
+ r = requests.get(url, timeout=10)
if r.status_code != 200:
logger.error(f"Failed to download {url!r}: {r.status_code}")
return None
@@ -173,19 +173,29 @@ def load_pm_signature(file_name):
if not file_name.is_file():
return None
- if file_name.suffix.casefold() not in ('.sh', ):
+ if file_name.suffix.lower() not in ('.sh', ):
return None
- for line in file_name.read_text().split('\n'):
- if not line.strip().startswith('#'):
- continue
+ try:
+ for line in file_name.read_text().split('\n'):
+ if not line.strip().startswith('#'):
+ continue
+
+ if 'PORTMASTER:' not in line:
+ continue
+
+ return [
+ item.strip()
+ for item in line.split(':', 1)[1].strip().split(',', 1)]
- if 'PORTMASTER:' not in line:
- continue
+ except UnicodeDecodeError as err:
+ logger.error(f"Error loading {file_name}: {err}")
+ return None
- return [
- item.strip()
- for item in line.split(':', 1)[1].strip().split(',', 1)]
+ except Exception as err:
+ # Bad but we will live.
+ logger.error(f"Error loading {file_name}: {err}")
+ return None
return None
@@ -201,7 +211,7 @@ def add_pm_signature(file_name, info):
if not file_name.is_file():
return
- if file_name.suffix.casefold() not in ('.sh', ):
+ if file_name.suffix.lower() not in ('.sh', ):
return
# See if it has some info already.
@@ -292,53 +302,65 @@ def download(file_name, file_url, md5_source=None, md5_result=None, callback=Non
if md5_result is None:
md5_result = [None]
- r = requests.get(file_url, stream=True)
+ try:
+ r = requests.get(file_url, stream=True, timeout=(10, 5))
- if r.status_code != 200:
- if callback is not None:
- callback.message_box(_("Unable to download file. [{status_code}]").format(status_code=r.status_code))
+ if r.status_code != 200:
+ if callback is not None:
+ callback.message_box(_("Unable to download file. [{status_code}]").format(status_code=r.status_code))
- logger.error(f"Unable to download file: {file_url!r} [{r.status_code}]")
- return None
+ logger.error(f"Unable to download file: {file_url!r} [{r.status_code}]")
+ return None
- total_length = r.headers.get('content-length')
- if total_length is None:
- total_length = None
- total_length_mb = "???? MB"
- else:
- total_length = int(total_length)
- total_length_mb = nice_size(total_length)
+ total_length = r.headers.get('content-length')
+ if total_length is None:
+ total_length = None
+ total_length_mb = "???? MB"
+ else:
+ total_length = int(total_length)
+ total_length_mb = nice_size(total_length)
- md5 = hashlib.md5()
+ md5 = hashlib.md5()
- if callback is not None:
- callback.message(_("Downloading {file_url} - ({total_length_mb})").format(file_url=file_url, total_length_mb=total_length_mb))
- else:
- cprint(f"Downloading {file_url!r} - {total_length_mb}")
+ if callback is not None:
+ callback.message(_("Downloading {file_url} - ({total_length_mb})").format(file_url=file_url, total_length_mb=total_length_mb))
+ else:
+ cprint(f"Downloading {file_url!r} - {total_length_mb}")
+
+ length = 0
+ with file_name.open('wb') as fh:
+ for data in r.iter_content(chunk_size=104096, decode_unicode=False):
+ md5.update(data)
+ fh.write(data)
+ length += len(data)
+
+ if callback is not None:
+ callback.progress(_("Downloading file."), length, total_length, 'data')
+ else:
+ if total_length is None:
+ sys.stdout.write(f"\r[{'?' * 40}] - {nice_size(length)} / {total_length_mb} ")
+ else:
+ amount = int(length / total_length * 40)
+ sys.stdout.write(f"\r[{'|' * amount}{' ' * (40 - amount)}] - {nice_size(length)} / {total_length_mb} ")
+
+ sys.stdout.flush()
- length = 0
- with file_name.open('wb') as fh:
- for data in r.iter_content(chunk_size=104096, decode_unicode=False):
- md5.update(data)
- fh.write(data)
- length += len(data)
+ if callback is None:
+ cprint("\n")
if callback is not None:
callback.progress(_("Downloading file."), length, total_length, 'data')
- else:
- if total_length is None:
- sys.stdout.write(f"\r[{'?' * 40}] - {nice_size(length)} / {total_length_mb} ")
- else:
- amount = int(length / total_length * 40)
- sys.stdout.write(f"\r[{'|' * amount}{' ' * (40 - amount)}] - {nice_size(length)} / {total_length_mb} ")
- sys.stdout.flush()
+ except requests.RequestException as err:
+ if file_name.is_file():
+ file_name.unlink()
- if callback is None:
- cprint("\n")
+ logger.error(f"Requests error: {err}")
if callback is not None:
- callback.progress(_("Downloading file."), length, total_length, 'data')
+ callback.message_box(_("Download failed: {err}").format(err=str(err)))
+
+ return None
md5_file = md5.hexdigest()
if md5_source is not None:
diff --git a/PortMaster/pylibs/locales/de_DE/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/de_DE/LC_MESSAGES/messages.po
index 0090ed8..a73099d 100644
--- a/PortMaster/pylibs/locales/de_DE/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/de_DE/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-21 10:37\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -17,144 +17,144 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Deutsch"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr "Dänisch"
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Englisch"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Spanisch"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr "Finnisch"
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Französisch"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Italienisch"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr "Japanisch"
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr "Niederländisch"
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polnisch"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr "Portugiesisch (Portugal)"
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr "Portugiesisch (Brasilien)"
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr "Chinesisch (vereinfacht)"
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "Unbekannte IP"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "N/V"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** KEIN PORT **"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Ready to Run"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "Benötigt Dateien"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Installiert"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "Fehlt"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Update verfügbar"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "Nicht installiert"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "Okay"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Abbrechen"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Installation von {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Deinstallation von {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Aktualisieren aller Port-Quellen:"
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
msgstr "Prüfe {runtime_name}"
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr "Es wird von {old_release_channel} zur {new_release_channel} Version gewechselt.\n\n"
"Soll das Upgrade durchgeführt werden?"
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr "Es gibt eine neue Version von PortMaster ({portmaster_version})\n\n"
"Soll das Upgrade durchgeführt werden?"
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
@@ -164,169 +164,169 @@ msgstr ""
msgid "Loading..."
msgstr "Lädt..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Lade Informationen."
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Lade neuste Informationen"
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Lade neuste Porters"
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Lade Quellen"
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Lade Ports."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Installiere Theme {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Wird installiert"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Theme {download_name!r} erfolgreich installiert."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Installiere {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Port {download_name!r} erfolgreich installiert."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Installation fehlgeschlagen, entferne Dateien..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "Port {download_name} Installation fehlgeschlagen."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "Port {download_name!r} und {runtime_name!r} erfolgreich installiert."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "Port {download_name!r} wurde erfolgreich installiert, Installation von {runtime_name!r} ist fehlgeschlagen\n"
"Installiere den Port erneut um es nochmal zu versuchen oder besuche das Wiki für Hilfe."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "Port {runtime} enthält eine fehlerhafte Runtime, möglicherweise funktioniert das Spiel nicht korrekt."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
msgstr "Überprüft"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
msgstr "Nicht verifiziert"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
msgstr "Fehlerhaft"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "Runtimes lassen sich nicht im Offline Modus herunterladen."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
msgstr "Überprüfe Runtime {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
msgstr "Überprüfe"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
msgstr "Aktualisiere {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
msgstr "Laufzeit- {runtime} ist defekt, Installiere neu."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Lade runtime {runtime} herunter"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "Runtime konnte nicht runtergeladen werden, öglicherweise funktioniert das Spiel nicht korrekt."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "Erfolgreich {runtime} heruntergeladen"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "Es konnte kein Download für {runtime} gefunden werden."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "Ports lassen sich nicht im Offline Modus herunterladen."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "Es konnte keine Quelle für {port_name} gefunden werden."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Unbekannter Port {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Entferne {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "Erfolgreich {port_name} deinstalliert"
diff --git a/PortMaster/pylibs/locales/es_ES/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/es_ES/LC_MESSAGES/messages.po
index 84394c5..8fb4e7d 100644
--- a/PortMaster/pylibs/locales/es_ES/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/es_ES/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-21 10:37\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -17,142 +17,142 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Alemán"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr ""
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Inglés"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Español"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr ""
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Francés"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Italiano"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr ""
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr ""
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polaco"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr ""
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr ""
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr ""
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "IP Desconocida"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "N/D"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** SIN PORT**"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Listo para Funcionar"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "Requiere Archivos"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Instalado"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "No Disponible"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Actualización Disponible"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "No Instalado"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "Aceptar"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Cancelar"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Instalando {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Desinstalando {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Actualizando todas las fuentes de ports:"
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
msgstr ""
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr ""
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr ""
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
@@ -162,169 +162,169 @@ msgstr ""
msgid "Loading..."
msgstr "Cargando..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Cargando información."
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Obteniendo información más reciente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Obteniendo los últimos porters."
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Cargando Fuentes."
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Cargando Ports."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Instalando Tema {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Instalando"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Tema {download_name!r} instalado correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Instalando {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Tema {download_name!r} instalado correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Instalación fallida, eliminando archivos..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "La instalación del Port {download_name} ha fallado."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "Port {download_name!r} y {runtime_name!r} instalados correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "¡¡Port {download_name!r} instalado correctamente, pero la instalación de {runtime_name!r} ha fallado!!\n\n"
"Reintenta la instalación o revisa la wiki para obtener ayuda."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "El Port {runtime} contiene un tiempo de ejecución defectuoso, el juego puede no ejecutarse correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "No se puede descargar un tiempo de ejecución en modo sin conexión."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Descargando tiempo de ejecución {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "No se puede descargar {runtime}, es posible que el juego no funcione correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "{runtime} Descargado correctamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "No se ha podido encontrar una descarga para {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "No se puede descargar un Port en modo sin conexión."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "No se ha podido encontrar una fuente para {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Port desconocido {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Eliminando {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "{port_name} Desinstalado correctamente"
diff --git a/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/messages.po
index 6f6d7da..6c924ef 100644
--- a/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-21 10:37\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -17,144 +17,144 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Allemand"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr "Danois"
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Anglais"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Espagnol"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr "Finnois"
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Français"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Italien"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr "Japonais"
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr "Néerlandais"
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polonais"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr "Portugais (Portugal)"
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr "Portugais (Brésil)"
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr "Chinois simplifié"
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "IP Inconnu"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "N/A"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** AUCUN RÉSULTAT **"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Prêt à Exécuter"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "Fichiers Requis"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Installé"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "Manquant"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Nouvelle mise à jour disponible"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "Non installé"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "D'accord"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Annuler"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Installation de {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Désinstallation de {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Mise à jour de toutes les sources de ports :"
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
msgstr "Vérification de {runtime_name}"
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr "Vous passez de l' {old_release_channel} à la version {new_release_channel} .\n\n"
"Voulez-vous mettre à jour ?"
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr "Il y a une nouvelle version de PortMaster ({portmaster_version})\n\n"
"Voulez-vous mettre à jour ?"
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
@@ -164,169 +164,169 @@ msgstr ""
msgid "Loading..."
msgstr "Chargement..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Chargement des informations."
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Récupération des dernières informations."
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Récupération des derniers porteurs."
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Chargement des sources."
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Chargement des Ports."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Installation du thème {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Installation en cours"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Le thème {download_name!r} a été installé avec succès."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Installation de {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Le thème {download_name!r} a été installé avec succès."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Échec de l'installation, suppression des fichiers en cours..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "Échec de l'installation du port {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "Port {download_name!r} et {runtime_name!r} installé avec succès."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "Le port {download_name!r} a été installé avec succès, mais {runtime_name!r} n'a pas pu être installé!!\n\n"
"Réinstaller pour essayer à nouveau, ou consulter le wiki pour obtenir de l'aide."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "Le port {runtime} contient une runtime corrompue, le jeu pourrait ne pas s'exécuter correctement."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
msgstr "Vérifié"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
msgstr "Non vérifié"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
msgstr "Cassé"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "Impossible de télécharger une runtime en mode hors ligne."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
msgstr "Vérification du runtime {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
msgstr "Vérification"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
msgstr ""
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
msgstr "Mise à jour {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
msgstr "L'exécution {runtime} est cassée, réinstallation."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Téléchargement de la runtime {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "Impossible de télécharger {runtime}, le jeu pourrait ne pas s'exécuter correctement."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "Téléchargement de {runtime} réussi."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "Impossible de trouver un téléchargement pour {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "Impossible de télécharger un port en mode hors ligne."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "Impossible de trouver une source pour {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Port inconnu {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Suppression de {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "{port_name} désinstallé avec succès."
@@ -429,7 +429,7 @@ msgstr "Impossible de valider le téléchargement."
#: PortMaster/pylibs/pugscene.py:327
msgid "Main Menu"
-msgstr ""
+msgstr "Menu principal"
#: PortMaster/pylibs/pugscene.py:335 PortMaster/pylibs/pugscene.py:1061
msgid "Featured Ports"
@@ -437,7 +437,7 @@ msgstr ""
#: PortMaster/pylibs/pugscene.py:336
msgid "Hand curated lists of ports"
-msgstr ""
+msgstr "Listes de ports sélectionnées à la main"
#: PortMaster/pylibs/pugscene.py:339
msgid "All Ports"
@@ -477,7 +477,7 @@ msgstr "Sortie"
#: PortMaster/pylibs/pugscene.py:358
msgid "Quit PortMaster"
-msgstr ""
+msgstr "Quitter PortMaster"
#: PortMaster/pylibs/pugscene.py:360 PortMaster/pylibs/pugscene.py:489
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
@@ -507,7 +507,7 @@ msgstr "Désactivé"
#: PortMaster/pylibs/pugscene.py:419
msgid "Options Menu"
-msgstr ""
+msgstr "Menu des options"
#: PortMaster/pylibs/pugscene.py:424
msgid "System"
@@ -519,7 +519,7 @@ msgstr "Mettre à Jour les Ports"
#: PortMaster/pylibs/pugscene.py:429
msgid "Update all ports and associated information"
-msgstr ""
+msgstr "Mettre à jour tous les ports et les informations associées"
#: PortMaster/pylibs/pugscene.py:432
msgid "Update PortMaster"
@@ -576,7 +576,7 @@ msgstr "Choisir la Langue"
#: PortMaster/pylibs/pugscene.py:462
msgid "Select the language PortMaster uses."
-msgstr ""
+msgstr "Sélectionnez la langue utilisée par PortMaster."
#: PortMaster/pylibs/pugscene.py:465 PortMaster/pylibs/pugscene.py:774
msgid "Select Theme"
@@ -584,7 +584,7 @@ msgstr "Sélectionner le Thème"
#: PortMaster/pylibs/pugscene.py:466
msgid "Select a theme for PortMaster."
-msgstr ""
+msgstr "Sélectionnez un thème pour PortMaster."
#: PortMaster/pylibs/pugscene.py:472
msgid "Select Color Scheme"
@@ -592,7 +592,7 @@ msgstr "Sélectionner le Schéma de Couleurs"
#: PortMaster/pylibs/pugscene.py:473
msgid "Select a colour scheme for PortMaster"
-msgstr ""
+msgstr "Sélectionnez un schéma de couleurs pour PortMaster"
#: PortMaster/pylibs/pugscene.py:476
msgid "Secret Options"
@@ -604,7 +604,7 @@ msgstr "Supprimer la configuration du PortMaster"
#: PortMaster/pylibs/pugscene.py:480 PortMaster/pylibs/pugscene.py:484
msgid "This can break stuff, don't touch unless you know what you are doing."
-msgstr ""
+msgstr "Cela peut casser des trucs, ne touchez pas à moins de savoir ce que vous faites."
#: PortMaster/pylibs/pugscene.py:483
msgid "Delete PortMaster Runtimes"
@@ -626,7 +626,7 @@ msgstr "Suppression des Runtimes :"
#: PortMaster/pylibs/pugscene.py:649
msgid "Download All"
-msgstr ""
+msgstr "Télécharger tout"
#: PortMaster/pylibs/pugscene.py:688
msgid "Used"
@@ -650,7 +650,7 @@ msgstr "Désinstaller"
#: PortMaster/pylibs/pugscene.py:720
msgid "Are you sure you want to download and verify all runtimes?"
-msgstr ""
+msgstr "Êtes-vous sûr de vouloir télécharger et vérifier tous les runtimes ?"
#: PortMaster/pylibs/pugscene.py:758
#, python-brace-format
@@ -680,7 +680,7 @@ msgstr "Voulez-vous changer de thème?\n\n"
#: PortMaster/pylibs/pugscene.py:871
msgid "Select Colour Scheme"
-msgstr ""
+msgstr "Sélectionner la palette de couleurs"
#: PortMaster/pylibs/pugscene.py:885
#, python-brace-format
@@ -695,7 +695,7 @@ msgstr "Voulez-vous changer le schéma de couleurs du thème?\n\n"
#: PortMaster/pylibs/pugscene.py:929
msgid "Language Select"
-msgstr ""
+msgstr "Sélection de la langue"
#: PortMaster/pylibs/pugscene.py:939
#, python-brace-format
@@ -747,7 +747,7 @@ msgstr "Afficher les Infos"
#: PortMaster/pylibs/pugscene.py:1264
msgid "Ports List"
-msgstr ""
+msgstr "Liste des Ports"
#: PortMaster/pylibs/pugscene.py:1278
msgid "Filters"
@@ -755,7 +755,7 @@ msgstr "Filtres"
#: PortMaster/pylibs/pugscene.py:1286
msgid "Port Info"
-msgstr ""
+msgstr "Infos Port"
#: PortMaster/pylibs/pugscene.py:1351
msgid "Filters Scene"
@@ -840,7 +840,7 @@ msgstr "Porteurs :"
#: PortMaster/pylibs/pugscene.py:1540
msgid "Messages"
-msgstr ""
+msgstr "Messages"
#: PortMaster/pylibs/pugscene.py:1575
msgid "Are you sure you want to cancel?"
diff --git a/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/themes.po b/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/themes.po
index 1ac54b8..58ed92c 100644
--- a/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/themes.po
+++ b/PortMaster/pylibs/locales/fr_FR/LC_MESSAGES/themes.po
@@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-09 16:35+0800\n"
-"PO-Revision-Date: 2023-09-24 06:26\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
diff --git a/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/messages.po
index ed04b0e..a4529e1 100644
--- a/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-22 09:27\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -17,144 +17,144 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Tedesco"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr "Danese"
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Inglese"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Spagnolo"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr "Finlandese"
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Francese"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Italiano"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr "Giapponese"
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr "Olandese"
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polacco"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr "Portoghese (Portogallo)"
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr "Portoghese (Brasile)"
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr "Cinese Semplificato"
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "IP Ignoto"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "N/A"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** Nessun Risultato **"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Ready to Run"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "File richiesti"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Installato"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "Mancante"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Aggiornamento Disponibile"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "Non Installato"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "Ok"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Annulla"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Installo {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Disinstallo {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Aggiorno le fonti..."
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
msgstr "Verifico {runtime_name}"
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr "Stai passando dalla versione {old_release_channel} alla {new_release_channel}.\n\n"
"Vuoi fare l'upgrade alla nuova versione?"
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr "C'è una nuova versione di PortMaster ({portmaster_version})\n\n"
"Vuoi fare l'upgrade?"
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
@@ -165,169 +165,169 @@ msgstr "Vuoi reinstallare PortMaster?\n\n"
msgid "Loading..."
msgstr "Caricamento..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Caricamento Informazioni"
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
msgstr "Recupero informazioni sugli ultimi ports Raccomandati dal Team."
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Cerco nuove informazioni"
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Cerco nuovi porters"
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Caricamento Fonti."
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Caricamento Ports."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Installo Tema {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Installo"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Tema {download_name!r} installato con successo."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Installo {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Port {download_name!r} installato con successo."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Installazione fallita, rimozione file in corso..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "{download_name} fallisce l'installazione."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "{download_name!r} e {runtime_name!r} sono stati installati con successo"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "{download_name!r} e {runtime_name!r} hanno fallito l'installazione!!\n\n"
"Riprova o controlla la wiki per ulteriori informazioni."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "Port {runtime} sembra avere una runtime corrota, il gioco potrebbe avere problemi"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
msgstr "Verificato"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
msgstr "Non verificato"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
msgstr "Corrotto"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "Impossibile scaricare la runtime in modalità offline"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
msgstr "Verifico runtime {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
msgstr "Verifica in corso"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
msgstr "{runtime} verificata con successo."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
msgstr "{runtime} Verificata."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
msgstr "Aggiornamento {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
msgstr "Runtime {runtime} è corrotta, reinstallazione."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Scarico {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "Impossibile scaricare la runtime {runtime}, il gioco potrebbe presentare dei problemi."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "Scaricato con successo {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "Impossibile trovare il download per {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "Impossibile scaricare un Port in modalità offline"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "Impossibile trovare una fonte per {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Port sconosciuto {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Rimuovo {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "{port_name} disinstallato con successo."
@@ -748,7 +748,7 @@ msgstr "Mostra info"
#: PortMaster/pylibs/pugscene.py:1264
msgid "Ports List"
-msgstr ""
+msgstr "Lista dei Ports"
#: PortMaster/pylibs/pugscene.py:1278
msgid "Filters"
@@ -756,7 +756,7 @@ msgstr "Filtri"
#: PortMaster/pylibs/pugscene.py:1286
msgid "Port Info"
-msgstr ""
+msgstr "Port Info"
#: PortMaster/pylibs/pugscene.py:1351
msgid "Filters Scene"
diff --git a/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/themes.po b/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/themes.po
index 31819df..c6c1182 100644
--- a/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/themes.po
+++ b/PortMaster/pylibs/locales/it_IT/LC_MESSAGES/themes.po
@@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-09 16:35+0800\n"
-"PO-Revision-Date: 2023-09-24 06:26\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -135,5 +135,10 @@ msgid "Name: {runtime_info.name}\n"
"Verified: {runtime_info.verified}\n"
"Download Size: {runtime_info.download_size}\n"
"Install Size: {runtime_info.disk_size}"
-msgstr ""
+msgstr "Nome: {runtime_info.name}\n"
+"Status: {runtime_info.status}\n"
+"Ports: {runtime_info.ports}\n"
+"Verificato: {runtime_info.verified}\n"
+"Dimensione Download: {runtime_info.download_size}\n"
+"Dimensione Installazione: {runtime_info.disk_size}"
diff --git a/PortMaster/pylibs/locales/pl_PL/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/pl_PL/LC_MESSAGES/messages.po
index cf9dffd..accd4ef 100644
--- a/PortMaster/pylibs/locales/pl_PL/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/pl_PL/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-24 07:29\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -17,144 +17,144 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Niemiecki"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr "Duński"
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Angielski"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Hiszpański"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr "Fiński"
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Francuski"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Włoski"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr "Japoński"
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr "Holenderski"
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polski"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr "Portugalski (Portugalia)"
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr "Portugalski (Brazylia)"
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr "Chiński Uproszczony"
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "Nieznany adres IP"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "Nie dostępne"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** BRAK PORTU **"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Gotowe do uruchomienia"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "Wymagane pliki"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Zainstalowane"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "Brakujące"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Dostępna aktualizacja"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "Nie zainstalowano"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "W porządku"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Anuluj"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Instalacja {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Odinstalowywanie {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Aktualizowanie wszystkich źródeł portów:"
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
msgstr "Sprawdzanie {runtime_name}"
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr "Przełączasz się z {old_release_channel} na wersję {new_release_channel}.\n\n"
"Czy chcesz zaktualizować?"
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr "Dostępna jest nowa wersja PortMaster ({portmaster_version})\n\n"
"Czy chcesz zaktualizować?"
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
@@ -165,169 +165,169 @@ msgstr "Czy chcesz ponownie zainstalować PortMaster?\n\n"
msgid "Loading..."
msgstr "Ładowanie..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Wczytywanie Informacji."
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
msgstr "Pobieranie najnowszych polecanych portów."
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Pobieranie najnowszych informacji."
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Pobieranie najnowszych portów."
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Ładowanie źródeł."
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Ładowanie portów."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Instalowanie motywu {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Instalowanie"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Motyw {download_name!r} zainstalowany pomyślnie."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Instalacja {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Port {download_name!r} zainstalowany pomyślnie."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Instalacja nie powiodła się, usuwanie plików..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "Port {download_name} nie został zainstalowany."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "Port {download_name!r} i {runtime_name!r} zainstalowany pomyślnie."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "Port {download_name!r} zainstalowany pomyślnie, ale {runtime_name!r} nie udało się zainstalować!\n\n"
"Zainstaluj ponownie, aby spróbować ponownie, lub sprawdź wiki po pomoc."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "Port {runtime} zawiera złe działanie, gra może nie działać prawidłowo."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
msgstr "Zweryfikowane"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
msgstr "Niezweryfikowane"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
msgstr "Uszkodzone"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "Nie można pobrać runtime w trybie offline."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
msgstr "Weryfikowanie czasu pracy {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
msgstr "Weryfikowanie"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
msgstr "Zweryfikowano {runtime} pomyślnie."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
msgstr "Zweryfikowano {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
msgstr "Aktualizowanie {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
msgstr "Runtime {runtime} jest uszkodzony, reinstalacja."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Pobieranie runtime {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "Nie można pobrać {runtime}, gra może nie działać poprawnie."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "Pomyślnie pobrano {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "Nie można znaleźć pobrania dla {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "Nie można pobrać portu w trybie offline."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "Nie można odnaleźć źródła dla {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Nieznany port {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Usuwanie {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "Pomyślnie pobrano {port_name}"
diff --git a/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/messages.po b/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/messages.po
index b8719ce..16c5814 100644
--- a/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/messages.po
+++ b/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/messages.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-09-21 18:36+0800\n"
-"PO-Revision-Date: 2023-09-21 10:37\n"
+"POT-Creation-Date: 2023-10-04 16:46+0800\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -17,316 +17,317 @@ msgstr ""
"X-Crowdin-File: messages.pot\n"
"X-Crowdin-File-ID: 1\n"
-#: PortMaster/pugwash:119
+#: PortMaster/pugwash:121
msgid "German"
msgstr "Alemão"
-#: PortMaster/pugwash:120
+#: PortMaster/pugwash:122
msgid "Danish"
msgstr "Dinamarquês"
-#: PortMaster/pugwash:121
+#: PortMaster/pugwash:123
msgid "English"
msgstr "Inglês"
-#: PortMaster/pugwash:122
+#: PortMaster/pugwash:124
msgid "Spanish"
msgstr "Espanhol"
-#: PortMaster/pugwash:123
+#: PortMaster/pugwash:125
msgid "Finnish"
msgstr "Finlandês"
-#: PortMaster/pugwash:124
+#: PortMaster/pugwash:126
msgid "French"
msgstr "Francês"
-#: PortMaster/pugwash:125
+#: PortMaster/pugwash:127
msgid "Italian"
msgstr "Italiano"
-#: PortMaster/pugwash:126
+#: PortMaster/pugwash:128
msgid "Japanese"
msgstr "Japonês"
-#: PortMaster/pugwash:127
+#: PortMaster/pugwash:129
msgid "Dutch"
msgstr "Holandês"
-#: PortMaster/pugwash:128
+#: PortMaster/pugwash:130
msgid "Polish"
msgstr "Polonês"
-#: PortMaster/pugwash:129
+#: PortMaster/pugwash:131
msgid "Portuguese (Portugal)"
msgstr "Português (Portugal)"
-#: PortMaster/pugwash:130
+#: PortMaster/pugwash:132
msgid "Portuguese (Brazil)"
msgstr "Português (Brasil)"
-#: PortMaster/pugwash:131
+#: PortMaster/pugwash:133
msgid "Chinese Simplified"
msgstr "Chines Simplificado"
-#: PortMaster/pugwash:240
+#: PortMaster/pugwash:242
msgid "Unknown IP"
msgstr "IP desconhecido"
-#: PortMaster/pugwash:713 PortMaster/pugwash:852
+#: PortMaster/pugwash:717 PortMaster/pugwash:856
msgid "N/A"
msgstr "Não disponível"
-#: PortMaster/pugwash:821
+#: PortMaster/pugwash:825
msgid "** NO PORT **"
msgstr "** SEM JOGO **"
-#: PortMaster/pugwash:839 PortMaster/pylibs/pugscene.py:1394
+#: PortMaster/pugwash:843 PortMaster/pylibs/pugscene.py:1394
msgid "Ready to Run"
msgstr "Pronto para executar"
-#: PortMaster/pugwash:839
+#: PortMaster/pugwash:843
msgid "Requires Files"
msgstr "Arquivos necessários"
-#: PortMaster/pugwash:846 PortMaster/pugwash:873
+#: PortMaster/pugwash:850 PortMaster/pugwash:877
#: PortMaster/pylibs/pugscene.py:687
msgid "Installed"
msgstr "Instalado"
-#: PortMaster/pugwash:848
+#: PortMaster/pugwash:852
msgid "Missing"
msgstr "Faltando"
-#: PortMaster/pugwash:874 PortMaster/pylibs/harbourmaster/harbour.py:1201
+#: PortMaster/pugwash:878 PortMaster/pylibs/harbourmaster/harbour.py:1208
#: PortMaster/pylibs/pugscene.py:1396
msgid "Update Available"
msgstr "Atualização disponível"
-#: PortMaster/pugwash:875 PortMaster/pylibs/harbourmaster/harbour.py:1200
+#: PortMaster/pugwash:879 PortMaster/pylibs/harbourmaster/harbour.py:1207
#: PortMaster/pylibs/pugscene.py:687 PortMaster/pylibs/pugscene.py:1395
msgid "Not Installed"
msgstr "Não instalado"
-#: PortMaster/pugwash:1048 PortMaster/pugwash:1348
+#: PortMaster/pugwash:1052 PortMaster/pugwash:1352
#: PortMaster/pylibs/pugscene.py:1587 PortMaster/pylibs/pugscene.py:1635
#: PortMaster/pylibs/pugscene.py:1637
msgid "Okay"
msgstr "Ok"
-#: PortMaster/pugwash:1051 PortMaster/pugwash:1349
+#: PortMaster/pugwash:1055 PortMaster/pugwash:1353
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
#: PortMaster/pylibs/pugscene.py:1556 PortMaster/pylibs/pugscene.py:1590
#: PortMaster/pylibs/pugscene.py:1635
msgid "Cancel"
msgstr "Cancelar"
-#: PortMaster/pugwash:1254
+#: PortMaster/pugwash:1258
#, python-brace-format
msgid "Installing {port_name}"
msgstr "Instalando {port_name}"
-#: PortMaster/pugwash:1263
+#: PortMaster/pugwash:1267
#, python-brace-format
msgid "Uninstalling {port_name}"
msgstr "Desinstalando {port_name}"
-#: PortMaster/pugwash:1274
+#: PortMaster/pugwash:1278
msgid "Updating all port sources:"
msgstr "Atualizando todas as fontes de jogos:"
-#: PortMaster/pugwash:1284
+#: PortMaster/pugwash:1288
#, python-brace-format
msgid "Checking {runtime_name}"
-msgstr ""
+msgstr "Verificando {runtime_name}"
-#: PortMaster/pugwash:1666
+#: PortMaster/pugwash:1670
#, python-brace-format
msgid "You are switching from the {old_release_channel} to the {new_release_channel} version.\n\n"
"Do you want to upgrade?"
msgstr "Você está trocando da versão {old_release_channel} para a versão {new_release_channel}.\n\n"
"Você quer atualizar?"
-#: PortMaster/pugwash:1672
+#: PortMaster/pugwash:1676
#, python-brace-format
msgid "There is a new version of PortMaster ({portmaster_version})\n\n"
"Do you want to upgrade?"
msgstr "Há uma nova versão de Portmaster ({portmaster_version})\n\n"
"Você quer atualizar?"
-#: PortMaster/pugwash:1677
+#: PortMaster/pugwash:1681
#, python-brace-format
msgid "Do you want to reinstall PortMaster?\n\n"
"This will reinstall from the {release_channel} channel to {portmaster_version}."
-msgstr ""
+msgstr "Você quer reinstalar PortMaster?\n\n"
+"Isso irá reinstalar do canal {release_channel} para {portmaster_version}."
#: PortMaster/pylibs/harbourmaster/harbour.py:109
msgid "Loading..."
msgstr "Carregando..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:159
+#: PortMaster/pylibs/harbourmaster/harbour.py:165
msgid "Loading Info."
msgstr "Carregando informação."
-#: PortMaster/pylibs/harbourmaster/harbour.py:187
+#: PortMaster/pylibs/harbourmaster/harbour.py:193
msgid "Fetching latest featured ports."
-msgstr ""
+msgstr "Buscando jogos em destaque mais recentes."
-#: PortMaster/pylibs/harbourmaster/harbour.py:196
-#: PortMaster/pylibs/harbourmaster/harbour.py:214
+#: PortMaster/pylibs/harbourmaster/harbour.py:202
+#: PortMaster/pylibs/harbourmaster/harbour.py:220
msgid "Fetching latest info."
msgstr "Buscando informação mais recente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:230
+#: PortMaster/pylibs/harbourmaster/harbour.py:236
msgid "Fetching latest porters."
msgstr "Buscando porters mais recentes."
-#: PortMaster/pylibs/harbourmaster/harbour.py:242
+#: PortMaster/pylibs/harbourmaster/harbour.py:248
msgid "Loading Sources."
msgstr "Carregando fontes."
-#: PortMaster/pylibs/harbourmaster/harbour.py:398
+#: PortMaster/pylibs/harbourmaster/harbour.py:404
msgid "Loading Ports."
msgstr "Carregando jogos."
-#: PortMaster/pylibs/harbourmaster/harbour.py:970
+#: PortMaster/pylibs/harbourmaster/harbour.py:976
#, python-brace-format
msgid "Installing Theme {download_name}."
msgstr "Instalando tema {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:977
-#: PortMaster/pylibs/harbourmaster/harbour.py:1015
-#: PortMaster/pylibs/harbourmaster/harbour.py:1073
+#: PortMaster/pylibs/harbourmaster/harbour.py:983
+#: PortMaster/pylibs/harbourmaster/harbour.py:1021
+#: PortMaster/pylibs/harbourmaster/harbour.py:1080
msgid "Installing"
msgstr "Instalando"
-#: PortMaster/pylibs/harbourmaster/harbour.py:987
+#: PortMaster/pylibs/harbourmaster/harbour.py:993
msgid "Theme {download_name!r} installed successfully."
msgstr "Tema {download_name!r} instalado com sucesso."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1006
-#: PortMaster/pylibs/harbourmaster/harbour.py:1064
+#: PortMaster/pylibs/harbourmaster/harbour.py:1012
+#: PortMaster/pylibs/harbourmaster/harbour.py:1071
#, python-brace-format
msgid "Installing {download_name}."
msgstr "Instalando {download_name}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1031
-#: PortMaster/pylibs/harbourmaster/harbour.py:1174
+#: PortMaster/pylibs/harbourmaster/harbour.py:1037
+#: PortMaster/pylibs/harbourmaster/harbour.py:1181
msgid "Port {download_name!r} installed successfully."
msgstr "Jogo {download_name!r} instalado com sucesso."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1140
+#: PortMaster/pylibs/harbourmaster/harbour.py:1147
msgid "Installation failed, removing files..."
msgstr "Instalação falhou, removendo arquivos..."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1152
+#: PortMaster/pylibs/harbourmaster/harbour.py:1159
#, python-brace-format
msgid "Port {download_name} installed failed."
msgstr "Jogo {download_name} falhou na instalação."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1164
+#: PortMaster/pylibs/harbourmaster/harbour.py:1171
msgid "Port {download_name!r} and {runtime_name!r} installed successfully."
msgstr "Jogo {download_name!r} e {runtime_name!r} instalados com sucesso."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1169
+#: PortMaster/pylibs/harbourmaster/harbour.py:1176
msgid "Port {download_name!r} installed sucessfully, but {runtime_name!r} failed to install!!\n\n"
"Either reinstall to try again, or check the wiki for help."
msgstr "Jogo {download_name!r} instalado com sucesso, mas {runtime_name!r} falhou em instalar!\n\n"
"Ou reinstale para tentar novamente, ou cheque o site para ajuda."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1184
+#: PortMaster/pylibs/harbourmaster/harbour.py:1191
#, python-brace-format
msgid "Port {runtime} contains a bad runtime, game may not run correctly."
msgstr "Jogo {runtime} contém um tempo de execução incompatível, jogo pode não executar corretamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1202
+#: PortMaster/pylibs/harbourmaster/harbour.py:1209
msgid "Verified"
-msgstr ""
+msgstr "Verificado"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1203
+#: PortMaster/pylibs/harbourmaster/harbour.py:1210
msgid "Unverified"
-msgstr ""
+msgstr "Não verificado"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1204
+#: PortMaster/pylibs/harbourmaster/harbour.py:1211
msgid "Broken"
-msgstr ""
+msgstr "Quebrado"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1209
+#: PortMaster/pylibs/harbourmaster/harbour.py:1217
msgid "Unable do download a runtime when in offline mode."
msgstr "Incapaz de baixar um tempo de execução quando desconectado."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1213
+#: PortMaster/pylibs/harbourmaster/harbour.py:1221
#, python-brace-format
msgid "Verifying runtime {runtime}"
-msgstr ""
+msgstr "Verificando tempo de execução {runtime}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1222
-#: PortMaster/pylibs/harbourmaster/harbour.py:1229
+#: PortMaster/pylibs/harbourmaster/harbour.py:1230
+#: PortMaster/pylibs/harbourmaster/harbour.py:1237
msgid "Verifying"
-msgstr ""
+msgstr "Verificando"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1277
+#: PortMaster/pylibs/harbourmaster/harbour.py:1285
#, python-brace-format
msgid "Verified {runtime} successfully."
-msgstr ""
+msgstr "Verificado {runtime} com sucesso."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1280
+#: PortMaster/pylibs/harbourmaster/harbour.py:1288
#, python-brace-format
msgid "Verified {runtime}."
-msgstr ""
+msgstr "Verificado {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1286
+#: PortMaster/pylibs/harbourmaster/harbour.py:1294
#, python-brace-format
msgid "Updating {runtime}."
-msgstr ""
+msgstr "Atualizando {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1290
+#: PortMaster/pylibs/harbourmaster/harbour.py:1298
#, python-brace-format
msgid "Runtime {runtime} is broken, reinstalling."
-msgstr ""
+msgstr "Tempo de execução {runtime} está quebrado, reinstalando."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1294
+#: PortMaster/pylibs/harbourmaster/harbour.py:1302
#, python-brace-format
msgid "Downloading runtime {runtime}."
msgstr "Baixando tempo de execução {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1314
-#: PortMaster/pylibs/harbourmaster/harbour.py:1324
+#: PortMaster/pylibs/harbourmaster/harbour.py:1322
+#: PortMaster/pylibs/harbourmaster/harbour.py:1332
#, python-brace-format
msgid "Unable to download {runtime}, game may not run correctly."
msgstr "Incapaz de baixar {runtime}, jogo pode não funcionar corretamente."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1333
+#: PortMaster/pylibs/harbourmaster/harbour.py:1341
#, python-brace-format
msgid "Successfully downloaded {runtime}."
msgstr "{runtime} baixado com sucesso."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1339
+#: PortMaster/pylibs/harbourmaster/harbour.py:1347
#, python-brace-format
msgid "Unable to find a download for {runtime}."
msgstr "Incapaz de encontrar um download para {runtime}."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1349
-#: PortMaster/pylibs/harbourmaster/harbour.py:1428
+#: PortMaster/pylibs/harbourmaster/harbour.py:1357
+#: PortMaster/pylibs/harbourmaster/harbour.py:1436
msgid "Unable do download a port when in offline mode."
msgstr "Incapaz de baixar um jogo quando desconectado."
-#: PortMaster/pylibs/harbourmaster/harbour.py:1446
+#: PortMaster/pylibs/harbourmaster/harbour.py:1454
#, python-brace-format
msgid "Unable to find a source for {port_name}"
msgstr "Incapaz de encontrar uma fonte para {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1460
+#: PortMaster/pylibs/harbourmaster/harbour.py:1468
#, python-brace-format
msgid "Unknown port {port_name}"
msgstr "Jogo desconhecido {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1493
+#: PortMaster/pylibs/harbourmaster/harbour.py:1501
#, python-brace-format
msgid "Removing {port_name}"
msgstr "Removendo {port_name}"
-#: PortMaster/pylibs/harbourmaster/harbour.py:1525
+#: PortMaster/pylibs/harbourmaster/harbour.py:1533
#, python-brace-format
msgid "Successfully uninstalled {port_name}"
msgstr "{port_name} desinstalado com sucesso"
@@ -429,15 +430,15 @@ msgstr "Incapaz de validar download."
#: PortMaster/pylibs/pugscene.py:327
msgid "Main Menu"
-msgstr ""
+msgstr "Menu Principal"
#: PortMaster/pylibs/pugscene.py:335 PortMaster/pylibs/pugscene.py:1061
msgid "Featured Ports"
-msgstr ""
+msgstr "Jogos em Destaque"
#: PortMaster/pylibs/pugscene.py:336
msgid "Hand curated lists of ports"
-msgstr ""
+msgstr "Listas de jogos curadas"
#: PortMaster/pylibs/pugscene.py:339
msgid "All Ports"
@@ -445,7 +446,7 @@ msgstr "Todos os Jogos"
#: PortMaster/pylibs/pugscene.py:340
msgid "List all ports available on PortMaster."
-msgstr ""
+msgstr "Listar todos os jogos disponíveis em PortMaster."
#: PortMaster/pylibs/pugscene.py:343
msgid "Ready to Run Ports"
@@ -453,7 +454,7 @@ msgstr "Jogos Pronto para Rodar"
#: PortMaster/pylibs/pugscene.py:344
msgid "List all ports that are ready to play!"
-msgstr ""
+msgstr "Listar todos os jogos que estão prontos para jogar!"
#: PortMaster/pylibs/pugscene.py:347
msgid "Uninstall Ports"
@@ -461,7 +462,7 @@ msgstr "Desinstalar Jogos"
#: PortMaster/pylibs/pugscene.py:348
msgid "Remove unwanted ports"
-msgstr ""
+msgstr "Remover jogos indesejados"
#: PortMaster/pylibs/pugscene.py:353
msgid "Options"
@@ -469,7 +470,7 @@ msgstr "Opções"
#: PortMaster/pylibs/pugscene.py:354
msgid "PortMaster Options"
-msgstr ""
+msgstr "Opções do PortMaster"
#: PortMaster/pylibs/pugscene.py:357
msgid "Exit"
@@ -477,7 +478,7 @@ msgstr "Sair"
#: PortMaster/pylibs/pugscene.py:358
msgid "Quit PortMaster"
-msgstr ""
+msgstr "Sair do PortMaster"
#: PortMaster/pylibs/pugscene.py:360 PortMaster/pylibs/pugscene.py:489
#: PortMaster/pylibs/pugscene.py:1009 PortMaster/pylibs/pugscene.py:1017
@@ -491,7 +492,7 @@ msgstr "Sair"
#: PortMaster/pylibs/pugscene.py:374
#, python-brace-format
msgid "Secret Mode {secret_mode}"
-msgstr ""
+msgstr "Modo Secreto {secret_mode}"
#: PortMaster/pylibs/pugscene.py:375 PortMaster/pylibs/pugscene.py:450
#: PortMaster/pylibs/pugscene.py:454 PortMaster/pylibs/pugscene.py:528
@@ -507,7 +508,7 @@ msgstr "Desativado"
#: PortMaster/pylibs/pugscene.py:419
msgid "Options Menu"
-msgstr ""
+msgstr "Menu de Opções"
#: PortMaster/pylibs/pugscene.py:424
msgid "System"
@@ -519,7 +520,7 @@ msgstr "Atualizar Jogos"
#: PortMaster/pylibs/pugscene.py:429
msgid "Update all ports and associated information"
-msgstr ""
+msgstr "Atualizar todos os jogos e informações associadas"
#: PortMaster/pylibs/pugscene.py:432
msgid "Update PortMaster"
@@ -527,15 +528,15 @@ msgstr "Atualizar PortMaster"
#: PortMaster/pylibs/pugscene.py:433
msgid "Force check for a new PortMaster version."
-msgstr ""
+msgstr "Forçar verificação para uma nova versão de PortMaster."
#: PortMaster/pylibs/pugscene.py:436 PortMaster/pylibs/pugscene.py:625
msgid "Runtime Manager"
-msgstr ""
+msgstr "Gerenciador de Tempos de Execução"
#: PortMaster/pylibs/pugscene.py:437
msgid "Download/Check/Delete Port runtimes."
-msgstr ""
+msgstr "Baixar/Verificar/Deletar tempos de execução de jogo."
#: PortMaster/pylibs/pugscene.py:443 PortMaster/pylibs/pugscene.py:555
#, python-brace-format
@@ -544,7 +545,7 @@ msgstr "Modo de controle: {controller_mode}"
#: PortMaster/pylibs/pugscene.py:444
msgid "Toggle between various controller layouts."
-msgstr ""
+msgstr "Alternar entre diferentes disposições de controle."
#: PortMaster/pylibs/pugscene.py:446
msgid "Audio"
@@ -556,7 +557,7 @@ msgstr "Música: "
#: PortMaster/pylibs/pugscene.py:451
msgid "Enable or Disable background music in PortMaster."
-msgstr ""
+msgstr "Ativar ou Desativar música de fundo em PortMaster."
#: PortMaster/pylibs/pugscene.py:454 PortMaster/pylibs/pugscene.py:537
msgid "Sound FX: "
@@ -564,7 +565,7 @@ msgstr "Efeitos Sonoros: "
#: PortMaster/pylibs/pugscene.py:455
msgid "Enable or Disable soundfx in PortMaster."
-msgstr ""
+msgstr "Ativar ou Desativar efeitos sonoros em PortMaster."
#: PortMaster/pylibs/pugscene.py:457
msgid "Interface"
@@ -576,7 +577,7 @@ msgstr "Escolher Idioma"
#: PortMaster/pylibs/pugscene.py:462
msgid "Select the language PortMaster uses."
-msgstr ""
+msgstr "Selecione o idioma que PortMaster usa."
#: PortMaster/pylibs/pugscene.py:465 PortMaster/pylibs/pugscene.py:774
msgid "Select Theme"
@@ -584,7 +585,7 @@ msgstr "Selecionar Tema"
#: PortMaster/pylibs/pugscene.py:466
msgid "Select a theme for PortMaster."
-msgstr ""
+msgstr "Selecione um tema para PortMaster."
#: PortMaster/pylibs/pugscene.py:472
msgid "Select Color Scheme"
@@ -592,23 +593,23 @@ msgstr "Selecionar Esquema de Cores"
#: PortMaster/pylibs/pugscene.py:473
msgid "Select a colour scheme for PortMaster"
-msgstr ""
+msgstr "Selecionar um esquema de cores para PortMaster"
#: PortMaster/pylibs/pugscene.py:476
msgid "Secret Options"
-msgstr ""
+msgstr "Opções Secretas"
#: PortMaster/pylibs/pugscene.py:479
msgid "Delete PortMaster Config"
-msgstr ""
+msgstr "Deletar Configuração de PortMaster"
#: PortMaster/pylibs/pugscene.py:480 PortMaster/pylibs/pugscene.py:484
msgid "This can break stuff, don't touch unless you know what you are doing."
-msgstr ""
+msgstr "Isso pode quebrar coisas, não toque a não ser que você saiba o que está fazendo."
#: PortMaster/pylibs/pugscene.py:483
msgid "Delete PortMaster Runtimes"
-msgstr ""
+msgstr "Deletar Tempos de Execução de PortMaster"
#: PortMaster/pylibs/pugscene.py:489 PortMaster/pylibs/pugscene.py:701
#: PortMaster/pylibs/pugscene.py:808 PortMaster/pylibs/pugscene.py:890
@@ -622,19 +623,19 @@ msgstr "Voltar"
#: PortMaster/pylibs/pugscene.py:600
msgid "Deleting Runtimes:"
-msgstr ""
+msgstr "Deletando Tempos de Execução:"
#: PortMaster/pylibs/pugscene.py:649
msgid "Download All"
-msgstr ""
+msgstr "Baixar Tudo"
#: PortMaster/pylibs/pugscene.py:688
msgid "Used"
-msgstr ""
+msgstr "Usado"
#: PortMaster/pylibs/pugscene.py:688
msgid "Not Used"
-msgstr ""
+msgstr "Não usado"
#: PortMaster/pylibs/pugscene.py:701 PortMaster/pylibs/pugscene.py:1296
msgid "Install"
@@ -642,7 +643,7 @@ msgstr "Instalar"
#: PortMaster/pylibs/pugscene.py:704
msgid "Check"
-msgstr ""
+msgstr "Verificar"
#: PortMaster/pylibs/pugscene.py:705 PortMaster/pylibs/pugscene.py:1298
msgid "Uninstall"
@@ -650,12 +651,12 @@ msgstr "Desinstalar"
#: PortMaster/pylibs/pugscene.py:720
msgid "Are you sure you want to download and verify all runtimes?"
-msgstr ""
+msgstr "Você tem certeza que quer baixar e verificar todos os tempos de execução?"
#: PortMaster/pylibs/pugscene.py:758
#, python-brace-format
msgid "Deleted runtime {runtime}"
-msgstr ""
+msgstr "Tempo de execução {runtime} deletado"
#: PortMaster/pylibs/pugscene.py:792
#, python-brace-format
@@ -680,7 +681,7 @@ msgstr "Você quer trocar de tema?\n\n"
#: PortMaster/pylibs/pugscene.py:871
msgid "Select Colour Scheme"
-msgstr ""
+msgstr "Selecionar Esquema de Cores"
#: PortMaster/pylibs/pugscene.py:885
#, python-brace-format
@@ -695,7 +696,7 @@ msgstr "Você quer trocar o esquema de cores do tema?\n\n"
#: PortMaster/pylibs/pugscene.py:929
msgid "Language Select"
-msgstr ""
+msgstr "Seleção de Idioma"
#: PortMaster/pylibs/pugscene.py:939
#, python-brace-format
@@ -747,7 +748,7 @@ msgstr "Mostrar informação"
#: PortMaster/pylibs/pugscene.py:1264
msgid "Ports List"
-msgstr ""
+msgstr "Lista de Jogos"
#: PortMaster/pylibs/pugscene.py:1278
msgid "Filters"
@@ -755,11 +756,11 @@ msgstr "Filtros"
#: PortMaster/pylibs/pugscene.py:1286
msgid "Port Info"
-msgstr ""
+msgstr "Informações de Jogo"
#: PortMaster/pylibs/pugscene.py:1351
msgid "Filters Scene"
-msgstr ""
+msgstr "Cena de Filtros"
#: PortMaster/pylibs/pugscene.py:1378
msgid "Action"
@@ -840,7 +841,7 @@ msgstr "Porters:"
#: PortMaster/pylibs/pugscene.py:1540
msgid "Messages"
-msgstr ""
+msgstr "Mensagens"
#: PortMaster/pylibs/pugscene.py:1575
msgid "Are you sure you want to cancel?"
diff --git a/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/themes.po b/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/themes.po
index 8f41db2..e8ca869 100644
--- a/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/themes.po
+++ b/PortMaster/pylibs/locales/pt_BR/LC_MESSAGES/themes.po
@@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: portmaster\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-09 16:35+0800\n"
-"PO-Revision-Date: 2023-09-24 06:26\n"
+"PO-Revision-Date: 2023-10-04 08:47\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -136,5 +136,10 @@ msgid "Name: {runtime_info.name}\n"
"Verified: {runtime_info.verified}\n"
"Download Size: {runtime_info.download_size}\n"
"Install Size: {runtime_info.disk_size}"
-msgstr ""
+msgstr "Nome: {runtime_info.name}\n"
+"Estado: {runtime_info.status}\n"
+"Jogos: {runtime_info.ports}\n"
+"Verificado: {runtime_info.verified}\n"
+"Tamanho de Download: {runtime_info.download_size}\n"
+"Tamanho para Instalar: {runtime_info.disk_size}"
diff --git a/do_release.sh b/do_release.sh
index 38db38c..71a52d1 100755
--- a/do_release.sh
+++ b/do_release.sh
@@ -60,3 +60,59 @@ zip -9r PortMaster.zip PortMaster/ \
-x PortMaster/harbourmaster.txt \
-x '*.DS_Store'
+if [[ "$1" == "release" ]]; then
+ echo "Creating Installers"
+
+ if [ ! -f "runtimes.zip" ]; then
+ echo "Downloading Runtimes"
+ # Download the runtimes
+ mkdir -p runtimes
+ cd runtimes
+ for runtime_url in $(curl -s https://api.github.com/repos/PortsMaster/PortMaster-Runtime/releases/latest | grep browser_download_url | cut -d '"' -f 4); do
+ if [[ "$runtime_url" =~ /zulu11.*$ ]]; then
+ continue
+ fi
+
+ wget "$runtime_url"
+ done
+
+ # Validate them
+ for check_file in *.md5; do
+ runtime_file="${check_file/.md5/}"
+ if [[ $(md5sum "${runtime_file}" | cut -d ' ' -f 1) != $(cat "${check_file}" | cut -d ' ' -f 1) ]]; then
+ cd ..
+ rm -fRv runtimes
+ echo "Failed to validate runtime ${runtime_file}"
+ exit 255
+ fi
+ done
+
+ zip -9 ../runtimes.zip *
+ cd ..
+ rm -fRv runtimes
+ fi
+
+ if [ ! -d "makeself-2.5.0" ]; then
+ echo "Downloading makeself"
+ wget "https://github.com/megastep/makeself/releases/download/release-2.5.0/makeself-2.5.0.run"
+ chmod +x makeself-2.5.0.run
+ ./makeself-2.5.0.run
+ fi
+
+ echo "Building Release"
+ mkdir -p pm_release
+ cd pm_release
+ cp ../PortMaster.zip .
+ cp ../tools/installer.sh .
+ cd ..
+
+ makeself-2.5.0/makeself.sh pm_release "Install PortMaster.sh" "PortMaster Installer" ./installer.sh
+
+ cd pm_release
+ cp ../runtimes.zip .
+ cd ..
+
+ makeself-2.5.0/makeself.sh pm_release "Install Full PortMaster.sh" "PortMaster Full Installer" ./installer.sh
+
+ rm -fRv pm_release
+fi
diff --git a/tools/installer.sh b/tools/installer.sh
new file mode 100755
index 0000000..52b4db3
--- /dev/null
+++ b/tools/installer.sh
@@ -0,0 +1,72 @@
+#!/bin/bash
+
+if [ -d "/opt/system/Tools/" ]; then
+ controlfolder="/opt/system/Tools"
+elif [ -d "/opt/tools/" ]; then
+ controlfolder="/opt/tools"
+else
+ controlfolder="/roms/ports"
+fi
+
+if [[ -e "/usr/share/plymouth/themes/text.plymouth" ]]; then
+ if [ ! -z "$(cat /etc/fstab | grep roms2 | tr -d '\0')" ]; then
+ directory="roms2"
+ else
+ directory="roms"
+ fi
+else
+ directory="roms"
+fi
+
+CUR_TTY=/dev/tty0
+
+TEMP_DIR=$(pwd)
+
+if [ -f "/etc/os-release" ]; then
+ source /etc/os-release
+fi
+
+sudo echo "Testing for sudo..." > /dev/null 2>&1
+if [ $? != 0 ]; then
+ ESUDO=""
+else
+ ESUDO="sudo"
+fi
+
+if [[ -e "/usr/share/plymouth/themes/text.plymouth" ]]; then
+ ES_NAME="emulationstation"
+else
+ ES_NAME="emustation"
+fi
+
+RELOCATE_PM=""
+if [ "${OS_NAME}" != "JELOS" ] && [ "${OS_NAME}" != "UnofficialOS" ]; then
+ RELOCATE_PM="TRUE"
+fi
+
+$ESUDO chmod 666 $CUR_TTY
+printf "\033c" > $CUR_TTY
+
+cd "$controlfolder"
+echo "Installing PortMaster" > $CUR_TTY
+
+$ESUDO rm -fRv "PortMaster" "PortMaster.sh" > $CUR_TTY
+
+$ESUDO unzip "$TEMP_DIR/PortMaster.zip" > $CUR_TTY
+if [ ! -z "$RELOCATE_PM" ]; then
+ $ESUDO mv -vf PortMaster/PortMaster.sh PortMaster.sh > $CUR_TTY
+fi
+
+if [ -f "$TEMP_DIR/runtimes.zip" ]; then
+ cd PortMaster/libs/
+ $ESUDO unzip "$TEMP_DIR/runtimes.zip" > $CUR_TTY
+fi
+
+cd "/$directory/ports"
+
+$ESUDO rm -vf Install*PortMaster.sh > $CUR_TTY
+
+echo "Finished installing PortMaster" > $CUR_TTY
+sleep 3
+
+$ESUDO systemctl restart $ES_NAME