summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Changelog41
-rwxr-xr-xcoin/create_ifw_installer.py2
-rw-r--r--coin/instructions/common_environment.yaml5
-rw-r--r--coin/instructions/make_instructions.yaml80
-rw-r--r--coin/instructions/qmake_module_build.yaml10
-rw-r--r--coin/qt-installer-package-config.json8
-rw-r--r--doc/installerfw-using.qdoc9
-rw-r--r--src/libs/installer/packagemanagercore.cpp8
-rw-r--r--src/libs/installer/packagemanagercore.h1
-rw-r--r--src/sdk/translations/ifw_ar.ts2740
-rw-r--r--src/sdk/translations/ifw_de.ts83
11 files changed, 2949 insertions, 38 deletions
diff --git a/Changelog b/Changelog
index 34f637320..85c43e235 100644
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,44 @@
+4.1.0
+- Emit signal when components are recalculated (QTIFW-2172)
+- Add Arabic translation (QTIFW-1425)
+- Update side widget with the binary marker changes in introduction page (QTIFW-2150)
+- Fix App Error when trying to launch a running installer (QTIFW-2149)
+- Fix value overwrite from command line (QTIFW-2021)
+- Fix DesktopDir value for AllUsers
+- CLI: Add warning when cli-only options are used without command keyword (QTIFW-2046)
+- Translations: Update existing TS files (QTIFW-2126)
+- Add possibility to move component in component tree (QTIFW-594)
+- Try rerunning execute operation (QTIFW-2125)
+- CLI: Exit when expecting user input and the output device is not a TTY (QTIFW-1949)
+- Add support for setting minimum wizard dimensions in config.xml (QTIFW-1903)
+- Save Execute operation with predefined variable (QTIFW-2124)
+- Make LicenseAgreementPage license list & details browser user-resizable (QTIFW-1987)
+- Fix wizard page addition before ComponentSelectionPage (QTIFW-1168)
+- Remove double calculation of uninstall components (QTIFW-1021)
+- Replace usage of derived LazyPlainTextEdit class with QTextEdit (QTIFW-1994)
+- Fix InstallIcons and CreateDesktopEntry operations usage as root (QTIFW-2093)
+- Add support for generating offline installer from online (QTIFW-1945)
+- Provide tooltip texts for buttons (QTIFW-2073)
+- Allow disabling undo in CreateLocalRepository operation during uninstall (QTIFW-2094)
+- Remove 'Reject Licenses' radio button and change 'Accept Licenses' to checkbox (QTIFW-2057)
+- Add highdpi support for watermark, banner, background and pagelistpixmaps (QTIFW-2084)
+- Fix translating from component script (QTIFW-392)
+- Allow disabling undo in RegisterFileType operation during uninstall (QTIFW-2089)
+- Allow disabling undo in SimpleMoveFile operation during uninstall (2090)
+- Allow disabling undo in CopyDirectory during uninstall (QTIFW-2088)
+- Allow disabling undo of GlobalSettings during uninstall (QTIFW-1973)
+- Introduce ForcedUpdate element for component (QTIFW-1565)
+- Add high dpi image support for Logo and ProductImages (QTIFW-2061, QTIFW-2060)
+- Copy highdpi images as resource to installer (QTIFW-2080)
+- Tools: fix binarycreator usage with unified meta-only repositories (QTIFW-2051)
+- Add option to define operations in component.xml (QTIFW-507)
+- Print package information in xml format (QTIFW-1950)
+- Arrange licenses and filter duplicates
+- CLI: Print extra archive information with higher verbosity level (QTIFW-1998)
+- Allow to set ForcedInstallation from component script (QTIFW-675)
+- Automatically uninstall unneeded virtual components (QTBUG-76210)
+- CLI: Add possibility to filter installed packages with regexp (QTIFW-1953)
+
4.0.1
- Enable HighDPI support in X11
- Fix AppendFile undo (QTIFW-2020)
diff --git a/coin/create_ifw_installer.py b/coin/create_ifw_installer.py
index aacb6adeb..6da4f1d16 100755
--- a/coin/create_ifw_installer.py
+++ b/coin/create_ifw_installer.py
@@ -76,7 +76,7 @@ def create_installer_package(src_dir: str, bld_dir: str, target_dir: str, target
check_call(["strip", os.path.join(package_dir, 'bin/repogen')])
# Copy remaining payload to package dir
- shutil.copytree(os.path.join(bld_dir, 'doc'), os.path.join(package_dir, 'doc'))
+ shutil.copytree(os.path.join(bld_dir, 'doc/html'), os.path.join(package_dir, 'doc/html'))
shutil.copytree(os.path.join(src_dir, 'examples'), os.path.join(package_dir, 'examples'))
shutil.copy(os.path.join(src_dir, 'README'), package_dir)
diff --git a/coin/instructions/common_environment.yaml b/coin/instructions/common_environment.yaml
index 4bef13a71..c3fd59f15 100644
--- a/coin/instructions/common_environment.yaml
+++ b/coin/instructions/common_environment.yaml
@@ -62,3 +62,8 @@ instructions:
condition: property
property: host.os
equals_value: Linux
+ - type: Group
+ instructions:
+ - type: EnvironmentVariable
+ variableName: PACKAGING_KEYS_CONFIG_URL
+ variableValue: "http://ci-files01-hki.intra.qt.io/input/semisecure/packaging/packaging_secure.ini"
diff --git a/coin/instructions/make_instructions.yaml b/coin/instructions/make_instructions.yaml
index f9f1dd406..003e9d746 100644
--- a/coin/instructions/make_instructions.yaml
+++ b/coin/instructions/make_instructions.yaml
@@ -81,8 +81,77 @@ instructions:
property: target.compiler
in_values: [MSVC2013, MSVC2015, MSVC2017, MSVC2019]
+ - type: Group
+ instructions:
+ - type: ChangeDirectory
+ directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
+ - type: ExecuteCommand
+ command: "python3 {{.SourceDir}}/coin/create_ifw_installer.py --src-dir {{.SourceDir}} --bld-dir {{.SourceDir}} --target-dir {{.SourceDir}} --target-name QtInstallerFramework-linux-x64-4.1.0.run"
+ maxTimeInSeconds: 36000
+ maxTimeBetweenOutput: 3600
+ userMessageOnFailure: "Failed to create ifw installer."
+ - type: Rename
+ sourcePath: "{{.SourceDir}}/QtInstallerFramework-linux-x64-4.1.0.run"
+ targetPath: "{{.InstallRoot}}/{{.AgentWorkingDir}}/QtInstallerFramework-linux-x64-4.1.0.run"
+ userMessageOnFailure: "Failed to copy installer."
+ enable_if:
+ condition: and
+ conditions:
+ - condition: property
+ property: host.os
+ equals_value: Linux
+
+ - type: Group
+ instructions:
+ - type: ChangeDirectory
+ directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
+ - type: ExecuteCommand
+ command: "python3 {{.SourceDir}}/coin/create_ifw_installer.py --src-dir {{.SourceDir}} --bld-dir {{.SourceDir}} --target-dir {{.SourceDir}} --target-name QtInstallerFramework-macOS-x86_64-4.1.0.app"
+ maxTimeInSeconds: 36000
+ maxTimeBetweenOutput: 3600
+ userMessageOnFailure: "Failed to create ifw installer."
+ - type: EnvironmentVariable
+ variableName: QT_CODESIGN_IDENTITY_KEY
+ variableValue: "A5GTH44LYL"
+ - type: ExecuteCommand
+ command: "{{.AgentWorkingDir}}/qtsdk/qtsdk/packaging-tools/sign_installer.py mac --file={{.SourceDir}}/QtInstallerFramework-macOS-x86_64-4.1.0.app"
+ maxTimeInSeconds: 36000
+ maxTimeBetweenOutput: 3600
+ userMessageOnFailure: "Failed to sign the ifw installer"
+ - type: ExecuteCommand
+ command: "{{.AgentWorkingDir}}/qtsdk/qtsdk/packaging-tools/notarize.py --dmg={{.SourceDir}}/QtInstallerFramework-macOS-x86_64-4.1.0.dmg"
+ maxTimeInSeconds: 36000
+ maxTimeBetweenOutput: 3600
+ userMessageOnFailure: "Failed to notarize the ifw installer"
+ - type: Rename
+ sourcePath: "{{.SourceDir}}/QtInstallerFramework-macOS-x86_64-4.1.0.dmg"
+ targetPath: "{{.InstallRoot}}/{{.AgentWorkingDir}}/QtInstallerFramework-macOS-x86_64-4.1.0.dmg"
+ userMessageOnFailure: "Failed to copy installer."
+ enable_if:
+ condition: and
+ conditions:
+ - condition: property
+ property: host.os
+ equals_value: MacOS
+
+ - type: Group
+ instructions:
+ - type: ChangeDirectory
+ directory: "{{.SourceDir}}"
+ - type: ExecuteCommand
+ command: "{{.Env.PYTHON3_PATH}}\\python {{.SourceDir}}\\coin\\create_ifw_installer.py --src-dir {{.SourceDir}} --bld-dir {{.SourceDir}} --target-dir C:\\{{.SourceDir}} --target-name QtInstallerFramework-windows-x86-4.1.0"
+ maxTimeInSeconds: 1200
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: "Failed to create ifw installer."
+ enable_if:
+ condition: and
+ conditions:
+ - condition: property
+ property: host.os
+ equals_value: Windows
+
- type: SignPackage
- directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
+ directory: "{{.SourceDir}}"
maxTimeInSeconds: 1200
maxTimeBetweenOutput: 1200
enable_if:
@@ -90,6 +159,15 @@ instructions:
property: host.os
equals_value: Windows
+ - type: Rename
+ sourcePath: "{{.SourceDir}}/QtInstallerFramework-windows-x86-4.1.0.exe"
+ targetPath: "{{.InstallRoot}}/{{.AgentWorkingDir}}/QtInstallerFramework-windows-x86-4.1.0.exe"
+ userMessageOnFailure: "Failed to copy installer."
+ enable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+
- type: UploadArtifact
archiveDirectory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
transferType: UploadModuleBuildArtifact
diff --git a/coin/instructions/qmake_module_build.yaml b/coin/instructions/qmake_module_build.yaml
index 120a7745f..37ff0f396 100644
--- a/coin/instructions/qmake_module_build.yaml
+++ b/coin/instructions/qmake_module_build.yaml
@@ -3,6 +3,16 @@ instructions:
- type: MakeDirectory
directory: ".git"
+ - type: Group
+ instructions:
+ - type: InstallSourceArchive
+ maxTimeInSeconds: 600
+ maxTimeBetweenOutput: 600
+ project: qtsdk/qtsdk
+ ref: master
+ directory: qtsdk/qtsdk
+ userMessageOnFailure: "Could not install qtsdk/qtsdk source archive. Please investigate why."
+
- type: SetBuildDirectory
directory: "{{.SourceDir}}"
disable_if:
diff --git a/coin/qt-installer-package-config.json b/coin/qt-installer-package-config.json
new file mode 100644
index 000000000..563110519
--- /dev/null
+++ b/coin/qt-installer-package-config.json
@@ -0,0 +1,8 @@
+{
+ "version": "1",
+ "module-split": {
+ "__extract__": [
+ "**/*QtInstallerFramework-*"
+ ]
+ }
+}
diff --git a/doc/installerfw-using.qdoc b/doc/installerfw-using.qdoc
index 8786cd005..f0205755f 100644
--- a/doc/installerfw-using.qdoc
+++ b/doc/installerfw-using.qdoc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2020 The Qt Company Ltd.
+** Copyright (C) 2021 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Installer Framework.
@@ -484,7 +484,7 @@
beforehand with appropriate options:
\code
- installer.exe --root "C:\MyInstallation" --accept-licenses --default-answer install componentA
+ installer.exe --root "C:\MyInstallation" --accept-licenses --default-answer --confirm-command install componentA
\endcode
In this example, \c --accept-licenses is used to automatically accept all license agreements
@@ -494,4 +494,9 @@
queries, for example to confirm overwriting of an existing directory, you could use
\c {--auto-answer OverwriteTargetDirectory=Yes}. Automatic answers are shown on the
console output and installation log.
+
+ By default, the installer and maintenance tool will print a summary of components to be
+ affected by the command and then ask for permission to continue performing the action,
+ to prevent accidental changes. For unattended usage, this can be skipped by using the
+ \c --confirm-command option.
*/
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp
index e03179ebb..c512c23b5 100644
--- a/src/libs/installer/packagemanagercore.cpp
+++ b/src/libs/installer/packagemanagercore.cpp
@@ -428,6 +428,13 @@ using namespace QInstaller;
Emitted when installer binary marker \a magicMarker has changed.
*/
+/*!
+ \fn QInstaller::PackageManagerCore::componentsRecalculated()
+
+ Emitted when the component tree is recalculated. In a graphical interface,
+ this signal is emitted also after the categories are fetched.
+*/
+
Q_GLOBAL_STATIC(QMutex, globalModelMutex);
static QFont *sVirtualComponentsFont = nullptr;
Q_GLOBAL_STATIC(QMutex, globalVirtualComponentsFontMutex);
@@ -1576,6 +1583,7 @@ bool PackageManagerCore::fetchPackagesTree(const PackagesList &packages, const L
if (success && !d->statusCanceledOrFailed())
d->setStatus(Success);
+ emit componentsRecalculated();
return success;
}
diff --git a/src/libs/installer/packagemanagercore.h b/src/libs/installer/packagemanagercore.h
index a5554782d..750c03b15 100644
--- a/src/libs/installer/packagemanagercore.h
+++ b/src/libs/installer/packagemanagercore.h
@@ -393,6 +393,7 @@ Q_SIGNALS:
void guiObjectChanged(QObject *gui);
void unstableComponentFound(const QString &type, const QString &errorMessage, const QString &component);
void installerBinaryMarkerChanged(qint64 magicMarker);
+ void componentsRecalculated();
private:
struct Data {
diff --git a/src/sdk/translations/ifw_ar.ts b/src/sdk/translations/ifw_ar.ts
new file mode 100644
index 000000000..df8b6ffc2
--- /dev/null
+++ b/src/sdk/translations/ifw_ar.ts
@@ -0,0 +1,2740 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ar">
+<context>
+ <name>QInstaller::ProxyCredentialsDialog</name>
+ <message>
+ <source>Dialog</source>
+ <translation>نافذة الحوار</translation>
+ </message>
+ <message>
+ <source>The proxy %1 requires a username and password.</source>
+ <translation>الوكيل %1 بتطلب اسم مستخدم وكلمة مرور.</translation>
+ </message>
+ <message>
+ <source>Username:</source>
+ <translation>اسم المستخدم:</translation>
+ </message>
+ <message>
+ <source>Username</source>
+ <translation>اسم المستخدم</translation>
+ </message>
+ <message>
+ <source>Password:</source>
+ <translation>كلمة المرور:</translation>
+ </message>
+ <message>
+ <source>Password</source>
+ <translation>كلمة المرور</translation>
+ </message>
+ <message>
+ <source>Proxy Credentials</source>
+ <translation>اعتماديات الوكيل</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ServerAuthenticationDialog</name>
+ <message>
+ <source>Server Requires Authentication</source>
+ <translation>يحتاج الخادم إلى مصادقة</translation>
+ </message>
+ <message>
+ <source>You need to supply a username and password to access this site.</source>
+ <translation>يجب أن تدخل اسم مستخدم وكلمة مرور للوصول إلى هذا الموقع.</translation>
+ </message>
+ <message>
+ <source>Username:</source>
+ <translation>اسم المستخدم:</translation>
+ </message>
+ <message>
+ <source>Password:</source>
+ <translation>كلمة المرور:</translation>
+ </message>
+ <message>
+ <source>%1 at %2</source>
+ <translation>%1 في %2</translation>
+ </message>
+</context>
+<context>
+ <name>Dialog</name>
+ <message>
+ <source>Http authentication required</source>
+ <translation>مصادقة Http مطلوبة</translation>
+ </message>
+ <message>
+ <source>You need to supply a Username and Password to access this site.</source>
+ <translation>تحتاج إلى اسم مستخدم وكلمة مرور للوصول إلى هذا الموقع.</translation>
+ </message>
+ <message>
+ <source>Username:</source>
+ <translation>اسم المستخدم:</translation>
+ </message>
+ <message>
+ <source>Password:</source>
+ <translation>كلمة المرور:</translation>
+ </message>
+ <message>
+ <source>%1 at %2</source>
+ <translation>%1 في %2</translation>
+ </message>
+</context>
+<context>
+ <name>SettingsDialog</name>
+ <message>
+ <source>Settings</source>
+ <translation>الإعدادات</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation>الشبكة</translation>
+ </message>
+ <message>
+ <source>No proxy</source>
+ <translation>لا وكيل</translation>
+ </message>
+ <message>
+ <source>System proxy settings</source>
+ <translation>إعدادات وكيل النظام</translation>
+ </message>
+ <message>
+ <source>Manual proxy configuration</source>
+ <translation>إعدادات الوكيل اليدوية</translation>
+ </message>
+ <message>
+ <source>HTTP proxy:</source>
+ <translation>وكيل HTTP:</translation>
+ </message>
+ <message>
+ <source>Port:</source>
+ <translation>المنفذ:</translation>
+ </message>
+ <message>
+ <source>FTP proxy:</source>
+ <translation>وكيل FTP:</translation>
+ </message>
+ <message>
+ <source>Repositories</source>
+ <translation>المستودعات</translation>
+ </message>
+ <message>
+ <source>Add Username and Password for authentication if needed.</source>
+ <translation>أضف اسم المستخدم وكلمة المرور للمصادقة إذا لزم الأمر.</translation>
+ </message>
+ <message>
+ <source>Use temporary repositories only</source>
+ <translation>استخدم المستودعات المؤقتة فقط</translation>
+ </message>
+ <message>
+ <source>Add</source>
+ <translation>أضف</translation>
+ </message>
+ <message>
+ <source>Remove</source>
+ <translation>احذف</translation>
+ </message>
+ <message>
+ <source>Test</source>
+ <translation>اختبر</translation>
+ </message>
+ <message>
+ <source>Select All</source>
+ <translation>حدّد الكل</translation>
+ </message>
+ <message>
+ <source>Deselect All</source>
+ <translation>ألغِ تحديد الكل</translation>
+ </message>
+ <message>
+ <source>Show Passwords</source>
+ <translation>أظهر كلمات المرور</translation>
+ </message>
+ <message>
+ <source>Check this to use repository during fetch.</source>
+ <translation>حدّد هذا لاستخدام المستودع أثناء جلب البيانات.</translation>
+ </message>
+ <message>
+ <source>Add the username to authenticate on the server.</source>
+ <translation>أضف اسم المستخدم للمصادقة على الخادم.</translation>
+ </message>
+ <message>
+ <source>Add the password to authenticate on the server.</source>
+ <translation>أضف اسم كلمة المرور للمصادقة على الخادم.</translation>
+ </message>
+ <message>
+ <source>The servers URL that contains a valid repository.</source>
+ <translation>رابط الخادم المحتوي على مستوع صالح.</translation>
+ </message>
+ <message>
+ <source>An error occurred while testing this repository.</source>
+ <translation>حدث خطأ أثناء اختبار هذا المستودع.</translation>
+ </message>
+ <message>
+ <source>The repository was tested successfully.</source>
+ <translation>اختُبر المستودع بنجاح.</translation>
+ </message>
+ <message>
+ <source>Do you want to disable the repository?</source>
+ <translation>هل تريط تعطيل هذا المستودع؟</translation>
+ </message>
+ <message>
+ <source>Do you want to enable the repository?</source>
+ <translation>هل تريد تمكين هذا المستودع؟</translation>
+ </message>
+ <message>
+ <source>Hide Passwords</source>
+ <translation>أخف كلمات المرور</translation>
+ </message>
+ <message>
+ <source>Use</source>
+ <translation>استخدم</translation>
+ </message>
+ <message>
+ <source>Username</source>
+ <translation>اسم المستخدم</translation>
+ </message>
+ <message>
+ <source>Password</source>
+ <translation>كلمة المرور</translation>
+ </message>
+ <message>
+ <source>Repository</source>
+ <translation>المستودع</translation>
+ </message>
+ <message>
+ <source>Default repositories</source>
+ <translation>المستودعات الافتراضية</translation>
+ </message>
+ <message>
+ <source>Temporary repositories</source>
+ <translation>المستودعات المؤقتة</translation>
+ </message>
+ <message>
+ <source>User defined repositories</source>
+ <translation>المستودعات المعرفة من قبل المستخدم</translation>
+ </message>
+</context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Authorization required</source>
+ <translation>المصادقة مطلوبة</translation>
+ </message>
+ <message>
+ <source>Enter your password to authorize for sudo:</source>
+ <translation>أدخل كلمة مرورك لمصادقة sudo:</translation>
+ </message>
+ <message>
+ <source>Error acquiring admin rights</source>
+ <translation>فشل الحصول على صلاحيات المدير</translation>
+ </message>
+ <message>
+ <source>Another %1 instance is already running. Wait until it finishes, close it, or restart your system.</source>
+ <translation type="unfinished">نسخة أخرى من %1 تعمل بالفعل. انتظر حتى تنتهي أو أغلقها أو أعد تشغيل نظامك.</translation>
+ </message>
+ <message>
+ <source>Please make sure that the current user has reading access to file &quot;%1&quot; or try running %2 as an administrator.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot start installer binary as updater.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot start installer binary as package manager.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot start installer binary as uninstaller.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Empty repository list for option &apos;addRepository&apos;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Empty repository list for option &apos;addTempRepository&apos;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Empty repository list for option &apos;setTempRepository&apos;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Empty repository list for option &apos;installCompressedRepository&apos;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The file %1 does not exist.</source>
+ <translation type="unfinished">الملف %1 ليس موجوداً.</translation>
+ </message>
+ <message>
+ <source>Arguments missing for option %1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Invalid button value %1 </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Incorrect arguments for %1</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller</name>
+ <message>
+ <source>No marker found, stopped after %1.</source>
+ <translation>لم يُعثر على أي علامات، تم التوقف بعد %1.</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Read failed after %1 bytes: %2</source>
+ <translation>فشلت القراءة بعد %1 بايت: %2</translation>
+ </message>
+ <message>
+ <source>Copy failed: %1</source>
+ <translation>فشل النسخ: %1</translation>
+ </message>
+ <message>
+ <source>Write failed after %1 bytes: %2</source>
+ <translation>فشل الكتابة بعد %1 بايت: %2</translation>
+ </message>
+ <message>
+ <source>bytes</source>
+ <translation>بايت</translation>
+ </message>
+ <message>
+ <source>KB</source>
+ <translation>كيلو بايت</translation>
+ </message>
+ <message>
+ <source>MB</source>
+ <translation>ميجا بايت</translation>
+ </message>
+ <message>
+ <source>GB</source>
+ <translation>جيجا بايت</translation>
+ </message>
+ <message>
+ <source>TB</source>
+ <translation>تيرا بايت</translation>
+ </message>
+ <message>
+ <source>PB</source>
+ <translation>بيتا بايت</translation>
+ </message>
+ <message>
+ <source>EB</source>
+ <translation>إكسا بايت</translation>
+ </message>
+ <message>
+ <source>ZB</source>
+ <translation>زيتا بايت</translation>
+ </message>
+ <message>
+ <source>YB</source>
+ <translation>يوتا بايت</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot remove directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف المجلد &quot;%1&quot; :%2</translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;.</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot copy file from &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot move file from &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;: %2</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot open temporary file: %1</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot open temporary file for template %1: %2</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation type="unfinished">لا يمكن نسخ الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The specified module could not be found.</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Invalid content in &quot;%1&quot;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>BinaryLayout</name>
+ <message>
+ <source>Cannot seek to %1 to read the embedded meta data count.</source>
+ <translation>لا يمكن الوصول إلى %1 لقراءة عدد بيانات التعريف المضمنة.</translation>
+ </message>
+ <message>
+ <source>Cannot seek to %1 to read the resource collection segment.</source>
+ <translation>لا يمكن الوصول إلى %1 لقراءة مقطع تجميع الموارد.</translation>
+ </message>
+ <message>
+ <source>Unexpected mismatch of meta resources. Read %1, expected: %2.</source>
+ <translation>عدم تطابق غير متوقع لمصادر التعريف. بينما المتوقع: %2، قُرأ %1.</translation>
+ </message>
+</context>
+<context>
+ <name>BinaryContent</name>
+ <message>
+ <source>Cannot seek to %1 to read the operation data.</source>
+ <translation>لا يمكن الوصول إلى %1 لقراءة بيانات العملية.</translation>
+ </message>
+ <message>
+ <source>Cannot seek to %1 to read the resource collection block.</source>
+ <translation>لا يمكن الوصول إلى %1 لقراءة كتلة مجموعة الموارد.</translation>
+ </message>
+ <message>
+ <source>Cannot open meta resource %1.</source>
+ <translation>لا يمكن فتح تعريف المصدر %1.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::Resource</name>
+ <message>
+ <source>Cannot open resource %1 for reading.</source>
+ <translation>لا يمكن فتح المصدر %1 للقراءة.</translation>
+ </message>
+ <message>
+ <source>Read failed after %1 bytes: %2</source>
+ <translation>فشلت القراءة بعد %1 بايت: %2</translation>
+ </message>
+ <message>
+ <source>Write failed after %1 bytes: %2</source>
+ <translation>فشلت الكتابة بعد %1 بايت: %2</translation>
+ </message>
+</context>
+<context>
+ <name>ResourceCollectionManager</name>
+ <message>
+ <source>Cannot open resource %1: %2</source>
+ <translation>لا يمكن فتح المصدر %1: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::Component</name>
+ <message>
+ <source>Components cannot have children in updater mode.</source>
+ <translation>لا يمكن للمكونات أن تحتوي على أطفال في وضع التحديث.</translation>
+ </message>
+ <message>
+ <source>Cannot open the requested UI file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن فتح ملف واجهة المستخدم المطلوب &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot load the requested UI file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن تحميل ملف واجهة المتسخدم المطلوب &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open the requested license file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن فتح ملف الرخصة المطلوب &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>خطأ</translation>
+ </message>
+ <message>
+ <source>Error: Operation %1 does not exist.</source>
+ <translation>خطأ: العملية %1 ليست موجودة.</translation>
+ </message>
+ <message>
+ <source>Cannot resolve isDefault in %1</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>There was an error loading the selected component. This component can not be installed.</source>
+ <translation>كان هناك خطأ أثناء تحميل المكون المحدد. هذا المكون لا يمكن تثبيته.</translation>
+ </message>
+ <message>
+ <source>Update Info: </source>
+ <translation>معلومات التحديث: </translation>
+ </message>
+ <message>
+ <source>There was an error loading the selected component. This component can not be updated.</source>
+ <translation>كان هناك خطأ أثناء تحميل المكون المحدد. هذا المكون لا يمكن تحديثه.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ComponentModel</name>
+ <message>
+ <source>Component is marked for installation.</source>
+ <translation>المكون مُعَلّم للتثبيت.</translation>
+ </message>
+ <message>
+ <source>Component is marked for uninstallation.</source>
+ <translation>المكون مُعَلّم لإزالة التثبيت.</translation>
+ </message>
+ <message>
+ <source>Component is installed.</source>
+ <translation>المكون مُثبّت.</translation>
+ </message>
+ <message>
+ <source>Component is not installed.</source>
+ <translation>المكون غير مثبت.</translation>
+ </message>
+ <message>
+ <source>Component Name</source>
+ <translation>اسم المكون</translation>
+ </message>
+ <message>
+ <source>Action</source>
+ <translation>الإجراء</translation>
+ </message>
+ <message>
+ <source>Installed Version</source>
+ <translation>الإصدار المثبت</translation>
+ </message>
+ <message>
+ <source>New Version</source>
+ <translation>الإصدار الجديد</translation>
+ </message>
+ <message>
+ <source>Release Date</source>
+ <translation>تاريخ الإصدار</translation>
+ </message>
+ <message>
+ <source>Size</source>
+ <translation>الحجم</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ComponentSelectionPage</name>
+ <message>
+ <source>Alt+A</source>
+ <comment>select default components</comment>
+ <translation>Alt+A</translation>
+ </message>
+ <message>
+ <source>Def&amp;ault</source>
+ <translation>الاف&amp;تراضي</translation>
+ </message>
+ <message>
+ <source>Select default components in the tree view.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Alt+R</source>
+ <comment>reset to already installed components</comment>
+ <translation>Alt+R</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation>&amp;أعد الضبط</translation>
+ </message>
+ <message>
+ <source>Reset all components to their original selection state in the tree view.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Alt+S</source>
+ <comment>select all components</comment>
+ <translation>Alt+S</translation>
+ </message>
+ <message>
+ <source>&amp;Select All</source>
+ <translation>&amp;حدّد الكل</translation>
+ </message>
+ <message>
+ <source>Select all components in the tree view.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Alt+D</source>
+ <comment>deselect all components</comment>
+ <translation>Alt+D</translation>
+ </message>
+ <message>
+ <source>&amp;Deselect All</source>
+ <translation>&amp;ألغِ تحديد الكل</translation>
+ </message>
+ <message>
+ <source>Deselect all components in the tree view.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&amp;Browse QBSP files</source>
+ <translation>&amp;تصفح ملفات QBSP</translation>
+ </message>
+ <message>
+ <source>Select a Qt Board Support Package file to install additional content that is not directly available from the online repositories.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Filter the enabled repository categories to selection.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>This component will occupy approximately %1 on your hard disk drive.</source>
+ <translation>سيشغل هذا المكون %1 تقريباً على قرصك الصلب.</translation>
+ </message>
+ <message>
+ <source>Open File</source>
+ <translation>فتح ملف</translation>
+ </message>
+ <message>
+ <source>Select Components</source>
+ <translation>حدّد المكونات</translation>
+ </message>
+ <message>
+ <source>Please select the components you want to update.</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>Please select the components you want to install.</source>
+ <translation>يرجى تحديد المكونات التي تريد تثبيتها.</translation>
+ </message>
+ <message>
+ <source>Please select the components you want to uninstall.</source>
+ <translation>يرجى تحديد المكونات التي تريد إزالتها.</translation>
+ </message>
+ <message>
+ <source>Select the components to install. Deselect installed components to uninstall them. Any components already installed will not be updated.</source>
+ <translation>حدّد المكونات التي تريد تثبيتها. ألغِ تحديد المكونات المثبتة لإزالتها. أي مكونات مثبتة بالفعل لن يتم تحديثها.</translation>
+ </message>
+ <message>
+ <source>Mandatory components need to be updated first before you can select other components to update.</source>
+ <translation>المكونات الضرورية التي يجب تحديثها أولاً قبل اختيار المكونات الآخرى للتحديث.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ComponentSelectionPagePrivate</name>
+ <message>
+ <source>Filter</source>
+ <translation>رشّح</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>خطأ</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ConsumeOutputOperation</name>
+ <message>
+ <source>&lt;to be saved installer key name&gt; &lt;executable&gt; [argument1] [argument2] [...]</source>
+ <translation>&lt;اسم مفتاح المثبت المراد حفظه&gt; &lt;الملف التنفيذي&gt; [المعامل الأول] [العامل الثاني] [...]</translation>
+ </message>
+ <message>
+ <source>Needed installer object in %1 operation is empty.</source>
+ <translation>كائن المثبت المطلوب في العملية %1 فارغ.</translation>
+ </message>
+ <message>
+ <source>Cannot save the output of &quot;%1&quot; to an empty installer key value.</source>
+ <translation>لا يمكن حفظ إخراج &quot;%1&quot; إلى قيمة مفتاح تثبيت فارغة.</translation>
+ </message>
+ <message>
+ <source>File &quot;%1&quot; does not exist or is not an executable binary.</source>
+ <translation>الملف &quot;%1&quot; غير موجود أو ليس قابلاً للتنفيذ.</translation>
+ </message>
+ <message>
+ <source>Running &quot;%1&quot; resulted in a crash.</source>
+ <translation>تشغيل &quot;%1&quot; تسبب في إنهيار.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CopyDirectoryOperation</name>
+ <message>
+ <source>&lt;source&gt; &lt;target&gt; [&quot;forceOverwrite&quot;]</source>
+ <translation>&lt;المصدر&gt; &lt;الوجهة&gt; [&quot;إجبار إعادة الكتابة&quot;]</translation>
+ </message>
+ <message>
+ <source>Invalid argument in %1: Third argument needs to be forceOverwrite, if specified.</source>
+ <translation>معامل غير صحيح في %1: المعامل الثالث يجب أن يكون &apos;forceOverwrite&apos;، إن تم تحديد ذلك.</translation>
+ </message>
+ <message>
+ <source>Invalid argument in %1: Directory &quot;%2&quot; is invalid.</source>
+ <translation>معامل غير صحيح في %1: المجلد &quot;%2&quot; غير صحيح.</translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;.</source>
+ <translation>لا يمكن إنشاء المجلد &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Failed to overwrite &quot;%1&quot;.</source>
+ <translation>فشلت إعادة كتابة &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن نسخ الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;.</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CopyFileTask</name>
+ <message>
+ <source>Invalid task item count.</source>
+ <translation>عدد عناصر المهمة غير صحيح.</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Writing to file &quot;%1&quot; failed: %2</source>
+ <translation>فشلت الكتابة إلى الملف &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CreateDesktopEntryOperation</name>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Failed to overwrite file &quot;%1&quot;.</source>
+ <translation>فشلت إعادة كتابة الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot write desktop entry to &quot;%1&quot;.</source>
+ <translation>لا يمكن كتابة ملف سطح المكتب إلى &quot;%1&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CreateLinkOperation</name>
+ <message>
+ <source>Cannot create link from &quot;%1&quot; to &quot;%2&quot;.</source>
+ <translation>لا يمكن إنشاء رابط من &quot;%1&quot; إلى &quot;%2&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot remove link from &quot;%1&quot; to &quot;%2&quot;.</source>
+ <translation>لا يمكن حذف الرابط بين &quot;%1&quot; و&quot;%2&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CreateLocalRepositoryOperation</name>
+ <message>
+ <source>Cannot set permissions for file &quot;%1&quot;.</source>
+ <translation>لا يمكن تعيين أذونات للملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;:%2</translation>
+ </message>
+ <message>
+ <source>Cannot move file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن نقل الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Installer at &quot;%1&quot; needs to be an offline one.</source>
+ <translation>يجب أن يكون المثبت في &quot;%1&quot; غير متصل بالإنترنت.</translation>
+ </message>
+ <message>
+ <source>Cannot create path &quot;%1&quot;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot remove directory &quot;%1&quot;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading.</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة.</translation>
+ </message>
+ <message>
+ <source>Cannot read file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن قراءة الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot create target directory: &quot;%1&quot;.</source>
+ <translation>لا يمكن إنشاء مجلد الوجهة: &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Unknown exception caught: %1.</source>
+ <translation>اكتُشف استثناء غير معروف: %1.</translation>
+ </message>
+ <message>
+ <source>Removing file &quot;%1&quot;.</source>
+ <translation>إزالة الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;.</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot remove directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف المجلد &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::CreateShortcutOperation</name>
+ <message>
+ <source>&lt;target&gt; &lt;link location&gt; [target arguments] [&quot;workingDirectory=...&quot;] [&quot;iconPath=...&quot;] [&quot;iconId=...&quot;] [&quot;description=...&quot;]</source>
+ <translation>&lt;الوجهة&gt; &lt;مكان الرابط&gt; [معاملات الوجهة] [&quot;مسار العمل&quot;] [&quot;مسار الأيقونة&quot;] [&quot;رمز الأيقونة&quot;] [&quot;الوصف&quot;]</translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء المجلد &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Failed to overwrite &quot;%1&quot;: %2</source>
+ <translation>فشلت إعادة كتابة &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot create link &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء الارتباط &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::DownloadArchivesJob</name>
+ <message>
+ <source>Canceled</source>
+ <translation>أُلغيت</translation>
+ </message>
+ <message>
+ <source>Downloading hash signature failed.</source>
+ <translation>فشل تنزيل توقيع التجزئة.</translation>
+ </message>
+ <message>
+ <source>Download Error</source>
+ <translation>خطأ في التنزيل</translation>
+ </message>
+ <message>
+ <source>Hash verification while downloading failed. This is a temporary error, please retry.</source>
+ <translation>فشل التحقق من التجزئة أثناء التنزيل. هذا خطأ مؤقت، يرجى إعادة المحاولة.</translation>
+ </message>
+ <message>
+ <source>Cannot verify Hash</source>
+ <translation>لا يمكن التحقق من التحزئة</translation>
+ </message>
+ <message>
+ <source>Cannot download archive %1: %2</source>
+ <translation>لا يمكن تنزيل الأرشيف %1: %2</translation>
+ </message>
+ <message>
+ <source>Cannot fetch archives: %1
+Error while loading %2</source>
+ <translation>لا يمكن جلب الأرشيفات: %1
+خطأ أثناء تحميل %2</translation>
+ </message>
+ <message>
+ <source>Downloading archive &quot;%1&quot; for component %2.</source>
+ <translation>تنزيل الأرشيف &quot;%1&quot; للمكون %2.</translation>
+ </message>
+ <message>
+ <source>Scheme %1 not supported (URL: %2).</source>
+ <translation>الصيغة %1 غير مدعومة (الرابط: %2).</translation>
+ </message>
+ <message>
+ <source>Cannot find component for %1.</source>
+ <translation>لا يمكن العثور على المكون لـ %1.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::Downloader</name>
+ <message>
+ <source>Target file &quot;%1&quot; already exists but is not a file.</source>
+ <translation>ملف الوجهة &quot;%1&quot; موجود بالفعل ولكنه ليس ملفاً.</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <extracomment>%2 is a sentence describing the error</extracomment>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>File &quot;%1&quot; not open for writing: %2</source>
+ <extracomment>%2 is a sentence describing the error.</extracomment>
+ <translation>الملف &quot;%1&quot; غير مفتوح للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Writing to file &quot;%1&quot; failed: %2</source>
+ <extracomment>%2 is a sentence describing the error.</extracomment>
+ <translation>فشلت الكتابة إلى الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Redirect loop detected for &quot;%1&quot;.</source>
+ <translation>اكتُشفت حلقة إعادة توجيه لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Network error while downloading &apos;%1&apos;: %2.</source>
+ <translation>خطأ في الشبكة أثناء تنزيل &quot;%1&quot;: %2.</translation>
+ </message>
+ <message>
+ <source>Unknown network error while downloading &quot;%1&quot;.</source>
+ <extracomment>%1 is a sentence describing the error</extracomment>
+ <translation>خطأ غير معروف في الشبكة أثناء تنزيل &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Network transfers canceled.</source>
+ <translation>أُلغيت تحويلات الشبكة.</translation>
+ </message>
+ <message>
+ <source>Pause and resume not supported by network transfers.</source>
+ <translation>التوقف المؤقت والاستئناف غير مدعوم من قبل ناقلات الشبكة.</translation>
+ </message>
+ <message>
+ <source>Invalid source URL &quot;%1&quot;: %2</source>
+ <extracomment>%2 is a sentence describing the error</extracomment>
+ <translation>الرابط المصدري &quot;%1&quot; غير صحيح: %2</translation>
+ </message>
+</context>
+<context>
+ <name>AuthenticationRequiredException</name>
+ <message>
+ <source>%1 at %2</source>
+ <translation>%1 في %2</translation>
+ </message>
+ <message>
+ <source>Proxy requires authentication.</source>
+ <translation>يتطلب الوكيل المصادقة.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ElevatedExecuteOperation</name>
+ <message>
+ <source>Cannot start detached: &quot;%1&quot;</source>
+ <translation>لا يمكن بدأ &quot;%1&quot; منفصلاً</translation>
+ </message>
+ <message>
+ <source>Cannot start: &quot;%1&quot;: %2</source>
+ <translation>لا يمكن بدأ &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Program crashed: &quot;%1&quot;</source>
+ <translation>انهار البرنامج: &quot;%1&quot;</translation>
+ </message>
+ <message>
+ <source>Execution failed (Unexpected exit code: %1): &quot;%2&quot;</source>
+ <translation>فشل التنفيذ (رمز الخروج %1 غير متوقع): &quot;%2&quot;</translation>
+ </message>
+</context>
+<context>
+ <name>UpdateOperation</name>
+ <message>
+ <source>Cannot write to registry path %1.</source>
+ <translation>لا يمكن الكتابة إلى مسار التسجيل %1.</translation>
+ </message>
+ <message>
+ <source>Registry path %1 is not writable.</source>
+ <translation>مسار التسجيل %1 غير قابل للكتابة.</translation>
+ </message>
+ <message>
+ <source>exactly %1</source>
+ <translation>%1 بالضبط</translation>
+ </message>
+ <message>
+ <source>at least %1</source>
+ <translation>%1 على الأقل</translation>
+ </message>
+ <message>
+ <source>not more than %1</source>
+ <translation>ليس أكثر من %1</translation>
+ </message>
+ <message>
+ <source>%1 or %2</source>
+ <translation>%1 أو %2</translation>
+ </message>
+ <message>
+ <source>%1 to %2</source>
+ <translation>%1 إلى %2</translation>
+ </message>
+ <message numerus="yes">
+ <source>Invalid arguments in %1: %n arguments given, %2 arguments expected.</source>
+ <translation>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معامل غير صحيح في %1: بينما المعامل المتوقع %2، المعامل المعطى %n.</numerusform>
+ <numerusform>معاملان غير صحيحين في %1: بينما المعاملان المتوقعان %2، المعاملان المعطان %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2، المعاملات المعطاة %n.</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>Invalid arguments in %1: %n arguments given, %2 arguments expected in the form: %3.</source>
+ <translation>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2 على الصورة %3، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معامل غير صحيح في %1: بينما المعامل المتوقع %2 على الصورة %3، المعامل المعطى %n.</numerusform>
+ <numerusform>معاملان غير صحيحين في %1: بينما المعاملان المتوقعان %2 على الصورة %3، المعاملان المعطان %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2 على الصورة %3، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2 على الصورة %3، المعاملات المعطاة %n.</numerusform>
+ <numerusform>معاملات غير صحيحة في %1: بينما المعاملات المتوقعة %2 على الصورة %3، المعاملات المعطاة %n.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Renaming file &quot;%1&quot; to &quot;%2&quot; failed: %3</source>
+ <translation>فشلت إعادة تسمية الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ExtractArchiveOperation</name>
+ <message>
+ <source>Extracting &quot;%1&quot;</source>
+ <translation>استخراج &quot;%1&quot;</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ExtractArchiveOperation::Runnable</name>
+ <message>
+ <source>Cannot open archive &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الأرشيف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Error while extracting archive &quot;%1&quot;: %2</source>
+ <translation>خطأ أثناء استخراج الأرشيف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Unknown exception caught while extracting &quot;%1&quot;.</source>
+ <translation>اكتُشف خطأ غير معروف أثناء استخراج &quot;%1&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::FakeStopProcessForUpdateOperation</name>
+ <message>
+ <source>Cannot get package manager core.</source>
+ <translation>لا يمكن الحصول على نواة مدير الحزم.</translation>
+ </message>
+ <message>
+ <source>This process should be stopped before continuing: %1</source>
+ <translation>هذه العملية يجب أن تتوقف قبل الاستمرار: %1</translation>
+ </message>
+ <message>
+ <source>These processes should be stopped before continuing: %1</source>
+ <translation>هذه العمليات يجب أن تتوقف قبل الاستمرار: %1</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::GlobalSettingsOperation</name>
+ <message>
+ <source>Settings are not writable.</source>
+ <translation>الإعدادات غير قابلة للكتابة.</translation>
+ </message>
+ <message>
+ <source>Failed to write settings.</source>
+ <translation>فشلت كتابة الإعدادات.</translation>
+ </message>
+</context>
+<context>
+ <name>InstallerCalculator</name>
+ <message>
+ <source>Components added as automatic dependencies:</source>
+ <translation>المكونات المضافة كاعتماديات تلقائية:</translation>
+ </message>
+ <message>
+ <source>Components added as dependency for &quot;%1&quot;:</source>
+ <translation>المكونات المضافة كاعتمادية لـ &quot;%1&quot;:</translation>
+ </message>
+ <message>
+ <source>Components that have resolved dependencies:</source>
+ <translation>المكونات المُستوفاة اعتمادياتها:</translation>
+ </message>
+ <message>
+ <source>Selected components without dependencies:</source>
+ <translation>المكونات المحددة دون اعتماديات:</translation>
+ </message>
+ <message>
+ <source>Recursion detected, component &quot;%1&quot; already added with reason: &quot;%2&quot;</source>
+ <translation>اكتُشف تكرار، المكون &quot;%1&quot; مضاف بالفعل مع السبب: &quot;%2&quot;</translation>
+ </message>
+ <message>
+ <source>Cannot find missing dependency &quot;%1&quot; for &quot;%2&quot;.</source>
+ <translation>لا يمكن العثور على الاعتمادية المفقودة &quot;%1&quot; لـ &quot;%2&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::InstallIconsOperation</name>
+ <message>
+ <source>&lt;source path&gt; [vendor prefix]</source>
+ <translation>&lt;مسار المصدر&gt; [اختصار المزود]</translation>
+ </message>
+ <message>
+ <source>Invalid Argument: source directory must not be empty.</source>
+ <translation>معامل غير صحيح: مجلد المصدر يجب ألا يكون فارغاً.</translation>
+ </message>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Failed to overwrite &quot;%1&quot;: %2</source>
+ <translation>فشلت إعادة كتابة &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Failed to copy file &quot;%1&quot;: %2</source>
+ <translation>فشل نسخ الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء المجلد &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>Lib7z</name>
+ <message>
+ <source>internal code: %1</source>
+ <translation>الرمز الداخلي: %1</translation>
+ </message>
+ <message>
+ <source>not enough memory</source>
+ <translation>لا توجد ذاكرة كافية</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation>خطأ: %1</translation>
+ </message>
+ <message>
+ <source>Cannot retrieve property %1 for item %2.</source>
+ <translation>لا يمكن الحصول على الخاصية %1 للعتصر %2.</translation>
+ </message>
+ <message>
+ <source>Property %1 for item %2 not of type VT_FILETIME but %3.</source>
+ <translation>الخاصية %1 للعنصر %2 ليست من نوع VT_FILETIME لكن %3.</translation>
+ </message>
+ <message>
+ <source>Cannot convert UTC file time to system time.</source>
+ <translation>لا يمكن تحويل التوقيت العالمي الموحد للملف إلى توقيت النظام.</translation>
+ </message>
+ <message>
+ <source>Cannot load codecs.</source>
+ <translation>لا يمكن تحميل برامج الترميز.</translation>
+ </message>
+ <message>
+ <source>Cannot open archive &quot;%1&quot;.</source>
+ <translation>لا يمكن فتح الأرشيف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot retrieve number of items in archive.</source>
+ <translation>لا يمكن الحصول على عدد العناصر في الأرشيف.</translation>
+ </message>
+ <message>
+ <source>Cannot retrieve path of archive item &quot;%1&quot;.</source>
+ <translation>لا يمكن الحصول على مسار عنصر الأرشيف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Unknown exception caught (%1).</source>
+ <translation>اكتُشف استثناء مجهول (%1).</translation>
+ </message>
+ <message>
+ <source>Cannot create temporary file: %1</source>
+ <translation>لا يمكن إنشاء الملف المؤقت: %1</translation>
+ </message>
+ <message>
+ <source>Unsupported archive type.</source>
+ <translation>نوع الأرشيف غير مدعوم.</translation>
+ </message>
+ <message>
+ <source>Cannot create archive &quot;%1&quot;</source>
+ <translation>لا يمكن إنشاء الأرشيف &quot;%1&quot;</translation>
+ </message>
+ <message>
+ <source>Cannot create archive &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء الأرشيف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot remove old archive &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الأرشيف القديم &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot rename temporary archive &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن إعادة تسمية الأرشيف المؤقت &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Unknown exception caught (%1)</source>
+ <translation>اكتُشف استثناء مجهول (%1)</translation>
+ </message>
+</context>
+<context>
+ <name>DirectoryGuard</name>
+ <message>
+ <source>Path &quot;%1&quot; exists but is not a directory.</source>
+ <translation>المسار %1 موجود بالفعل لكنه ليس مجلداً.</translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;.</source>
+ <translation>لا يمكن إنشاء المجلد &quot;%1&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>ExtractCallbackImpl</name>
+ <message>
+ <source>Cannot retrieve path of archive item %1.</source>
+ <translation>لا يمكن الحصول على مسار عنصر الأرشيف %1.</translation>
+ </message>
+ <message>
+ <source>Cannot remove already existing symlink %1.</source>
+ <translation>لا يمكن حذف الارتباط الموجود بالفعل %1.</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot create symlink at &quot;%1&quot;. Another one is already existing.</source>
+ <translation>لا يمكن إنشاء الارتباط في &quot;%1&quot;. ارتباط آخر موجود بالفعل.</translation>
+ </message>
+ <message>
+ <source>Cannot read symlink target from file &quot;%1&quot;.</source>
+ <translation>لا يمكن قراءة وجهة الارتباط من الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot create symlink at %1: %2</source>
+ <translation>لا يمكن إنشاء الارتباط في %1: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::LicenseOperation</name>
+ <message>
+ <source>No license files found to copy.</source>
+ <translation>لم يُعثر على ملفات ترخيص موجودة لنسخها.</translation>
+ </message>
+ <message>
+ <source>Needed installer object in %1 operation is empty.</source>
+ <translation>كائن المثبت المطلوب في العملية %1 فارغ.</translation>
+ </message>
+ <message>
+ <source>Can not write license file &quot;%1&quot;.</source>
+ <translation>لا يمكن كتابة ملف الرخصة &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>No license files found to delete.</source>
+ <translation>لم يُعثر على ملفات ترخيص لحذفها.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::LineReplaceOperation</name>
+ <message>
+ <source>Invalid argument in %1: Empty search argument is not supported.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::MetadataJob</name>
+ <message>
+ <source>Missing package manager core engine.</source>
+ <translation>محرك نواة مدير الحزم مفقود.</translation>
+ </message>
+ <message>
+ <source>Preparing meta information download...</source>
+ <translation>جارٍ تحضير تنزيل ملفات التعريف...</translation>
+ </message>
+ <message>
+ <source>Unpacking compressed repositories. This may take a while...</source>
+ <translation>جارٍ فك ضغط المستودعات المضغوطة. قد يستغرق هذا بعص الوقت...</translation>
+ </message>
+ <message>
+ <source>Meta data download canceled.</source>
+ <translation>أُلغي تحميل ملفات التعريف.</translation>
+ </message>
+ <message>
+ <source>Unknown exception during extracting.</source>
+ <translation>حدث خطأ غير معروف أثناء الاستخراج.</translation>
+ </message>
+ <message>
+ <source>Missing proxy credentials.</source>
+ <translation>بيانات اعتماد الوكيل مفقودة.</translation>
+ </message>
+ <message>
+ <source>Authentication failed.</source>
+ <translation>فشلت المصادقة.</translation>
+ </message>
+ <message>
+ <source>Unknown exception during download.</source>
+ <translation>حدث استثناء غير معروف أثناء التنزيل.</translation>
+ </message>
+ <message>
+ <source>Failure to fetch repositories.</source>
+ <translation>فشل جلب المستودعات.</translation>
+ </message>
+ <message>
+ <source>Extracting meta information...</source>
+ <translation>جارٍ استخراج معلومات التعريف...</translation>
+ </message>
+ <message>
+ <source>Checksum mismatch detected for &quot;%1&quot;.</source>
+ <translation>اكتُشف عدم تطابق تدقيق المجموع لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Retrieving meta information from remote repository... %1/%2 </source>
+ <translation>جارٍ الحصول على معلومات التعريف من المستودع البعيد... %1/%2 </translation>
+ </message>
+ <message>
+ <source>Retrieving meta information from remote repository... </source>
+ <translation>جارٍ الحصول على معلومات التعريف من المستودع البعيد... </translation>
+ </message>
+ <message>
+ <source>Error while extracting archive &quot;%1&quot;: %2</source>
+ <translation>حدث خطأ أثناء إستخراج الأرشيف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Unknown exception caught while extracting archive &quot;%1&quot;.</source>
+ <translation>اكتُشف استثناء غير معروف أثناء استخراج الأرشيف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::FileTaskObserver</name>
+ <message>
+ <source>%1 of %2</source>
+ <translation>%1 من %2</translation>
+ </message>
+ <message>
+ <source>%1 received.</source>
+ <translation>استُقبل %1.</translation>
+ </message>
+ <message>
+ <source>(%1/sec)</source>
+ <translation>(%1/ثانية)</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s), </source>
+ <translation>
+ <numerusform>%n يوم(أيام)، </numerusform>
+ <numerusform>يوم، </numerusform>
+ <numerusform>يومان </numerusform>
+ <numerusform>%n أيام، </numerusform>
+ <numerusform>%n يوم، </numerusform>
+ <numerusform>%n يوم، </numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s), </source>
+ <translation>
+ <numerusform>%n ساعة(ساعات)، </numerusform>
+ <numerusform>ساعة، </numerusform>
+ <numerusform>ساعتان، </numerusform>
+ <numerusform>%n ساعات، </numerusform>
+ <numerusform>%n ساعة، </numerusform>
+ <numerusform>%n ساعة، </numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation>
+ <numerusform>%n دقيقة(دقائق)</numerusform>
+ <numerusform>دقيقة</numerusform>
+ <numerusform>دقيقتان</numerusform>
+ <numerusform>%n دقائق</numerusform>
+ <numerusform>%n دقيقة</numerusform>
+ <numerusform>%n دقيقة</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation>
+ <numerusform>%n ثانية(ثوان)</numerusform>
+ <numerusform>ثانية</numerusform>
+ <numerusform>ثانيتان</numerusform>
+ <numerusform>%n ثوان</numerusform>
+ <numerusform>%n ثانية</numerusform>
+ <numerusform>%n ثانية</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source> - %1%2%3%4 remaining.</source>
+ <translation> - يتبقى %1%2%3%4.</translation>
+ </message>
+ <message>
+ <source> - unknown time remaining.</source>
+ <translation> - الوقت المتبقي غير معلوم.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::PackageManagerCore</name>
+ <message>
+ <source>Error writing Maintenance Tool</source>
+ <translation>خطأ في كتابة أداة الصيانة</translation>
+ </message>
+ <message>
+ <source>
+Downloading packages...</source>
+ <translation>
+جارٍ تنزيل الحزم...</translation>
+ </message>
+ <message>
+ <source>Installation canceled by user.</source>
+ <translation>ألغى المستخدم التحديث.</translation>
+ </message>
+ <message>
+ <source>All downloads finished.</source>
+ <translation>انتهت كل التنزيلات.</translation>
+ </message>
+ <message>
+ <source>Cancelling the Installer</source>
+ <translation>إلغاء المثبت</translation>
+ </message>
+ <message>
+ <source>Authentication Error</source>
+ <translation>حدث خطأ في المصادقة</translation>
+ </message>
+ <message>
+ <source>Some components could not be removed completely because administrative rights could not be acquired: %1.</source>
+ <translation>لا يمكن حذف بعص المكونات كاملاً لتعذر الحصول على صلاحيات المسؤول: %1.</translation>
+ </message>
+ <message>
+ <source>Unknown error.</source>
+ <translation>خطأ غير معروف.</translation>
+ </message>
+ <message>
+ <source>Some components could not be removed completely because an unknown error happened.</source>
+ <translation>لا يمكن حذف بعض المكونات كاملاً لحدوث خطأ غير معروف.</translation>
+ </message>
+ <message>
+ <source>User input is required but the output device is not associated with a terminal.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The directory you selected already exists and contains an installation. Choose a different target for installation.</source>
+ <translation type="unfinished">المجلد الذي اخترته موجود بالفعل ويحتوي على تثبيت. اختر وجهة مختلفة للتثبيت.</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">تحذير</translation>
+ </message>
+ <message>
+ <source>You have selected an existing, non-empty directory for installation.
+Note that it will be completely wiped on uninstallation of this application.
+It is not advisable to install into this directory as installation might fail.
+Do you want to continue?</source>
+ <translation type="unfinished">لقد اخترت مجلداً موجودأ وغير فارغ للتثبيت.
+سيتم حذفه تماماً عند إزالة تثبيت هذا التطبيق.
+لا يُنصح بالتثبيت إلى هذا المجلد لاحتمالية فشل التثبيت.
+هل تريد الاستمرار؟</translation>
+ </message>
+ <message>
+ <source>You have selected an existing file or symlink, please choose a different target for installation.</source>
+ <translation type="unfinished">لقد حددت ملفاً موجوداً أو اختصاراً، يرجى اختيار وجهة مختلفة للتثبيت.</translation>
+ </message>
+ <message>
+ <source>The installation path cannot be empty, please specify a valid directory.</source>
+ <translation type="unfinished">لا يمكن أن يكون مسار التثبيت فارغاً. يرجى تحديد مجلد صالح.</translation>
+ </message>
+ <message>
+ <source>The installation path cannot be relative, please specify an absolute path.</source>
+ <translation type="unfinished">لا يمكن أن يكون مسار التثبيت نسبياً، يرجى تحديد مسار مطلق.</translation>
+ </message>
+ <message>
+ <source>The path or installation directory contains non ASCII characters. This is currently not supported! Please choose a different path or installation directory.</source>
+ <translation type="unfinished">المسار أو مجلد التثبيت لا يحتوي على محارف ASCII. هذا غير مدعوم حالياً يرجى اختيار مسار أو مجلد تثبيت مختلف.</translation>
+ </message>
+ <message>
+ <source>As the install directory is completely deleted, installing in %1 is forbidden.</source>
+ <translation type="unfinished">التثبيت في %1 محظور لأن مجلد التثبيت سيُمسح تماماً.</translation>
+ </message>
+ <message>
+ <source>The path you have entered is too long, please make sure to specify a valid path.</source>
+ <translation type="unfinished">المسار الذي أدخلته طويل جداً، يرجى التأكد من تخصيص مسار صالح.</translation>
+ </message>
+ <message>
+ <source>The path you have entered is not valid, please make sure to specify a valid target.</source>
+ <translation type="unfinished">المسار الذي أدخلته غير صالح، يرحى التأكد من تخصيص وجهة صالحة.</translation>
+ </message>
+ <message>
+ <source>The path you have entered is not valid, please make sure to specify a valid drive.</source>
+ <translation type="unfinished">المسار الذي أدخلته غير صالح، يرحى التأكد من تخصيص قرص صالح.</translation>
+ </message>
+ <message>
+ <source>The installation path must not end with &apos;.&apos;, please specify a valid directory.</source>
+ <translation type="unfinished">يجب ألا ينتهي مسار التثبيت بنقطة &quot;.&quot;، يرجى تخصيص مجلد صالح.</translation>
+ </message>
+ <message>
+ <source>The installation path must not contain &quot;%1&quot;, please specify a valid directory.</source>
+ <translation type="unfinished">يجب ألا يحتوي مسار التثبيت على &quot;%1&quot;، يرجى تخصيص مجلد صالح.</translation>
+ </message>
+ <message>
+ <source>Application not running in Package Manager mode.</source>
+ <translation>لا يعمل التطبيق في وضع مدير الحزم.</translation>
+ </message>
+ <message>
+ <source>No installed packages found.</source>
+ <translation>لم يُعثر على حزم مثبتة.</translation>
+ </message>
+ <message>
+ <source>Cannot register component! Component with identifier %1 already exists.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Application running in Uninstaller mode.</source>
+ <translation>يعمل التطبيق في وضع إزالة التثبيت.</translation>
+ </message>
+ <message>
+ <source>There is an important update available, please run the updater first.</source>
+ <translation>هناك تحديث مهم متاح يرجى تشغيل المحدث أولاً.</translation>
+ </message>
+ <message>
+ <source>Cannot resolve all dependencies.</source>
+ <translation>لا يمكن الحصول على كافة الاعتماديات.</translation>
+ </message>
+ <message>
+ <source>Components about to be removed.</source>
+ <translation>المكونات على وشك الحذف.</translation>
+ </message>
+ <message>
+ <source>Cannot install %1. Component not found.
+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot install component %1. Component is installed only as automatic dependency to %2.
+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot install component %1. Component is not checkable meaning you have to select one of the subcomponents.
+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Component %1 already installed
+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot install %1. Component is virtual.
+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Running processes found.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot elevate access rights while running from command line. Please restart the application as administrator.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Error while elevating access rights.</source>
+ <translation>خطأ أثناء رفع حقوق الوصول.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>خطأ</translation>
+ </message>
+ <message>
+ <source>Not enough disk space to store temporary files and the installation. %1 are available, while %2 are at least required.</source>
+ <translation type="unfinished">لا توجد مساحة كافية لتخزين الملفات المؤقتة والتثبيت! بينما المساحة المطلوبة هي %2 على الأقل، المساحة المتاحة هي %1.</translation>
+ </message>
+ <message>
+ <source>Not enough disk space to store all selected components! %1 are available while %2 are at least required.</source>
+ <translation type="unfinished">لا توجد مساحة كافية لتخزين جميع المكونات المحددة! بينما المساحة المطلوبة هي %2 على الأقل، المساحة المتاحة هي %1.</translation>
+ </message>
+ <message>
+ <source>Not enough disk space to store temporary files! %1 are available while %2 are at least required.</source>
+ <translation type="unfinished">لا توجد مساحة كافية لتخزين الملفات المؤقتة!. بينما المساحة المطلوبة هي %2 على الأقل، المساحة المتاحة هي %1.</translation>
+ </message>
+ <message>
+ <source>The volume you selected for installation seems to have sufficient space for installation, but there will be less than 1% of the volume&apos;s space available afterwards.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The volume you selected for installation seems to have sufficient space for installation, but there will be less than 100 MB available afterwards.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Installation will use %1 of disk space.</source>
+ <translation type="unfinished">سيستخدم التثبيت %1 من مساحة القرص الصلب.</translation>
+ </message>
+ <message>
+ <source>invalid</source>
+ <translation>غير صالح</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::PackageManagerCorePrivate</name>
+ <message>
+ <source>Unresolved dependencies</source>
+ <translation>الاعتماديات التي لم يُحصل عليها</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>خطأ</translation>
+ </message>
+ <message>
+ <source>Access error</source>
+ <translation>خطأ في الوصول</translation>
+ </message>
+ <message>
+ <source>Format error</source>
+ <translation>خطأ في التنسيق</translation>
+ </message>
+ <message>
+ <source>Cannot write installer configuration to %1: %2</source>
+ <translation>لا يمكن كتابة إعدادات المثبت إلى %1: %2</translation>
+ </message>
+ <message>
+ <source>Stop Processes</source>
+ <translation>أوقف العمليات</translation>
+ </message>
+ <message>
+ <source>These processes should be stopped to continue:
+%1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Installation canceled by user</source>
+ <translation>ألغى المستخدم التثبيت</translation>
+ </message>
+ <message>
+ <source>Retry count exceeded</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Writing maintenance tool.</source>
+ <translation>كتابة أداة الصيانة.</translation>
+ </message>
+ <message>
+ <source>Failed to seek in file %1: %2</source>
+ <translation>فشل البحث في الملف %1: %2</translation>
+ </message>
+ <message>
+ <source>Maintenance tool is not a bundle</source>
+ <translation>أداة الصيانة ليست حزمة</translation>
+ </message>
+ <message>
+ <source>Cannot remove data file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف ملف البيانات &quot;%1&quot;:%2</translation>
+ </message>
+ <message>
+ <source>Cannot write maintenance tool data to %1: %2</source>
+ <translation>لا يمكن كتابة بيانات أداة الصيانة إلى %1: %2</translation>
+ </message>
+ <message>
+ <source>Cannot write maintenance tool to &quot;%1&quot;: %2</source>
+ <translation>لا يمكن كتابة أداة الصيانة إلى &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot remove temporary data file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف بيانات الملف المؤقت &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot write maintenance tool binary data to %1: %2</source>
+ <translation>لا يمكن كتابة البيانات الثنائية لأداة الصيانة إلى %1: %2</translation>
+ </message>
+ <message>
+ <source>Writing offline base binary.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;: %2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;.</source>
+ <translation type="unfinished">لا يمكن إنشاء المجلد &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot write offline binary to &quot;%1&quot;: %2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot remove temporary file &quot;%1&quot;: %2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Variable &apos;TargetDir&apos; not set.</source>
+ <translation>المتغير &apos;TargetDir&apos; غير مضبوط.</translation>
+ </message>
+ <message>
+ <source>Preparing the installation...</source>
+ <translation>جارٍ تحضير التثبيت...</translation>
+ </message>
+ <message>
+ <source>It is not possible to install from network location</source>
+ <translation>لا يمكن التثبيت من موقع في الشبكة</translation>
+ </message>
+ <message>
+ <source>Creating local repository</source>
+ <translation>إنشاء مستودع محلي</translation>
+ </message>
+ <message>
+ <source>Creating Maintenance Tool</source>
+ <translation>إنشاء أداة الصيانة</translation>
+ </message>
+ <message>
+ <source>
+Installation finished!</source>
+ <translation>
+انتهى التثبيت!</translation>
+ </message>
+ <message>
+ <source>
+Installation aborted!</source>
+ <translation>
+أُلغي التثبيت!</translation>
+ </message>
+ <message>
+ <source>It is not possible to run that operation from a network location</source>
+ <translation>لا يمكن تشغيل تلك العملية من موقع في الشبكة</translation>
+ </message>
+ <message>
+ <source>Removing deselected components...</source>
+ <translation>جارٍ حذف المكونات الغير محددة...</translation>
+ </message>
+ <message>
+ <source>
+Update finished!</source>
+ <translation>
+انتهى التحديث!</translation>
+ </message>
+ <message>
+ <source>
+Update aborted!</source>
+ <translation>
+أُلغي التحديث!</translation>
+ </message>
+ <message>
+ <source>Uninstallation completed successfully.</source>
+ <translation>أُزيل التثبيت بنجاح.</translation>
+ </message>
+ <message>
+ <source>Uninstallation aborted.</source>
+ <translation>أُلغيت إزالة التثبيت.</translation>
+ </message>
+ <message>
+ <source>Cannot create target directory for installer.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Preparing offline generation...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Preparing installer configuration...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Creating the installer...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Failed to create offline installer. %1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot remove temporary directory &quot;%1&quot;.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Offline generation completed successfully.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Offline generation aborted!</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>
+Installing component %1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Installer Error</source>
+ <translation>خطأ المثبت</translation>
+ </message>
+ <message>
+ <source>Error during installation process (%1):
+%2</source>
+ <translation>حدث خطأ أثناء عملية التثبيت (%1) :
+%2</translation>
+ </message>
+ <message>
+ <source>Done</source>
+ <translation>انتهى</translation>
+ </message>
+ <message>
+ <source>Cannot prepare uninstall</source>
+ <translation>لا يمكن تحضير إزالة التثبيت</translation>
+ </message>
+ <message>
+ <source>Cannot start uninstall</source>
+ <translation>لا يمكن بدأ إزالة التثبيت</translation>
+ </message>
+ <message>
+ <source>Error during uninstallation process:
+%1</source>
+ <translation>حدث خطأ أثناء عملية إزالة التثبيت :
+%1</translation>
+ </message>
+ <message>
+ <source>Unknown error</source>
+ <translation>خطأ غير معروف</translation>
+ </message>
+ <message>
+ <source>Cannot retrieve remote tree %1.</source>
+ <translation>لا يمكن الحصول على الشجرة البعيدة %1.</translation>
+ </message>
+ <message>
+ <source>Failure to read packages from %1.</source>
+ <translation>فشلت قراءة الحزم من %1.</translation>
+ </message>
+ <message>
+ <source>Cannot retrieve meta information: %1</source>
+ <translation>لا يمكن الحصول على بيانات التعريف: %1</translation>
+ </message>
+ <message>
+ <source>Cannot add temporary update source information.</source>
+ <translation>لا تمكن إضافة معلومات مصدر التحديث المؤقت.</translation>
+ </message>
+ <message>
+ <source>Cannot find any update source information.</source>
+ <translation>لا يمكن العثور على أي معلومات مصدر تحديث.</translation>
+ </message>
+ <message>
+ <source>Dependency cycle between components &quot;%1&quot; and &quot;%2&quot; detected.</source>
+ <translation>اكتُشفت دورة اعتماديات بين المكونان &quot;%1&quot; و&quot;%2&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::PackageManagerGui</name>
+ <message>
+ <source>%1 Setup</source>
+ <translation>إعداد %1</translation>
+ </message>
+ <message>
+ <source>Maintain %1</source>
+ <translation>صيانة %1</translation>
+ </message>
+ <message>
+ <source>Do you want to cancel the installation process?</source>
+ <translation>هل تريد إلغاء عملية التثبيت؟</translation>
+ </message>
+ <message>
+ <source>Do you want to cancel the uninstallation process?</source>
+ <translation>هل تريد إلغاء عملية إزالة التثبيت؟</translation>
+ </message>
+ <message>
+ <source>Do you want to quit the installer application?</source>
+ <translation>هل تريد الخروج من برنامج المثبت؟</translation>
+ </message>
+ <message>
+ <source>Do you want to quit the uninstaller application?</source>
+ <translation>هل تريد الخروج من برنامج إزالة التثبيت؟</translation>
+ </message>
+ <message>
+ <source>Do you want to quit the maintenance application?</source>
+ <translation>هل تريد الخروج من تطبيق الصيانة؟</translation>
+ </message>
+ <message>
+ <source>%1 Question</source>
+ <translation>سؤال %1</translation>
+ </message>
+ <message>
+ <source>Settings</source>
+ <translation>الإعدادات</translation>
+ </message>
+ <message>
+ <source>Specify proxy settings and configure repositories for add-on components.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>خطأ</translation>
+ </message>
+ <message>
+ <source>It is not possible to install from network location.
+Please copy the installer to a local drive</source>
+ <translation>من غير الممكن التثبيت من موقع في الشبكة
+يرجى نسخ المثبت إلى فرص محلي</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::IntroductionPage</name>
+ <message>
+ <source>Setup - %1</source>
+ <translation>الإعداد - %1</translation>
+ </message>
+ <message>
+ <source>Welcome to the %1 Setup Wizard.</source>
+ <translation>مرحباً بك في إعداد %1.</translation>
+ </message>
+ <message>
+ <source>&amp;Add or remove components</source>
+ <translation>&amp;أضف أو أزل المكونات</translation>
+ </message>
+ <message>
+ <source>&amp;Update components</source>
+ <translation>&amp;حدّث المكونات</translation>
+ </message>
+ <message>
+ <source>&amp;Remove all components</source>
+ <translation>&amp;احذف جميع المكونات</translation>
+ </message>
+ <message>
+ <source>Retrieving information from remote installation sources...</source>
+ <translation>جارٍ الحصول على المعلومات من مصادر التثبيت عن بعد...</translation>
+ </message>
+ <message>
+ <source>At least one valid and enabled repository required for this action to succeed.</source>
+ <translation>يجب أن يكون هناك مستودع واحد مفعل وصالح على الأقل لنجاخ هذا الإجراء.</translation>
+ </message>
+ <message>
+ <source>No updates available.</source>
+ <translation>لا تحديثات متوفرة.</translation>
+ </message>
+ <message>
+ <source> Only local package management available.</source>
+ <translation> إدارة الحزم المحلية هي المتاحة فقط.</translation>
+ </message>
+ <message>
+ <source>&amp;Quit</source>
+ <translation>&amp;اخرج</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::LicenseAgreementPage</name>
+ <message>
+ <source>License Agreement</source>
+ <translation>اتفاقية الترخيص</translation>
+ </message>
+ <message>
+ <source>Alt+A</source>
+ <comment>agree license</comment>
+ <translation>Alt+A</translation>
+ </message>
+ <message>
+ <source>Please read the following license agreement. You must accept the terms contained in this agreement before continuing with the installation.</source>
+ <translation>يرجى قراءة اتفاقية الترخيص الآتية. يجب أن توافق على الشروط الواردة في هذه الاتفاقية قبل متابعة التثبيت.</translation>
+ </message>
+ <message>
+ <source>I accept the license.</source>
+ <translation>أقبل الرخصة.</translation>
+ </message>
+ <message>
+ <source>Please read the following license agreements. You must accept the terms contained in these agreements before continuing with the installation.</source>
+ <translation>يرجى قراءة اتفاقيات الترخيص الآتية. يجب أن توافق على الشروط الواردة في هذه الاتفاقيات قبل متابعة التثبيت.</translation>
+ </message>
+ <message>
+ <source>I accept the licenses.</source>
+ <translation>أقبل الرخص.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::TargetDirectoryPage</name>
+ <message>
+ <source>Installation Folder</source>
+ <translation>مجلد التثبيت</translation>
+ </message>
+ <message>
+ <source>Please specify the directory where %1 will be installed.</source>
+ <translation>يرجى تخصيص مجلد تثبيت %1.</translation>
+ </message>
+ <message>
+ <source>Alt+R</source>
+ <comment>browse file system to choose a file</comment>
+ <translation>Alt+R</translation>
+ </message>
+ <message>
+ <source>B&amp;rowse...</source>
+ <translation>ا&amp;ستعرض...</translation>
+ </message>
+ <message>
+ <source>Browse file system to choose the installation directory.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Select Installation Folder</source>
+ <translation>اختر مجلد التثبيت</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::StartMenuDirectoryPage</name>
+ <message>
+ <source>Start Menu shortcuts</source>
+ <translation>اختصارات قائمة ابدأ</translation>
+ </message>
+ <message>
+ <source>Select the Start Menu in which you would like to create the program&apos;s shortcuts. You can also enter a name to create a new directory.</source>
+ <translation>حدّد قائمة ابدأ التي تريد إنشاء اختصارات البرنامج فيها. يمكنك أيضاً إدخال اسم لإنشاء مجلد جديد.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ReadyForInstallationPage</name>
+ <message>
+ <source>U&amp;ninstall</source>
+ <translation>أ&amp;زل التثبيت</translation>
+ </message>
+ <message>
+ <source>Ready to Uninstall</source>
+ <translation>جاهز لإزالة التثبيت</translation>
+ </message>
+ <message>
+ <source>Setup is now ready to begin removing %1 from your computer.&lt;br&gt;&lt;font color=&quot;red&quot;&gt;The program directory %2 will be deleted completely&lt;/font&gt;, including all content in that directory!</source>
+ <translation>الإعداد جاهز الآن لبدأ حذف %1 من حاسوبك. .&lt;br&gt;&lt;font color=&quot;red&quot;&gt;مجلد البرنامج %2 سيُحذف تماماً&lt;/font&gt; مع كل المحتوى فيه!</translation>
+ </message>
+ <message>
+ <source>U&amp;pdate</source>
+ <translation>ح&amp;دث</translation>
+ </message>
+ <message>
+ <source>Ready to Update Packages</source>
+ <translation>جاهز لتحديث الحزم</translation>
+ </message>
+ <message>
+ <source>Setup is now ready to begin updating your installation.</source>
+ <translation>الإعداد جاهز لبدأ تحديث تثبيتك.</translation>
+ </message>
+ <message>
+ <source>&amp;Install</source>
+ <translation>&amp;ثبت</translation>
+ </message>
+ <message>
+ <source>Ready to Install</source>
+ <translation>جاهز للتثبيت</translation>
+ </message>
+ <message>
+ <source>Setup is now ready to begin installing %1 on your computer.</source>
+ <translation>الإعداد جاهز الآن لبدأ تثبيت %1 على حاسوبك.</translation>
+ </message>
+ <message>
+ <source>Ready to Update</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::PerformInstallationPage</name>
+ <message>
+ <source>U&amp;ninstall</source>
+ <translation>أ&amp;زل التثبيت</translation>
+ </message>
+ <message>
+ <source>Uninstalling %1</source>
+ <translation>إزالة تثبيت %1</translation>
+ </message>
+ <message>
+ <source>&amp;Update</source>
+ <translation>&amp;حدّث</translation>
+ </message>
+ <message>
+ <source>Updating components of %1</source>
+ <translation>تحديث مكونات %1</translation>
+ </message>
+ <message>
+ <source>&amp;Install</source>
+ <translation>&amp;ثبت</translation>
+ </message>
+ <message>
+ <source>Installing %1</source>
+ <translation>تثبيت %1</translation>
+ </message>
+ <message>
+ <source>Installing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Updating</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Uninstalling</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::FinishedPage</name>
+ <message>
+ <source>Completing the %1 Wizard</source>
+ <translation>إكمال معالج %1</translation>
+ </message>
+ <message>
+ <source>Finished</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Click %1 to exit the %2 Wizard.</source>
+ <translation>اضغط %1 للخروج من معالج %2.</translation>
+ </message>
+ <message>
+ <source>Restart</source>
+ <translation>أعد التشغيل</translation>
+ </message>
+ <message>
+ <source>Run %1 now.</source>
+ <translation>شغل %1 الآن.</translation>
+ </message>
+ <message>
+ <source>The %1 Wizard failed.</source>
+ <translation>فشل معالج %1.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::RestartPage</name>
+ <message>
+ <source>Completing the %1 Setup Wizard</source>
+ <translation>إكمال معالج إعداد %1</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::PerformInstallationForm</name>
+ <message>
+ <source>&amp;Show Details</source>
+ <translation>&amp;اعرض التفاصيل</translation>
+ </message>
+ <message>
+ <source>&amp;Hide Details</source>
+ <translation>&amp;أخف التفاصيل</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::RegisterFileTypeOperation</name>
+ <message>
+ <source>Registering file types is only supported on Windows.</source>
+ <translation>تسجيل أنواع الملفات متاح فقط على نظام Windows.</translation>
+ </message>
+ <message>
+ <source>Register File Type: Invalid arguments</source>
+ <translation>تسجيل أنواع الملفات: معاملات غير صحيحة</translation>
+ </message>
+</context>
+<context>
+ <name>RemoteClient</name>
+ <message>
+ <source>Cannot get authorization.</source>
+ <translation>لا يمكن الحصول على المصادقة.</translation>
+ </message>
+ <message>
+ <source>Cannot get authorization that is needed for continuing the installation.
+Please start the setup program as a user with the appropriate rights.
+Or accept the elevation of access rights if being asked.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot get authorization that is needed for continuing the installation.
+ Either abort the installation or use the fallback solution by running
+%1
+as a user with the appropriate rights and then clicking OK.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::RemoteObject</name>
+ <message>
+ <source>Cannot read all data after sending command: %1. Bytes expected: %2, Bytes received: %3. Error: %4</source>
+ <translation>لا يمكن قراءة جميع البيانات بعد إرسال الأمر: %1. البايت المتوقع: %2، البايت المُستقبل: %3. الخطأ: %4</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ReplaceOperation</name>
+ <message>
+ <source>Current search argument calling &quot;%1&quot; with empty search argument is not supported.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Current mode argument calling &quot;%1&quot; with arguments &quot;%2&quot; is not supported. Please use string or regex.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::ScriptEngine</name>
+ <message>
+ <source>Cannot open script file at %1: %2</source>
+ <translation>لا يمكن فتح ملف النص البرمجي في %1: %2</translation>
+ </message>
+ <message>
+ <source>Exception while loading the component script &quot;%1&quot;: %2</source>
+ <translation>حدث استثناء أثناء تحميل النص البرمجي للمكون %1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Unknown error.</source>
+ <translation>خطأ غير معروف.</translation>
+ </message>
+ <message>
+ <source>on line number: </source>
+ <translation>الرقم على الخط: </translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::SelfRestartOperation</name>
+ <message>
+ <source>Installer object needed in operation %1 is empty.</source>
+ <translation>كائن المثبت المطلوب في العملية %1 فارغ.</translation>
+ </message>
+ <message>
+ <source>Self Restart: Only valid within updater or packagemanager mode.</source>
+ <translation>إعادة التشغيل التلقائية: متاحة فقط في وضع المحدث أو وضع مدير الحزم.</translation>
+ </message>
+ <message>
+ <source>Self Restart: Invalid arguments</source>
+ <translation>إعادة التشغيل التلقائية: معاملات غير صحيحة</translation>
+ </message>
+</context>
+<context>
+ <name>Settings</name>
+ <message>
+ <source>Cannot open settings file %1 for reading: %2</source>
+ <translation>لا يمكن فتح ملف الإعدادات %1 للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Select Categories</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::SettingsOperation</name>
+ <message>
+ <source>Missing argument(s) &quot;%1&quot; calling %2 with arguments &quot;%3&quot;.</source>
+ <translation>هناك معامل (معاملات) مفقودة &quot;%1&quot; يستدعي %2 بالمعامل &quot;%3&quot;.</translation>
+ </message>
+ <message>
+ <source>Current method argument calling &quot;%1&quot; with arguments &quot;%2&quot; is not supported. Please use set, remove, add_array_value or remove_array_value.</source>
+ <translation>معامل الدالة الحالية المستدعاة &quot;%1&quot; بالمعاملات &quot;%2&quot; غير مدعوم. يرجى استخدام set أو remove أو add_array_value أو remove_array_value.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::SimpleMoveFileOperation</name>
+ <message>
+ <source>None of the arguments can be empty: source &quot;%1&quot;, target &quot;%2&quot;.</source>
+ <translation>لا يمكن أن تكون المعاملات الآتية فارغة: المصدر &quot;%1&quot; والوجهة &quot;%2&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot move file from &quot;%1&quot; to &quot;%2&quot;, because the target path exists and is not removable.</source>
+ <translation>لا يمكن نقل الملف من &quot;%1&quot; إلى &quot;%2&quot;، لأن مسار الوجهة موجود وغير قابل للحذف.</translation>
+ </message>
+ <message>
+ <source>Cannot move file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن نقل الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Moving file &quot;%1&quot; to &quot;%2&quot;.</source>
+ <translation>جارٍ نقل الملف &quot;%1&quot; إلى &quot;%2&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::TestRepository</name>
+ <message>
+ <source>Missing package manager core engine.</source>
+ <translation>محرك نواة مدير الحزم مفقود.</translation>
+ </message>
+ <message>
+ <source>Empty repository URL.</source>
+ <translation>رابط المستودع فارع.</translation>
+ </message>
+ <message>
+ <source>Download canceled.</source>
+ <translation>أُلغي التنزيل.</translation>
+ </message>
+ <message>
+ <source>Timeout while testing repository &quot;%1&quot;.</source>
+ <translation>نفذ الوقت أثناء اختبار المستودع &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot parse Updates.xml: %1</source>
+ <translation>لا يمكن فرز ملف Updates.xml: %1</translation>
+ </message>
+ <message>
+ <source>Cannot open Updates.xml for reading: %1</source>
+ <translation>لا يمكن فتح ملف Updates.xml للقراءة: %1</translation>
+ </message>
+ <message>
+ <source>Authentication failed.</source>
+ <translation>فشلت المصادقة.</translation>
+ </message>
+ <message>
+ <source>Unknown error while testing repository &quot;%1&quot;.</source>
+ <translation>حدث خطأ غير معروف أثناء اختبار المستودع &quot;%1&quot;.</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::FileDownloader</name>
+ <message>
+ <source>Download finished.</source>
+ <translation>انتهى التنزيل.</translation>
+ </message>
+ <message>
+ <source>Cryptographic hashes do not match.</source>
+ <translation>تجزئة التشفير لا تتطابق.</translation>
+ </message>
+ <message>
+ <source>Download canceled.</source>
+ <translation>أُلغي التنزيل.</translation>
+ </message>
+ <message>
+ <source>%1 of %2</source>
+ <translation>%1 من %2</translation>
+ </message>
+ <message>
+ <source>%1 downloaded.</source>
+ <translation>حُمّل %1.</translation>
+ </message>
+ <message>
+ <source>(%1/sec)</source>
+ <translation>(%1/ثانية)</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s), </source>
+ <translation>
+ <numerusform>%n يوم(أيام)، </numerusform>
+ <numerusform>يوم، </numerusform>
+ <numerusform>يومان، </numerusform>
+ <numerusform>%n أيام، </numerusform>
+ <numerusform>%n يوم، </numerusform>
+ <numerusform>%n يوم، </numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s), </source>
+ <translation>
+ <numerusform>%n ساعة(ساعات)، </numerusform>
+ <numerusform>ساعة، </numerusform>
+ <numerusform>ساعتان، </numerusform>
+ <numerusform>%n ساعات، </numerusform>
+ <numerusform>%n ساعة، </numerusform>
+ <numerusform>%n ساعة، </numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation>
+ <numerusform>%n دقيقة(دقائق)</numerusform>
+ <numerusform>دقيقة</numerusform>
+ <numerusform>دقيقتان</numerusform>
+ <numerusform>%n دقائق</numerusform>
+ <numerusform>%n دقيقة</numerusform>
+ <numerusform>%n دقيقة</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation>
+ <numerusform>%n ثانية(ثوان)</numerusform>
+ <numerusform>ثانية</numerusform>
+ <numerusform>ثانيتان</numerusform>
+ <numerusform>%n ثوان</numerusform>
+ <numerusform>%n ثانية</numerusform>
+ <numerusform>%n ثانية</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source> - %1%2%3%4 remaining.</source>
+ <translation> - يتبقى %1%2%3%4.</translation>
+ </message>
+ <message>
+ <source> - unknown time remaining.</source>
+ <translation> - الوقت المتبقي غير معلوم.</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::LocalFileDownloader</name>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Writing to file &quot;%1&quot; failed: %2</source>
+ <translation>فشلت الكتابة إلى الملف &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::ResourceFileDownloader</name>
+ <message>
+ <source>Cannot read resource file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن قراءة ملف المصادر &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::HttpDownloader</name>
+ <message>
+ <source>Cannot download %1. Writing to file &quot;%2&quot; failed: %3</source>
+ <translation>لا يمكن تنزيل %1. فشلت الكتابة إلى الملف &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Cannot download %1. Cannot create file &quot;%2&quot;: %3</source>
+ <translation>لا يمكن تنزيل %1. لا يمكن إنشاء الملف &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>%1 at %2</source>
+ <translation>%1 في %2</translation>
+ </message>
+ <message>
+ <source>Authentication request canceled.</source>
+ <translation>أُلغي طلب المصادقة.</translation>
+ </message>
+ <message>
+ <source>Secure Connection Failed</source>
+ <translation>فشل الاتصال الآمن</translation>
+ </message>
+ <message>
+ <source>There was an error during connection to: %1.</source>
+ <translation>كان هناك خطأ أثناء الاتصال إلى: %1.</translation>
+ </message>
+ <message>
+ <source>This could be a problem with the server&apos;s configuration, or it could be someone trying to impersonate the server.</source>
+ <translation>يمكن أن يكون هذا مشكلة في إعدادات الخادم، أو شخص ما يحاول انتحال الخادم.</translation>
+ </message>
+ <message>
+ <source>If you have connected to this server successfully in the past or trust this server, the error may be temporary and you can try again.</source>
+ <translation>إن اتصلت بالخادم بنجاحٍ في الماضي أو أنك تثق بهذا الخادم، قد يكون الخطأ مؤقتاً ويمكنك المحاولة مرة أخرى.</translation>
+ </message>
+ <message>
+ <source>Try again</source>
+ <translation>حاول مرة آخرى</translation>
+ </message>
+</context>
+<context>
+ <name>Job</name>
+ <message>
+ <source>Canceled</source>
+ <translation>ملغاة</translation>
+ </message>
+</context>
+<context>
+ <name>LocalPackageHub</name>
+ <message>
+ <source>%1 contains invalid content: %2</source>
+ <translation>%1 يحتوي على محتوى غير صالح: %2</translation>
+ </message>
+ <message>
+ <source>The file %1 does not exist.</source>
+ <translation>الملف %1 ليس موجوداً.</translation>
+ </message>
+ <message>
+ <source>Cannot open %1.</source>
+ <translation>لا يمكن فتح %1.</translation>
+ </message>
+ <message>
+ <source>Parse error in %1 at %2, %3: %4</source>
+ <translation>خطأ فرز في %1 في %2، %3، %4</translation>
+ </message>
+ <message>
+ <source>Root element %1 unexpected, should be &apos;Packages&apos;.</source>
+ <translation>عنصر الجذر %1 غير متوقع، يجب أن يكون &apos;Packages&apos;.</translation>
+ </message>
+</context>
+<context>
+ <name>LockFile</name>
+ <message>
+ <source>Cannot create lock file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء ملف القفل &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot write PID to lock file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن كتابة PID لإقفال الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot obtain the lock for file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن الحصول على القفل للملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot release the lock for file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن فك القفل للملف &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::Task</name>
+ <message>
+ <source>%1 started</source>
+ <translation>بدأ %1</translation>
+ </message>
+ <message>
+ <source>%1 cannot be stopped</source>
+ <translation>لا يمكن إيقاف %1</translation>
+ </message>
+ <message>
+ <source>Cannot stop task %1</source>
+ <translation>لا يمكن إيقاف العملية %1</translation>
+ </message>
+ <message>
+ <source>%1 cannot be paused</source>
+ <translation>لا يمكن الإيقاف المؤقت لـ %1</translation>
+ </message>
+ <message>
+ <source>Cannot pause task %1</source>
+ <translation>لا يمكن الإيقاف المؤقت للعملية %1</translation>
+ </message>
+ <message>
+ <source>Cannot resume task %1</source>
+ <translation>لا يمكن استئناف العملية %1</translation>
+ </message>
+ <message>
+ <source>%1 done</source>
+ <translation>انتهى %1</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::UpdateFinder</name>
+ <message>
+ <source>Cannot access the package information of this application.</source>
+ <translation>لا يمكن الوصول إلى معلومات الحزمة لهذا التطبيق.</translation>
+ </message>
+ <message>
+ <source>No package sources set for this application.</source>
+ <translation>لم تُعين مصادر حزم لهذا التطبيق.</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n update(s) found.</source>
+ <translation>
+ <numerusform>عثر على %n تحديث(تحديثات).</numerusform>
+ <numerusform>عثر على تحديث.</numerusform>
+ <numerusform>عثر على تحديثين.</numerusform>
+ <numerusform>عثر على %n تحديثات.</numerusform>
+ <numerusform>عثر على %n تحديث.</numerusform>
+ <numerusform>عثر على %n تحديث.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Downloading Updates.xml from update sources.</source>
+ <translation>جارٍ تنزيل ملف Updates.xml من مصادر التحديثات.</translation>
+ </message>
+ <message>
+ <source>Cannot download package source %1 from &quot;%2&quot;.</source>
+ <translation>لا يمكن تحميل مصدر الحزمة %1 من &quot;%2&quot;.</translation>
+ </message>
+ <message>
+ <source>Updates.xml file(s) downloaded from update sources.</source>
+ <translation>نُزّل ملف (ملفات) Updates.xml من مصادر التحديث.</translation>
+ </message>
+ <message>
+ <source>Computing applicable updates.</source>
+ <translation>جارٍ حساب التحديثات القابلة للتطبيق.</translation>
+ </message>
+ <message>
+ <source>Application updates computed.</source>
+ <translation>حُسبت تحديثات التطبيق.</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::CopyOperation</name>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;.</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot copy a non-existent file: %1</source>
+ <translation>لا يمكن نسخ ملف غير موجود: %1</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;:%2</translation>
+ </message>
+ <message>
+ <source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن نسخ الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Cannot delete file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot; %2</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file into &quot;%1&quot;: %2</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية إلى &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::MoveOperation</name>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;.</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;: %3</source>
+ <translation>لا يمكن نسخ الملف &quot;%1&quot; إلى &quot;%2&quot;: %3</translation>
+ </message>
+ <message>
+ <source>Cannot remove file &quot;%1&quot;.</source>
+ <translation>لا يمكن حذف الملف &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;: %2</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::DeleteOperation</name>
+ <message>
+ <source>Cannot create backup of file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;: %2</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::MkdirOperation</name>
+ <message>
+ <source>Cannot create directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء المجلد &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Unknown error.</source>
+ <translation>خطأ غير معروف.</translation>
+ </message>
+ <message>
+ <source>Cannot remove directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف المجلد &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::RmdirOperation</name>
+ <message>
+ <source>Cannot remove directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن حذف المجلد &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>The directory does not exist.</source>
+ <translation>المجلد غير موجود.</translation>
+ </message>
+ <message>
+ <source>Cannot recreate directory &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إعادة إنشاء المجلد &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::AppendFileOperation</name>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot find backup file for &quot;%1&quot;.</source>
+ <translation>لا يمكن العثور على ملف النسخة الاحتياطية لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;.</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;: %2</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::PrependFileOperation</name>
+ <message>
+ <source>Cannot backup file &quot;%1&quot;: %2</source>
+ <translation>لا يمكن إنشاء نسخة احتياطية من الملف &quot;%1&quot;: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for reading: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للقراءة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot open file &quot;%1&quot; for writing: %2</source>
+ <translation>لا يمكن فتح الملف &quot;%1&quot; للكتابة: %2</translation>
+ </message>
+ <message>
+ <source>Cannot find backup file for &quot;%1&quot;.</source>
+ <translation>لا يمكن العثور على ملف النسخة الاحتياطية لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;.</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;.</translation>
+ </message>
+ <message>
+ <source>Cannot restore backup file for &quot;%1&quot;: %2</source>
+ <translation>لا يمكن استعادة ملف النسخة الاحتياطية لـ &quot;%1&quot;: %2</translation>
+ </message>
+</context>
+<context>
+ <name>KDUpdater::UpdatesInfoData</name>
+ <message>
+ <source>Updates.xml contains invalid content: %1</source>
+ <translation>يشتمل ملف Updates.xml على محتوى غير صالح: %1</translation>
+ </message>
+ <message>
+ <source>Cannot read &quot;%1&quot;</source>
+ <translation>لا يمكن قراءة &quot;%1&apos;</translation>
+ </message>
+ <message>
+ <source>Parse error in %1 at %2, %3: %4</source>
+ <translation>خطأ في فرز %1 في %2، %3:%4</translation>
+ </message>
+ <message>
+ <source>Root element %1 unexpected, should be &quot;Updates&quot;.</source>
+ <translation>عنصر الجذر %1 غير متوقع، يجب أن يكون &quot;Updates&quot;.</translation>
+ </message>
+ <message>
+ <source>ApplicationName element is missing.</source>
+ <translation>عنصر ApplicationName مفقود.</translation>
+ </message>
+ <message>
+ <source>ApplicationVersion element is missing.</source>
+ <translation>عنصر ApplicationVersion مفقود.</translation>
+ </message>
+ <message>
+ <source>PackageUpdate element without Name</source>
+ <translation>عنصر PackageUpdate بدون Name</translation>
+ </message>
+ <message>
+ <source>PackageUpdate element without Version</source>
+ <translation>عنصر PackageUpdate بدون Version</translation>
+ </message>
+ <message>
+ <source>PackageUpdate element without ReleaseDate</source>
+ <translation>عنصر PackageUpdate بدون ReleaseDate</translation>
+ </message>
+</context>
+<context>
+ <name>QInstaller::QFileDialogProxy</name>
+ <message>
+ <source>User input is required but the output device is not associated with a terminal.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>InstallerBase</name>
+ <message>
+ <source>Unable to start installer</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS> \ No newline at end of file
diff --git a/src/sdk/translations/ifw_de.ts b/src/sdk/translations/ifw_de.ts
index 381c739da..39b541c8d 100644
--- a/src/sdk/translations/ifw_de.ts
+++ b/src/sdk/translations/ifw_de.ts
@@ -104,6 +104,13 @@
</message>
</context>
<context>
+ <name>InstallerBase</name>
+ <message>
+ <source>Unable to start installer</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
<name>InstallerCalculator</name>
<message>
<source>Components added as automatic dependencies:</source>
@@ -703,7 +710,7 @@
</message>
<message>
<source>Cannot copy file from &quot;%1&quot; to &quot;%2&quot;: %3</source>
- <translation>Konnte Datei &quot;%1&quot; nicht nach &quot;%1&quot; kopieren: %3</translation>
+ <translation>Konnte Datei &quot;%1&quot; nicht nach &quot;%2&quot; kopieren: %3</translation>
</message>
<message>
<source>Cannot move file from &quot;%1&quot; to &quot;%2&quot;: %3</source>
@@ -723,7 +730,7 @@
</message>
<message>
<source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;: %3</source>
- <translation type="unfinished"></translation>
+ <translation>Konnte Datei &quot;%1&quot; nicht nach &quot;%2&quot; kopieren: %3</translation>
</message>
<message>
<source>Cannot copy file &quot;%1&quot; to &quot;%2&quot;.</source>
@@ -766,7 +773,7 @@
</message>
<message>
<source>Cannot resolve isDefault in %1</source>
- <translation>Kann isDefault in %1 nicht auflösen.</translation>
+ <translation>Kann isDefault in %1 nicht auflösen</translation>
</message>
<message>
<source>There was an error loading the selected component. This component can not be installed.</source>
@@ -924,6 +931,17 @@
</message>
</context>
<context>
+ <name>QInstaller::ComponentSelectionPagePrivate</name>
+ <message>
+ <source>Filter</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>Fehler</translation>
+ </message>
+</context>
+<context>
<name>QInstaller::ConsumeOutputOperation</name>
<message>
<source>&lt;to be saved installer key name&gt; &lt;executable&gt; [argument1] [argument2] [...]</source>
@@ -1213,6 +1231,13 @@ Fehler beim Laden von %2</translation>
</message>
</context>
<context>
+ <name>QInstaller::ExtractArchiveOperation</name>
+ <message>
+ <source>Extracting &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
<name>QInstaller::ExtractArchiveOperation::Runnable</name>
<message>
<source>Cannot open archive &quot;%1&quot; for reading: %2</source>
@@ -1301,7 +1326,7 @@ Fehler beim Laden von %2</translation>
</message>
<message>
<source>Finished</source>
- <translation type="unfinished"></translation>
+ <translation>Abschließen</translation>
</message>
<message>
<source>Click %1 to exit the %2 Wizard.</source>
@@ -1516,7 +1541,7 @@ Fehler beim Laden von %2</translation>
</message>
<message>
<source>Retrieving meta information from remote repository... </source>
- <translation type="unfinished"></translation>
+ <translation>Metainformationen werden vom Installationsserver empfangen ... </translation>
</message>
<message>
<source>Error while extracting archive &quot;%1&quot;: %2</source>
@@ -1572,6 +1597,10 @@ Pakete werden heruntergeladen ...</translation>
<translation>Einige Komponenten konnten nicht vollständig entfernt werden, weil ein unbekannter Fehler aufgetreten ist.</translation>
</message>
<message>
+ <source>User input is required but the output device is not associated with a terminal.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<source>The directory you selected already exists and contains an installation. Choose a different target for installation.</source>
<translation>Der ausgewählte Verzeichnis existiert bereits und enthält eine Installation. Bitte wählen Sie einen anderen Zielordner aus.</translation>
</message>
@@ -1638,6 +1667,10 @@ Möchten Sie trotzdem fortsetzen?</translation>
<translation>Keine installierten Pakete gefunden.</translation>
</message>
<message>
+ <source>Cannot register component! Component with identifier %1 already exists.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<source>Application running in Uninstaller mode.</source>
<translation>Die Anwendung läuft im Deinstallationsmodus.</translation>
</message>
@@ -1823,7 +1856,7 @@ Möchten Sie trotzdem fortsetzen?</translation>
</message>
<message>
<source>Cannot remove file &quot;%1&quot;: %2</source>
- <translation type="unfinished"></translation>
+ <translation>Konnte Datei &quot;%1&quot; nicht löschen: %2</translation>
</message>
<message>
<source>Cannot create directory &quot;%1&quot;.</source>
@@ -2064,7 +2097,7 @@ Bitte kopieren Sie den Installer auf ein lokales Laufwerk</translation>
</message>
<message>
<source>Installing</source>
- <translation type="unfinished"></translation>
+ <translation>Installieren</translation>
</message>
<message>
<source>Updating</source>
@@ -2107,6 +2140,13 @@ Bitte kopieren Sie den Installer auf ein lokales Laufwerk</translation>
</message>
</context>
<context>
+ <name>QInstaller::QFileDialogProxy</name>
+ <message>
+ <source>User input is required but the output device is not associated with a terminal.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
<name>QInstaller::ReadyForInstallationPage</name>
<message>
<source>U&amp;ninstall</source>
@@ -2611,11 +2651,11 @@ als root aufrufen und dann &quot;Ok&quot; auswählen.</translation>
</message>
<message>
<source>Select All</source>
- <translation type="unfinished"></translation>
+ <translation>Alle auswählen</translation>
</message>
<message>
<source>Deselect All</source>
- <translation type="unfinished"></translation>
+ <translation>Alle abwählen</translation>
</message>
</context>
<context>
@@ -2667,29 +2707,4 @@ als root aufrufen und dann &quot;Ok&quot; auswählen.</translation>
<translation>Verbleibende Datei &quot;%1&quot; wegen &quot;%2&quot;: %3</translation>
</message>
</context>
-<context>
- <name>QInstaller::ComponentSelectionPagePrivate</name>
- <message>
- <source>Filter</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <source>Error</source>
- <translation>Fehler</translation>
- </message>
-</context>
-<context>
- <name>QInstaller::ExtractArchiveOperation</name>
- <message>
- <source>Extracting &quot;%1&quot;</source>
- <translation type="unfinished"></translation>
- </message>
-</context>
-<context>
- <name>InstallerBase</name>
- <message>
- <source>Unable to start installer</source>
- <translation type="unfinished"></translation>
- </message>
-</context>
</TS>