Wrote script to update ts files since the real one is broken

This commit is contained in:
Campbell 2024-08-21 19:34:08 -04:00
parent bcf82a011f
commit e2decf8d6f
Signed by: NinjaCheetah
GPG Key ID: B547958AF96ED344
9 changed files with 423 additions and 116 deletions

View File

@ -20,7 +20,7 @@ from modules.core import *
from modules.download_wii import run_nus_download_wii from modules.download_wii import run_nus_download_wii
from modules.download_dsi import run_nus_download_dsi from modules.download_dsi import run_nus_download_dsi
nusget_version = "1.2.0" nusget_version = "1.0.0"
regions = {"World": ["41"], "USA/NTSC": ["45"], "Europe/PAL": ["50"], "Japan": ["4A"], "Korea": ["4B"], "China": ["43"], regions = {"World": ["41"], "USA/NTSC": ["45"], "Europe/PAL": ["50"], "Japan": ["4A"], "Korea": ["4B"], "China": ["43"],
"Australia/NZ": ["55"]} "Australia/NZ": ["55"]}
@ -125,7 +125,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
# Connect the double click signal for handling when titles are selected. # Connect the double click signal for handling when titles are selected.
tree[0].itemDoubleClicked.connect(self.onItemClicked) tree[0].itemDoubleClicked.connect(self.onItemClicked)
# Do a quick check to see if there's a newer release available, and inform the user if there is. # Do a quick check to see if there's a newer release available, and inform the user if there is.
worker = Worker(check_nusget_updates, nusget_version) worker = Worker(check_nusget_updates, app, nusget_version)
worker.signals.result.connect(self.prompt_for_update) worker.signals.result.connect(self.prompt_for_update)
worker.signals.progress.connect(self.update_log_text) worker.signals.progress.connect(self.update_log_text)
self.threadpool.start(worker) self.threadpool.start(worker)
@ -177,7 +177,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
msg_box.setInformativeText(app.translate("MainWindow", "You're currently running v{nusget_version}, " msg_box.setInformativeText(app.translate("MainWindow", "You're currently running v{nusget_version}, "
"but v{new_version} is available on GitHub. Would you like to view" "but v{new_version} is available on GitHub. Would you like to view"
" the latest version?" " the latest version?"
.format(nusget_version=nusget_version, new_version=nusget_version))) .format(nusget_version=nusget_version, new_version=new_version)))
ret = msg_box.exec() ret = msg_box.exec()
if ret == QMessageBox.StandardButton.Yes: if ret == QMessageBox.StandardButton.Yes:
webbrowser.open("https://github.com/NinjaCheetah/NUSGet/releases/latest") webbrowser.open("https://github.com/NinjaCheetah/NUSGet/releases/latest")

View File

@ -1,7 +1,8 @@
{ {
"files": [ "files": [
"NUSGet.py", "NUSGet.py",
"./qt/py/ui_MainMenu.py", "./modules/core.py",
"./qt/ui/MainMenu.ui",
"./resources/translations/nusget_es.ts", "./resources/translations/nusget_es.ts",
"./resources/translations/nusget_no.ts", "./resources/translations/nusget_no.ts",
"./resources/translations/nusget_nb.ts", "./resources/translations/nusget_nb.ts",

View File

@ -4,11 +4,11 @@
import requests import requests
def check_nusget_updates(current_version: str, progress_callback=None) -> str | None: def check_nusget_updates(app, current_version: str, progress_callback=None) -> str | None:
# Simple function to make a request to the GitHub API and then check if the latest available version is newer. # Simple function to make a request to the GitHub API and then check if the latest available version is newer.
gh_api_request = requests.get(url="https://api.github.com/repos/NinjaCheetah/NUSGet/releases/latest", stream=True) gh_api_request = requests.get(url="https://api.github.com/repos/NinjaCheetah/NUSGet/releases/latest", stream=True)
if gh_api_request.status_code != 200: if gh_api_request.status_code != 200:
progress_callback.emit("\n\nCould not check for updates.") progress_callback.emit(app.translate("MainWindow", "\n\nCould not check for updates."))
else: else:
api_response = gh_api_request.json() api_response = gh_api_request.json()
new_version: str = api_response["tag_name"].replace('v', '') new_version: str = api_response["tag_name"].replace('v', '')
@ -16,7 +16,7 @@ def check_nusget_updates(current_version: str, progress_callback=None) -> str |
current_version_split = current_version.split('.') current_version_split = current_version.split('.')
for place in range(len(new_version_split)): for place in range(len(new_version_split)):
if new_version_split[place] > current_version_split[place]: if new_version_split[place] > current_version_split[place]:
progress_callback.emit("\n\nThere's a newer version of NUSGet available!") progress_callback.emit(app.translate("MainWindow", "\n\nThere's a newer version of NUSGet available!"))
return new_version return new_version
progress_callback.emit("\n\nYou're running the latest release of NUSGet.") progress_callback.emit(app.translate("MainWindow", "\n\nYou're running the latest release of NUSGet."))
return None return None

View File

@ -1,124 +1,109 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="es_ES"> <TS version="2.1" language="es_ES">
<context>
<name>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</name>
<message>
<source>No Ticket Error Body</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>An Unknown Error has Occurred!</name>
<message>
<source>Unknown Error Title</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Content Decryption Failed</name>
<message>
<source>Decryption Error Window Title</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Content decryption was not successful! Decrypted contents could not be created.</name>
<message>
<source>Decryption Error Title</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Invalid Title ID</name>
<message>
<source>Invalid TID Error Window Title</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>MainWindow</name> <name>MainWindow</name>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="70"/>
<source>Wii</source> <source>Wii</source>
<translatorcomment>Does not change.</translatorcomment> <translatorcomment>Does not change.</translatorcomment>
<translation>Wii</translation> <translation>Wii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="101"/>
<source>vWii</source> <source>vWii</source>
<translatorcomment>Does not change.</translatorcomment> <translatorcomment>Does not change.</translatorcomment>
<translation>vWii</translation> <translation>vWii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="132"/>
<source>DSi</source> <source>DSi</source>
<translatorcomment>Does not change.</translatorcomment> <translatorcomment>Does not change.</translatorcomment>
<translation>DSi</translation> <translation>DSi</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="179"/>
<source>v</source> <source>v</source>
<translatorcomment>Does not change.</translatorcomment> <translatorcomment>Does not change.</translatorcomment>
<translation>v</translation> <translation>v</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="26"/>
<source>MainWindow</source> <source>MainWindow</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="41"/>
<source>Available Titles</source> <source>Available Titles</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="172"/>
<source>Title ID</source> <source>Title ID</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="192"/>
<source>Version</source> <source>Version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="199"/>
<source>Console:</source> <source>Console:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="227"/>
<source>Start Download</source> <source>Start Download</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="244"/>
<source>General Settings</source> <source>General Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="266"/>
<source>Pack installable archive (WAD/TAD)</source> <source>Pack installable archive (WAD/TAD)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="281"/>
<source>File Name</source> <source>File Name</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="306"/>
<source>Keep encrypted contents</source> <source>Keep encrypted contents</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="333"/>
<source>Create decrypted contents (*.app)</source> <source>Create decrypted contents (*.app)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="363"/>
<source>Use local files, if they exist</source> <source>Use local files, if they exist</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="396"/>
<source>Use the Wii U NUS (faster, only effects Wii/vWii)</source> <source>Use the Wii U NUS (faster, only effects Wii/vWii)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="480"/>
<source>vWii Title Settings</source> <source>vWii Title Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="508"/>
<source>Re-encrypt title using the Wii Common Key</source> <source>Re-encrypt title using the Wii Common Key</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="562"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt; <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt; &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
@ -126,9 +111,14 @@ p, li { white-space: pre-wrap; }
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:&apos;Sans Serif&apos;; font-size:9pt;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> &lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:&apos;Sans Serif&apos;; font-size:9pt;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> <message>
<context> <location filename="../../qt/ui/MainMenu.ui" line="429"/>
<name>NUSGet v{nusget_version} <source>Apply patches to IOS (Applies to WADs only)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="84"/>
<source>NUSGet v{nusget_version}
Developed by NinjaCheetah Developed by NinjaCheetah
Powered by libWiiPy {libwiipy_version} Powered by libWiiPy {libwiipy_version}
DSi support provided by libTWLPy {libtwlpy_version} DSi support provided by libTWLPy {libtwlpy_version}
@ -137,79 +127,113 @@ Select a title from the list on the left, or enter a Title ID to begin.
Titles marked with a checkmark are free and have a ticket available, and can be decrypted and/or packed into a WAD or TAD. Titles with an X do not have a ticket, and only their encrypted contents can be saved. Titles marked with a checkmark are free and have a ticket available, and can be decrypted and/or packed into a WAD or TAD. Titles with an X do not have a ticket, and only their encrypted contents can be saved.
Titles will be downloaded to a folder named &quot;NUSGet&quot; inside your downloads folder.</name> Titles will be downloaded to a folder named &quot;NUSGet&quot; inside your downloads folder.</source>
<message>
<source>Welcome Text</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>No Ticket is Available for the Requested Title!</name>
<message> <message>
<source>No Ticket Error Title</source> <location filename="../../NUSGet.py" line="175"/>
<source>NUSGet Update Available</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>No title with the provided Title ID or version could be found!</name>
<message> <message>
<source>Target Not Found Error Title</source> <location filename="../../NUSGet.py" line="176"/>
<source>There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</name>
<message> <message>
<source>Target Not Found Error Body</source> <location filename="../../NUSGet.py" line="277"/>
<source>Invalid Title ID</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</name>
<message> <message>
<source>Unknown Error Body</source> <location filename="../../NUSGet.py" line="278"/>
<source>The Title ID you have entered is not in a valid format!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>The Title ID you have entered is not in a valid format!</name>
<message> <message>
<source>Invalid TID Error Title</source> <location filename="../../NUSGet.py" line="280"/>
<source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Ticket Not Available</name>
<message> <message>
<source>No Ticket Error Window Title</source> <location filename="../../NUSGet.py" line="282"/>
<source>Title ID/Version Not Found</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Title ID/Version Not Found</name>
<message> <message>
<source>Target Not Found Error Window Title</source> <location filename="../../NUSGet.py" line="283"/>
<source>No title with the provided Title ID or version could be found!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</name>
<message> <message>
<source>Invalid Title ID Error Body</source> <location filename="../../NUSGet.py" line="285"/>
<source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Unknown Error</name>
<message> <message>
<source>Unknown Error Window Title</source> <location filename="../../NUSGet.py" line="287"/>
<source>Content Decryption Failed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context>
<context>
<name>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</name>
<message> <message>
<source>Decryption Error Body</source> <location filename="../../NUSGet.py" line="288"/>
<source>Content decryption was not successful! Decrypted contents could not be created.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="291"/>
<source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="294"/>
<source>Ticket Not Available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="295"/>
<source>No Ticket is Available for the Requested Title!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="298"/>
<source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="300"/>
<source>Unknown Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="301"/>
<source>An Unknown Error has Occurred!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="303"/>
<source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="11"/>
<source>
Could not check for updates.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="19"/>
<source>
There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="21"/>
<source>
You&apos;re running the latest release of NUSGet.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>

View File

@ -4,7 +4,7 @@
<context> <context>
<name>MainWindow</name> <name>MainWindow</name>
<message> <message>
<location filename="../../NUSGet.py" line="81"/> <location filename="../../NUSGet.py" line="84"/>
<source>NUSGet v{nusget_version} <source>NUSGet v{nusget_version}
Developed by NinjaCheetah Developed by NinjaCheetah
Powered by libWiiPy {libwiipy_version} Powered by libWiiPy {libwiipy_version}
@ -18,77 +18,87 @@ Titles will be downloaded to a folder named &quot;NUSGet&quot; inside your downl
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="237"/> <location filename="../../NUSGet.py" line="175"/>
<source>NUSGet Update Available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="176"/>
<source>There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="277"/>
<source>Invalid Title ID</source> <source>Invalid Title ID</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="238"/> <location filename="../../NUSGet.py" line="278"/>
<source>The Title ID you have entered is not in a valid format!</source> <source>The Title ID you have entered is not in a valid format!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="240"/> <location filename="../../NUSGet.py" line="280"/>
<source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source> <source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="242"/> <location filename="../../NUSGet.py" line="282"/>
<source>Title ID/Version Not Found</source> <source>Title ID/Version Not Found</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="243"/> <location filename="../../NUSGet.py" line="283"/>
<source>No title with the provided Title ID or version could be found!</source> <source>No title with the provided Title ID or version could be found!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="246"/> <location filename="../../NUSGet.py" line="285"/>
<source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source> <source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="248"/> <location filename="../../NUSGet.py" line="287"/>
<source>Content Decryption Failed</source> <source>Content Decryption Failed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="249"/> <location filename="../../NUSGet.py" line="288"/>
<source>Content decryption was not successful! Decrypted contents could not be created.</source> <source>Content decryption was not successful! Decrypted contents could not be created.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="252"/> <location filename="../../NUSGet.py" line="291"/>
<source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source> <source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="255"/> <location filename="../../NUSGet.py" line="294"/>
<source>Ticket Not Available</source> <source>Ticket Not Available</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="256"/> <location filename="../../NUSGet.py" line="295"/>
<source>No Ticket is Available for the Requested Title!</source> <source>No Ticket is Available for the Requested Title!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="259"/> <location filename="../../NUSGet.py" line="298"/>
<source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source> <source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="261"/> <location filename="../../NUSGet.py" line="300"/>
<source>Unknown Error</source> <source>Unknown Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="262"/> <location filename="../../NUSGet.py" line="301"/>
<source>An Unknown Error has Occurred!</source> <source>An Unknown Error has Occurred!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="264"/> <location filename="../../NUSGet.py" line="303"/>
<source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source> <source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -148,52 +158,78 @@ Titles will be downloaded to a folder named &quot;NUSGet&quot; inside your downl
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="251"/> <location filename="../../qt/ui/MainMenu.ui" line="266"/>
<source>Pack installable archive (WAD/TAD)</source> <source>Pack installable archive (WAD/TAD)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="261"/> <location filename="../../qt/ui/MainMenu.ui" line="281"/>
<source>File Name</source> <source>File Name</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="268"/> <location filename="../../qt/ui/MainMenu.ui" line="306"/>
<source>Keep encrypted contents</source> <source>Keep encrypted contents</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="278"/> <location filename="../../qt/ui/MainMenu.ui" line="333"/>
<source>Create decrypted contents (*.app)</source> <source>Create decrypted contents (*.app)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="288"/> <location filename="../../qt/ui/MainMenu.ui" line="363"/>
<source>Use local files, if they exist</source> <source>Use local files, if they exist</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="295"/> <location filename="../../qt/ui/MainMenu.ui" line="396"/>
<source>Use the Wii U NUS (faster, only effects Wii/vWii)</source> <source>Use the Wii U NUS (faster, only effects Wii/vWii)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="328"/> <location filename="../../qt/ui/MainMenu.ui" line="429"/>
<source>Apply patches to IOS (Applies to WADs only)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../qt/ui/MainMenu.ui" line="480"/>
<source>vWii Title Settings</source> <source>vWii Title Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="338"/> <location filename="../../qt/ui/MainMenu.ui" line="508"/>
<source>Re-encrypt title using the Wii Common Key</source> <source>Re-encrypt title using the Wii Common Key</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="374"/> <location filename="../../qt/ui/MainMenu.ui" line="562"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt; <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt; &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Sans Serif&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt; &lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Noto Sans&apos;; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> &lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:&apos;Sans Serif&apos;; font-size:9pt;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="11"/>
<source>
Could not check for updates.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="19"/>
<source>
There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="21"/>
<source>
You&apos;re running the latest release of NUSGet.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>

View File

@ -4,82 +4,102 @@
<context> <context>
<name>MainWindow</name> <name>MainWindow</name>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="26"/>
<source>MainWindow</source> <source>MainWindow</source>
<translation>Finestra principale</translation> <translation>Finestra principale</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="41"/>
<source>Available Titles</source> <source>Available Titles</source>
<translation>Titoli disponibili</translation> <translation>Titoli disponibili</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="70"/>
<source>Wii</source> <source>Wii</source>
<translation>Wii</translation> <translation>Wii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="101"/>
<source>vWii</source> <source>vWii</source>
<translation>vWii</translation> <translation>vWii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="132"/>
<source>DSi</source> <source>DSi</source>
<translation>DSi</translation> <translation>DSi</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="172"/>
<source>Title ID</source> <source>Title ID</source>
<translation>ID Titolo</translation> <translation>ID Titolo</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="179"/>
<source>v</source> <source>v</source>
<translation>v</translation> <translation>v</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="192"/>
<source>Version</source> <source>Version</source>
<translation>Versione</translation> <translation>Versione</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="199"/>
<source>Console:</source> <source>Console:</source>
<translation>Console:</translation> <translation>Console:</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="227"/>
<source>Start Download</source> <source>Start Download</source>
<translation>Avvia download</translation> <translation>Avvia download</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="244"/>
<source>General Settings</source> <source>General Settings</source>
<translation>Impostazioni generali</translation> <translation>Impostazioni generali</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="266"/>
<source>Pack installable archive (WAD/TAD)</source> <source>Pack installable archive (WAD/TAD)</source>
<translation>Archivio installabile (WAD/TAD)</translation> <translation>Archivio installabile (WAD/TAD)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="281"/>
<source>File Name</source> <source>File Name</source>
<translation>Nome del file</translation> <translation>Nome del file</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="306"/>
<source>Keep encrypted contents</source> <source>Keep encrypted contents</source>
<translation>Mantieni contenuti criptati</translation> <translation>Mantieni contenuti criptati</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="333"/>
<source>Create decrypted contents (*.app)</source> <source>Create decrypted contents (*.app)</source>
<translation>Crea contenuto decriptato (*.app)</translation> <translation>Crea contenuto decriptato (*.app)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="363"/>
<source>Use local files, if they exist</source> <source>Use local files, if they exist</source>
<translation>Usa file locali, se esistenti</translation> <translation>Usa file locali, se esistenti</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="396"/>
<source>Use the Wii U NUS (faster, only effects Wii/vWii)</source> <source>Use the Wii U NUS (faster, only effects Wii/vWii)</source>
<translation>Usa il NUS di Wii U (più veloce, riguarda solo Wii/vWii)</translation> <translation>Usa il NUS di Wii U (più veloce, riguarda solo Wii/vWii)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="480"/>
<source>vWii Title Settings</source> <source>vWii Title Settings</source>
<translation>Impostazioni titoli vWii</translation> <translation>Impostazioni titoli vWii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="508"/>
<source>Re-encrypt title using the Wii Common Key</source> <source>Re-encrypt title using the Wii Common Key</source>
<translation>Cripta titolo usando la Chiave Comune Wii</translation> <translation>Cripta titolo usando la Chiave Comune Wii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="562"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt; <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt; &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
@ -92,66 +112,82 @@ p, li { white-space: pre-wrap; }
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> &lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="277"/>
<source>Invalid Title ID</source> <source>Invalid Title ID</source>
<translation>ID Titolo invalido</translation> <translation>ID Titolo invalido</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="278"/>
<source>The Title ID you have entered is not in a valid format!</source> <source>The Title ID you have entered is not in a valid format!</source>
<translation>L&apos; ID Titolo che hai inserito non è in un formato valido!</translation> <translation>L&apos; ID Titolo che hai inserito non è in un formato valido!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="280"/>
<source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source> <source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source>
<translation>Gli ID Titolo sono un codice di 16 caratteri tra numeri e lettere. Per favore inserisci in ID Titolo formattato correttamente, o scegline uno dal menù a sinistra.</translation> <translation>Gli ID Titolo sono un codice di 16 caratteri tra numeri e lettere. Per favore inserisci in ID Titolo formattato correttamente, o scegline uno dal menù a sinistra.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="282"/>
<source>Title ID/Version Not Found</source> <source>Title ID/Version Not Found</source>
<translation>ID Titolo/Versione non trovata</translation> <translation>ID Titolo/Versione non trovata</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="283"/>
<source>No title with the provided Title ID or version could be found!</source> <source>No title with the provided Title ID or version could be found!</source>
<translation>Non è stato trovato nessun titolo con l&apos; ID Titolo o versione data!</translation> <translation>Non è stato trovato nessun titolo con l&apos; ID Titolo o versione data!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="285"/>
<source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source> <source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source>
<translation>Assicurati di aver inserito un&apos; ID Titolo valido, o scegline uno dal database, e che la versione richiesta esista per il titolo che vuoi scaricare.</translation> <translation>Assicurati di aver inserito un&apos; ID Titolo valido, o scegline uno dal database, e che la versione richiesta esista per il titolo che vuoi scaricare.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="287"/>
<source>Content Decryption Failed</source> <source>Content Decryption Failed</source>
<translation>Decriptazione contenuti fallita</translation> <translation>Decriptazione contenuti fallita</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="288"/>
<source>Content decryption was not successful! Decrypted contents could not be created.</source> <source>Content decryption was not successful! Decrypted contents could not be created.</source>
<translation>La decriptazione dei contenuti non è andata a buon fine! I contenuti decriptadi non sono stati creati.</translation> <translation>La decriptazione dei contenuti non è andata a buon fine! I contenuti decriptadi non sono stati creati.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="291"/>
<source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source> <source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source>
<translation>Il tuo TMD o Ticket potrebbe essere danneggiato, o potrebbe non corrispondere col contenuto da decriptare. Se hai selezionato &quot;Usa file locali, se esistenti&quot;, prova a disabilitare quell&apos;opzione prima di riprovare a scaricare per aggiustare potenziali errori coi dati locali.</translation> <translation>Il tuo TMD o Ticket potrebbe essere danneggiato, o potrebbe non corrispondere col contenuto da decriptare. Se hai selezionato &quot;Usa file locali, se esistenti&quot;, prova a disabilitare quell&apos;opzione prima di riprovare a scaricare per aggiustare potenziali errori coi dati locali.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="294"/>
<source>Ticket Not Available</source> <source>Ticket Not Available</source>
<translation>Ticket non disponibile</translation> <translation>Ticket non disponibile</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="295"/>
<source>No Ticket is Available for the Requested Title!</source> <source>No Ticket is Available for the Requested Title!</source>
<translation>Nessun ticket disponibile per il titolo richiesto!</translation> <translation>Nessun ticket disponibile per il titolo richiesto!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="298"/>
<source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source> <source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source>
<translation>Non è stato possibile scaricare un ticket per il titolo richiesto, ma hai selezionato &quot;Crea archivio installabile&quot; o &quot;Crea contenuto decriptato&quot;. Queste opzioni non sono disponibili per i titoli senza un ticket. Sono stati salvati solo i contenuti criptati.</translation> <translation>Non è stato possibile scaricare un ticket per il titolo richiesto, ma hai selezionato &quot;Crea archivio installabile&quot; o &quot;Crea contenuto decriptato&quot;. Queste opzioni non sono disponibili per i titoli senza un ticket. Sono stati salvati solo i contenuti criptati.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="300"/>
<source>Unknown Error</source> <source>Unknown Error</source>
<translation>Errore sconosciuto</translation> <translation>Errore sconosciuto</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="301"/>
<source>An Unknown Error has Occurred!</source> <source>An Unknown Error has Occurred!</source>
<translation>Errore sconosciuto!</translation> <translation>Errore sconosciuto!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="303"/>
<source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source> <source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source>
<translation>Per favore riprova. Se il problema persiste, apri un issue su GitHub specificando in modo dettagliato cosa volevi fare quando è comparso questo errore.</translation> <translation>Per favore riprova. Se il problema persiste, apri un issue su GitHub specificando in modo dettagliato cosa volevi fare quando è comparso questo errore.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="84"/>
<source>NUSGet v{nusget_version} <source>NUSGet v{nusget_version}
Developed by NinjaCheetah Developed by NinjaCheetah
Powered by libWiiPy {libwiipy_version} Powered by libWiiPy {libwiipy_version}
@ -172,5 +208,41 @@ I titoli marcati da una spunta sono disponibili e hanno un ticket libero, e poss
I titoli verranno scaricati nella cartella &quot;NUSGet&quot; all&apos;interno della cartella Download.</translation> I titoli verranno scaricati nella cartella &quot;NUSGet&quot; all&apos;interno della cartella Download.</translation>
</message> </message>
<message>
<location filename="../../qt/ui/MainMenu.ui" line="429"/>
<source>Apply patches to IOS (Applies to WADs only)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="175"/>
<source>NUSGet Update Available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="176"/>
<source>There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="11"/>
<source>
Could not check for updates.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="19"/>
<source>
There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="21"/>
<source>
You&apos;re running the latest release of NUSGet.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
</TS> </TS>

View File

@ -4,82 +4,102 @@
<context> <context>
<name>MainWindow</name> <name>MainWindow</name>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="26"/>
<source>MainWindow</source> <source>MainWindow</source>
<translation>MainWindow</translation> <translation>MainWindow</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="41"/>
<source>Available Titles</source> <source>Available Titles</source>
<translation>Tilgjengelige Titler</translation> <translation>Tilgjengelige Titler</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="70"/>
<source>Wii</source> <source>Wii</source>
<translation>Wii</translation> <translation>Wii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="101"/>
<source>vWii</source> <source>vWii</source>
<translation>vWii</translation> <translation>vWii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="132"/>
<source>DSi</source> <source>DSi</source>
<translation>DSi</translation> <translation>DSi</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="172"/>
<source>Title ID</source> <source>Title ID</source>
<translation>Tittel ID</translation> <translation>Tittel ID</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="179"/>
<source>v</source> <source>v</source>
<translation>v</translation> <translation>v</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="192"/>
<source>Version</source> <source>Version</source>
<translation>Versjon</translation> <translation>Versjon</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="199"/>
<source>Console:</source> <source>Console:</source>
<translation>Konsoll:</translation> <translation>Konsoll:</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="227"/>
<source>Start Download</source> <source>Start Download</source>
<translation>Start Nedlasting</translation> <translation>Start Nedlasting</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="244"/>
<source>General Settings</source> <source>General Settings</source>
<translation>Generelle Instillinger</translation> <translation>Generelle Instillinger</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="266"/>
<source>Pack installable archive (WAD/TAD)</source> <source>Pack installable archive (WAD/TAD)</source>
<translation>Pakke installerbart arkiv (WAD/TAD)</translation> <translation>Pakke installerbart arkiv (WAD/TAD)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="281"/>
<source>File Name</source> <source>File Name</source>
<translation>Filnavn</translation> <translation>Filnavn</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="306"/>
<source>Keep encrypted contents</source> <source>Keep encrypted contents</source>
<translation>Oppbevar kryptert innhold</translation> <translation>Oppbevar kryptert innhold</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="333"/>
<source>Create decrypted contents (*.app)</source> <source>Create decrypted contents (*.app)</source>
<translation>Opprette dekryptert innold (*.app)</translation> <translation>Opprette dekryptert innold (*.app)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="363"/>
<source>Use local files, if they exist</source> <source>Use local files, if they exist</source>
<translation>Bruk lokale filer, hvis de finnes</translation> <translation>Bruk lokale filer, hvis de finnes</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="396"/>
<source>Use the Wii U NUS (faster, only effects Wii/vWii)</source> <source>Use the Wii U NUS (faster, only effects Wii/vWii)</source>
<translation>Bruk Wii U NUS (raskere, påvirker bare Wii/vWii)</translation> <translation>Bruk Wii U NUS (raskere, påvirker bare Wii/vWii)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="480"/>
<source>vWii Title Settings</source> <source>vWii Title Settings</source>
<translation>vWii Tittelinstillinger</translation> <translation>vWii Tittelinstillinger</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="508"/>
<source>Re-encrypt title using the Wii Common Key</source> <source>Re-encrypt title using the Wii Common Key</source>
<translation>Krypter tittelen nytt ved hjelp av Wii Common Key</translation> <translation>Krypter tittelen nytt ved hjelp av Wii Common Key</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="562"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt; <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt; &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
@ -92,6 +112,7 @@ p, li { white-space: pre-wrap; }
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> &lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="84"/>
<source>NUSGet v{nusget_version} <source>NUSGet v{nusget_version}
Developed by NinjaCheetah Developed by NinjaCheetah
Powered by libWiiPy {libwiipy_version} Powered by libWiiPy {libwiipy_version}
@ -114,64 +135,115 @@ Titler merket med en hake er fri og har en billett tilgjengelig, og kan dekrypte
Titler er lastes ned til en mappe med navnet &quot;NUSGet&quot; i nedlastingsmappen din.</translation> Titler er lastes ned til en mappe med navnet &quot;NUSGet&quot; i nedlastingsmappen din.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="277"/>
<source>Invalid Title ID</source> <source>Invalid Title ID</source>
<translation>Ugyldig Tittel ID</translation> <translation>Ugyldig Tittel ID</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="278"/>
<source>The Title ID you have entered is not in a valid format!</source> <source>The Title ID you have entered is not in a valid format!</source>
<translation>Tittel IDen du har angitt er ikke i et gyldig format!</translation> <translation>Tittel IDen du har angitt er ikke i et gyldig format!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="280"/>
<source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source> <source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source>
<translation>Tittel IDer være 16-sifrede tall og bokstav strenger. Vennligst skriv inn en korrekt formatert Tittel ID, eller velg en fra menyen til venstre.</translation> <translation>Tittel IDer være 16-sifrede tall og bokstav strenger. Vennligst skriv inn en korrekt formatert Tittel ID, eller velg en fra menyen til venstre.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="282"/>
<source>Title ID/Version Not Found</source> <source>Title ID/Version Not Found</source>
<translation>Tittel ID/Versjon Ikke Funnet</translation> <translation>Tittel ID/Versjon Ikke Funnet</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="283"/>
<source>No title with the provided Title ID or version could be found!</source> <source>No title with the provided Title ID or version could be found!</source>
<translation>Ingen tittel med oppgitt Tittel ID eller versjon ble funnet!</translation> <translation>Ingen tittel med oppgitt Tittel ID eller versjon ble funnet!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="285"/>
<source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source> <source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source>
<translation>Vennligst kontroller at du har oppgitt en gyldig Tittel ID, eller valgt en fra titteldatabasen, og at den angitte versjonen finnes for tittelen du forsøker å laste ned.</translation> <translation>Vennligst kontroller at du har oppgitt en gyldig Tittel ID, eller valgt en fra titteldatabasen, og at den angitte versjonen finnes for tittelen du forsøker å laste ned.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="287"/>
<source>Content Decryption Failed</source> <source>Content Decryption Failed</source>
<translation>Dekryptering av Innhold Mislyktes</translation> <translation>Dekryptering av Innhold Mislyktes</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="288"/>
<source>Content decryption was not successful! Decrypted contents could not be created.</source> <source>Content decryption was not successful! Decrypted contents could not be created.</source>
<translation>Dekryptering av innhold var ikke vellykket! Dekryptert innhold kunne ikke opprettes.</translation> <translation>Dekryptering av innhold var ikke vellykket! Dekryptert innhold kunne ikke opprettes.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="291"/>
<source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source> <source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source>
<translation>TMDen eller Billetten kan være skadet, eller det kan hende at de ikke samsvarer med innholdet some dekrypteres. Hvis du har krysset av for &quot;Bruk lokale filer, hvis de finnes&quot;, kan du prøve å deaktivere dette alternativet før du prøver nedlastingen nytt for å løse eventuelle problemer med lokale data.</translation> <translation>TMDen eller Billetten kan være skadet, eller det kan hende at de ikke samsvarer med innholdet some dekrypteres. Hvis du har krysset av for &quot;Bruk lokale filer, hvis de finnes&quot;, kan du prøve å deaktivere dette alternativet før du prøver nedlastingen nytt for å løse eventuelle problemer med lokale data.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="294"/>
<source>Ticket Not Available</source> <source>Ticket Not Available</source>
<translation>Billett Ikke Tilgjengelig</translation> <translation>Billett Ikke Tilgjengelig</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="295"/>
<source>No Ticket is Available for the Requested Title!</source> <source>No Ticket is Available for the Requested Title!</source>
<translation>Ingen billett er tilgjengelig for den forespurte tittelen!</translation> <translation>Ingen billett er tilgjengelig for den forespurte tittelen!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="298"/>
<source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source> <source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source>
<translation>En billett kunne ikke lastes ned for den forespurte tittelen, men du har valgt &quot;Pakk installerbart arkiv&quot; eller &quot;Opprett dekryptert innhold&quot;. Disse alternativene er ikke tilgjenelige for titler uten billett. Bare kryptert innhold har blitt lagret.</translation> <translation>En billett kunne ikke lastes ned for den forespurte tittelen, men du har valgt &quot;Pakk installerbart arkiv&quot; eller &quot;Opprett dekryptert innhold&quot;. Disse alternativene er ikke tilgjenelige for titler uten billett. Bare kryptert innhold har blitt lagret.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="300"/>
<source>Unknown Error</source> <source>Unknown Error</source>
<translation>Ukjent Feil</translation> <translation>Ukjent Feil</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="301"/>
<source>An Unknown Error has Occurred!</source> <source>An Unknown Error has Occurred!</source>
<translation>En ukjent feil har oppstått!</translation> <translation>En ukjent feil har oppstått!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="303"/>
<source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source> <source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source>
<translation>Vennligst prøv igjen. Hvis dette problemet vedvarer, åpne et nytt issue GitHub med detaljer om hva du prøvde å gjøre da denne feilen oppstod.</translation> <translation>Vennligst prøv igjen. Hvis dette problemet vedvarer, åpne et nytt issue GitHub med detaljer om hva du prøvde å gjøre da denne feilen oppstod.</translation>
</message> </message>
<message>
<location filename="../../qt/ui/MainMenu.ui" line="429"/>
<source>Apply patches to IOS (Applies to WADs only)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="175"/>
<source>NUSGet Update Available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="176"/>
<source>There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="11"/>
<source>
Could not check for updates.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="19"/>
<source>
There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="21"/>
<source>
You&apos;re running the latest release of NUSGet.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
</TS> </TS>

View File

@ -4,82 +4,102 @@
<context> <context>
<name>MainWindow</name> <name>MainWindow</name>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="26"/>
<source>MainWindow</source> <source>MainWindow</source>
<translation>MainWindow</translation> <translation>MainWindow</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="41"/>
<source>Available Titles</source> <source>Available Titles</source>
<translation>Tilgjengelige Titler</translation> <translation>Tilgjengelige Titler</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="70"/>
<source>Wii</source> <source>Wii</source>
<translation>Wii</translation> <translation>Wii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="101"/>
<source>vWii</source> <source>vWii</source>
<translation>vWii</translation> <translation>vWii</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="132"/>
<source>DSi</source> <source>DSi</source>
<translation>DSi</translation> <translation>DSi</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="172"/>
<source>Title ID</source> <source>Title ID</source>
<translation>Tittel ID</translation> <translation>Tittel ID</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="179"/>
<source>v</source> <source>v</source>
<translation>v</translation> <translation>v</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="192"/>
<source>Version</source> <source>Version</source>
<translation>Versjon</translation> <translation>Versjon</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="199"/>
<source>Console:</source> <source>Console:</source>
<translation>Konsoll:</translation> <translation>Konsoll:</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="227"/>
<source>Start Download</source> <source>Start Download</source>
<translation>Start Nedlasting</translation> <translation>Start Nedlasting</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="244"/>
<source>General Settings</source> <source>General Settings</source>
<translation>Generelle Instillinger</translation> <translation>Generelle Instillinger</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="266"/>
<source>Pack installable archive (WAD/TAD)</source> <source>Pack installable archive (WAD/TAD)</source>
<translation>Pakke installerbart arkiv (WAD/TAD)</translation> <translation>Pakke installerbart arkiv (WAD/TAD)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="281"/>
<source>File Name</source> <source>File Name</source>
<translation>Filnavn</translation> <translation>Filnavn</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="306"/>
<source>Keep encrypted contents</source> <source>Keep encrypted contents</source>
<translation>Oppbevar kryptert innhold</translation> <translation>Oppbevar kryptert innhold</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="333"/>
<source>Create decrypted contents (*.app)</source> <source>Create decrypted contents (*.app)</source>
<translation>Opprette dekryptert innold (*.app)</translation> <translation>Opprette dekryptert innold (*.app)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="363"/>
<source>Use local files, if they exist</source> <source>Use local files, if they exist</source>
<translation>Bruk lokale filer, hvis de finnes</translation> <translation>Bruk lokale filer, hvis de finnes</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="396"/>
<source>Use the Wii U NUS (faster, only effects Wii/vWii)</source> <source>Use the Wii U NUS (faster, only effects Wii/vWii)</source>
<translation>Bruk Wii U NUS (raskere, påvirker bare Wii/vWii)</translation> <translation>Bruk Wii U NUS (raskere, påvirker bare Wii/vWii)</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="480"/>
<source>vWii Title Settings</source> <source>vWii Title Settings</source>
<translation>vWii Tittelinstillinger</translation> <translation>vWii Tittelinstillinger</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="508"/>
<source>Re-encrypt title using the Wii Common Key</source> <source>Re-encrypt title using the Wii Common Key</source>
<translation>Krypter tittelen nytt ved hjelp av Wii Common Key</translation> <translation>Krypter tittelen nytt ved hjelp av Wii Common Key</translation>
</message> </message>
<message> <message>
<location filename="../../qt/ui/MainMenu.ui" line="562"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt; <source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt; &lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; } p, li { white-space: pre-wrap; }
@ -92,6 +112,7 @@ p, li { white-space: pre-wrap; }
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> &lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="84"/>
<source>NUSGet v{nusget_version} <source>NUSGet v{nusget_version}
Developed by NinjaCheetah Developed by NinjaCheetah
Powered by libWiiPy {libwiipy_version} Powered by libWiiPy {libwiipy_version}
@ -114,64 +135,115 @@ Titler merket med en hake er fri og har en billett tilgjengelig, og kan dekrypte
Titler er lastes ned til en mappe med navnet &quot;NUSGet&quot; i nedlastingsmappen din.</translation> Titler er lastes ned til en mappe med navnet &quot;NUSGet&quot; i nedlastingsmappen din.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="277"/>
<source>Invalid Title ID</source> <source>Invalid Title ID</source>
<translation>Ugyldig Tittel ID</translation> <translation>Ugyldig Tittel ID</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="278"/>
<source>The Title ID you have entered is not in a valid format!</source> <source>The Title ID you have entered is not in a valid format!</source>
<translation>Tittel IDen du har angitt er ikke i et gyldig format!</translation> <translation>Tittel IDen du har angitt er ikke i et gyldig format!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="280"/>
<source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source> <source>Title IDs must be 16 digit strings of numbers and letters. Please enter a correctly formatted Title ID, or select one from the menu on the left.</source>
<translation>Tittel IDer være 16-sifrede tall og bokstav strenger. Vennligst skriv inn en korrekt formatert Tittel ID, eller velg en fra menyen til venstre.</translation> <translation>Tittel IDer være 16-sifrede tall og bokstav strenger. Vennligst skriv inn en korrekt formatert Tittel ID, eller velg en fra menyen til venstre.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="282"/>
<source>Title ID/Version Not Found</source> <source>Title ID/Version Not Found</source>
<translation>Tittel ID/Versjon Ikke Funnet</translation> <translation>Tittel ID/Versjon Ikke Funnet</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="283"/>
<source>No title with the provided Title ID or version could be found!</source> <source>No title with the provided Title ID or version could be found!</source>
<translation>Ingen tittel med oppgitt Tittel ID eller versjon ble funnet!</translation> <translation>Ingen tittel med oppgitt Tittel ID eller versjon ble funnet!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="285"/>
<source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source> <source>Please make sure that you have entered a valid Title ID, or selected one from the title database, and that the provided version exists for the title you are attempting to download.</source>
<translation>Vennligst kontroller at du har oppgitt en gyldig Tittel ID, eller valgt en fra titteldatabasen, og at den angitte versjonen finnes for tittelen du forsøker å laste ned.</translation> <translation>Vennligst kontroller at du har oppgitt en gyldig Tittel ID, eller valgt en fra titteldatabasen, og at den angitte versjonen finnes for tittelen du forsøker å laste ned.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="287"/>
<source>Content Decryption Failed</source> <source>Content Decryption Failed</source>
<translation>Dekryptering av Innhold Mislyktes</translation> <translation>Dekryptering av Innhold Mislyktes</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="288"/>
<source>Content decryption was not successful! Decrypted contents could not be created.</source> <source>Content decryption was not successful! Decrypted contents could not be created.</source>
<translation>Dekryptering av innhold var ikke vellykket! Dekryptert innhold kunne ikke opprettes.</translation> <translation>Dekryptering av innhold var ikke vellykket! Dekryptert innhold kunne ikke opprettes.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="291"/>
<source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source> <source>Your TMD or Ticket may be damaged, or they may not correspond with the content being decrypted. If you have checked &quot;Use local files, if they exist&quot;, try disabling that option before trying the download again to fix potential issues with local data.</source>
<translation>TMDen eller Billetten kan være skadet, eller det kan hende at de ikke samsvarer med innholdet some dekrypteres. Hvis du har krysset av for &quot;Bruk lokale filer, hvis de finnes&quot;, kan du prøve å deaktivere dette alternativet før du prøver nedlastingen nytt for å løse eventuelle problemer med lokale data.</translation> <translation>TMDen eller Billetten kan være skadet, eller det kan hende at de ikke samsvarer med innholdet some dekrypteres. Hvis du har krysset av for &quot;Bruk lokale filer, hvis de finnes&quot;, kan du prøve å deaktivere dette alternativet før du prøver nedlastingen nytt for å løse eventuelle problemer med lokale data.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="294"/>
<source>Ticket Not Available</source> <source>Ticket Not Available</source>
<translation>Billett Ikke Tilgjengelig</translation> <translation>Billett Ikke Tilgjengelig</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="295"/>
<source>No Ticket is Available for the Requested Title!</source> <source>No Ticket is Available for the Requested Title!</source>
<translation>Ingen billett er tilgjengelig for den forespurte tittelen!</translation> <translation>Ingen billett er tilgjengelig for den forespurte tittelen!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="298"/>
<source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source> <source>A ticket could not be downloaded for the requested title, but you have selected &quot;Pack installable archive&quot; or &quot;Create decrypted contents&quot;. These options are not available for titles without a ticket. Only encrypted contents have been saved.</source>
<translation>En billett kunne ikke lastes ned for den forespurte tittelen, men du har valgt &quot;Pakk installerbart arkiv&quot; eller &quot;Opprett dekryptert innhold&quot;. Disse alternativene er ikke tilgjenelige for titler uten billett. Bare kryptert innhold har blitt lagret.</translation> <translation>En billett kunne ikke lastes ned for den forespurte tittelen, men du har valgt &quot;Pakk installerbart arkiv&quot; eller &quot;Opprett dekryptert innhold&quot;. Disse alternativene er ikke tilgjenelige for titler uten billett. Bare kryptert innhold har blitt lagret.</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="300"/>
<source>Unknown Error</source> <source>Unknown Error</source>
<translation>Ukjent Feil</translation> <translation>Ukjent Feil</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="301"/>
<source>An Unknown Error has Occurred!</source> <source>An Unknown Error has Occurred!</source>
<translation>En ukjent feil har oppstått!</translation> <translation>En ukjent feil har oppstått!</translation>
</message> </message>
<message> <message>
<location filename="../../NUSGet.py" line="303"/>
<source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source> <source>Please try again. If this issue persists, please open a new issue on GitHub detailing what you were trying to do when this error occurred.</source>
<translation>Vennligst prøv igjen. Hvis dette problemet vedvarer, åpne et nytt issue GitHub med detaljer om hva du prøvde å gjøre da denne feilen oppstod.</translation> <translation>Vennligst prøv igjen. Hvis dette problemet vedvarer, åpne et nytt issue GitHub med detaljer om hva du prøvde å gjøre da denne feilen oppstod.</translation>
</message> </message>
<message>
<location filename="../../qt/ui/MainMenu.ui" line="429"/>
<source>Apply patches to IOS (Applies to WADs only)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="175"/>
<source>NUSGet Update Available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../NUSGet.py" line="176"/>
<source>There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="11"/>
<source>
Could not check for updates.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="19"/>
<source>
There&apos;s a newer version of NUSGet available!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../modules/core.py" line="21"/>
<source>
You&apos;re running the latest release of NUSGet.</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
</TS> </TS>

30
update_translations.py Normal file
View File

@ -0,0 +1,30 @@
# "update_translations.py", licensed under the MIT license
# Copyright 2024 NinjaCheetah
# This script exists to work around an issue in PySide6 where the "pyside6-project lupdate" command doesn't work as
# expected, as it struggles to parse the paths in the .pyproject file. This does what it's meant to do for it.
import json
import pathlib
import subprocess
LUPDATE_CMD = "pyside6-lupdate"
pyproject_file = pathlib.Path("NUSGet.pyproject")
pyproject = json.load(open(pyproject_file, "r"))
files = []
for key in pyproject["files"]:
files.append(pathlib.Path(key))
source_files = []
ts_files = []
for file in files:
if file.suffix == ".ts":
ts_files.append(file)
elif file.suffix == ".py" or file.suffix == ".ui":
source_files.append(file)
for target in ts_files:
cmd = [LUPDATE_CMD] + [s for s in source_files] + ["-ts"]
cmd.append(target)
subprocess.run(cmd, cwd=str(pyproject_file.parent))