[merge] with upstream

This commit is contained in:
Philip 2018-04-18 09:01:59 +02:00
commit b8fd5bdeae
28 changed files with 467 additions and 248 deletions

View File

@ -59,6 +59,10 @@ Name[he]=קלמארס
Icon[he]=קלמארס Icon[he]=קלמארס
GenericName[he]=אשף התקנה GenericName[he]=אשף התקנה
Comment[he]=קלמארס - אשף התקנה Comment[he]=קלמארס - אשף התקנה
Name[hi]=Calamares
Icon[hi]=calamares
GenericName[hi]=ि
Comment[hi]=Calamares ि
Name[hr]=Calamares Name[hr]=Calamares
Icon[hr]=calamares Icon[hr]=calamares
GenericName[hr]=Instalacija sustava GenericName[hr]=Instalacija sustava

View File

@ -4,17 +4,17 @@
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="69"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="69"/>
<source>The &lt;strong&gt;boot environment&lt;/strong&gt; of this system.&lt;br&gt;&lt;br&gt;Older x86 systems only support &lt;strong&gt;BIOS&lt;/strong&gt;.&lt;br&gt;Modern systems usually use &lt;strong&gt;EFI&lt;/strong&gt;, but may also show up as BIOS if started in compatibility mode.</source> <source>The &lt;strong&gt;boot environment&lt;/strong&gt; of this system.&lt;br&gt;&lt;br&gt;Older x86 systems only support &lt;strong&gt;BIOS&lt;/strong&gt;.&lt;br&gt;Modern systems usually use &lt;strong&gt;EFI&lt;/strong&gt;, but may also show up as BIOS if started in compatibility mode.</source>
<translation type="unfinished"/> <translation> ि &lt;strong&gt;boot &lt;/strong&gt;&lt;br&gt;&lt;br&gt; x86 ि &lt;strong&gt;BIOS&lt;/strong&gt; &lt;br&gt;ि ि &lt;strong&gt;EFI&lt;/strong&gt; , ि compatibilty BIOS ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/>
<source>This system was started with an &lt;strong&gt;EFI&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from an EFI environment, this installer must deploy a boot loader application, like &lt;strong&gt;GRUB&lt;/strong&gt; or &lt;strong&gt;systemd-boot&lt;/strong&gt; on an &lt;strong&gt;EFI System Partition&lt;/strong&gt;. This is automatic, unless you choose manual partitioning, in which case you must choose it or create it on your own.</source> <source>This system was started with an &lt;strong&gt;EFI&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from an EFI environment, this installer must deploy a boot loader application, like &lt;strong&gt;GRUB&lt;/strong&gt; or &lt;strong&gt;systemd-boot&lt;/strong&gt; on an &lt;strong&gt;EFI System Partition&lt;/strong&gt;. This is automatic, unless you choose manual partitioning, in which case you must choose it or create it on your own.</source>
<translation type="unfinished"/> <translation> ि &lt;strong&gt;EFI&lt;/strong&gt; boot ि &lt;br&gt;&lt;br&gt;EFI ि ि &lt;strong&gt;GRUB&lt;/strong&gt; &lt;strong&gt;systemd-boot&lt;/strong&gt; boot loader &lt;strong&gt;EFI ि ि&lt;/strong&gt; ि : , ि ; ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="91"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="91"/>
<source>This system was started with a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from a BIOS environment, this installer must install a boot loader, like &lt;strong&gt;GRUB&lt;/strong&gt;, either at the beginning of a partition or on the &lt;strong&gt;Master Boot Record&lt;/strong&gt; near the beginning of the partition table (preferred). This is automatic, unless you choose manual partitioning, in which case you must set it up on your own.</source> <source>This system was started with a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from a BIOS environment, this installer must install a boot loader, like &lt;strong&gt;GRUB&lt;/strong&gt;, either at the beginning of a partition or on the &lt;strong&gt;Master Boot Record&lt;/strong&gt; near the beginning of the partition table (preferred). This is automatic, unless you choose manual partitioning, in which case you must set it up on your own.</source>
<translation type="unfinished"/> <translation> ि &lt;strong&gt;BIOS&lt;/strong&gt; boot ि &lt;br&gt;&lt;br&gt;BIOS ि ि &lt;strong&gt;GRUB&lt;/strong&gt; boot loader , ि ि &lt;strong&gt;Master Boot Record&lt;/strong&gt; ि ि (preferred) : , ि ; </translation>
</message> </message>
</context> </context>
<context> <context>
@ -22,27 +22,27 @@
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="59"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="59"/>
<source>Master Boot Record of %1</source> <source>Master Boot Record of %1</source>
<translation type="unfinished"/> <translation>%1 Master Boot Record</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="76"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="76"/>
<source>Boot Partition</source> <source>Boot Partition</source>
<translation type="unfinished"/> <translation>Boot ि</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="81"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="81"/>
<source>System Partition</source> <source>System Partition</source>
<translation type="unfinished"/> <translation>ि ि</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="111"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="111"/>
<source>Do not install a boot loader</source> <source>Do not install a boot loader</source>
<translation type="unfinished"/> <translation>Boot loader </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="125"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="125"/>
<source>%1 (%2)</source> <source>%1 (%2)</source>
<translation type="unfinished"/> <translation>%1 (%2)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -50,48 +50,48 @@
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="14"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="24"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="24"/>
<source>GlobalStorage</source> <source>GlobalStorage</source>
<translation type="unfinished"/> <translation>GlobalStorage</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="34"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="34"/>
<source>JobQueue</source> <source>JobQueue</source>
<translation type="unfinished"/> <translation>JobQueue</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="44"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="44"/>
<source>Modules</source> <source>Modules</source>
<translation type="unfinished"/> <translation>Modules</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="57"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="57"/>
<source>Type:</source> <source>Type:</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="64"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="64"/>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="78"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="78"/>
<source>none</source> <source>none</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="71"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="71"/>
<source>Interface:</source> <source>Interface:</source>
<translation type="unfinished"/> <translation> :</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="93"/> <location filename="../src/libcalamaresui/utils/DebugWindow.ui" line="93"/>
<source>Tools</source> <source>Tools</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/utils/DebugWindow.cpp" line="182"/> <location filename="../src/libcalamaresui/utils/DebugWindow.cpp" line="182"/>
<source>Debug information</source> <source>Debug information</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
</context> </context>
<context> <context>
@ -99,7 +99,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="77"/> <location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="77"/>
<source>Install</source> <source>Install</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
</context> </context>
<context> <context>
@ -107,7 +107,7 @@
<message> <message>
<location filename="../src/libcalamares/JobQueue.cpp" line="86"/> <location filename="../src/libcalamares/JobQueue.cpp" line="86"/>
<source>Done</source> <source>Done</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
</context> </context>
<context> <context>
@ -115,12 +115,12 @@
<message> <message>
<location filename="../src/libcalamares/ProcessJob.cpp" line="51"/> <location filename="../src/libcalamares/ProcessJob.cpp" line="51"/>
<source>Run command %1 %2</source> <source>Run command %1 %2</source>
<translation type="unfinished"/> <translation> %1%2 </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/ProcessJob.cpp" line="60"/> <location filename="../src/libcalamares/ProcessJob.cpp" line="60"/>
<source>Running command %1 %2</source> <source>Running command %1 %2</source>
<translation type="unfinished"/> <translation> %1%2 </translation>
</message> </message>
</context> </context>
<context> <context>
@ -128,32 +128,32 @@
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="265"/> <location filename="../src/libcalamares/PythonJob.cpp" line="265"/>
<source>Running %1 operation.</source> <source>Running %1 operation.</source>
<translation type="unfinished"/> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="280"/> <location filename="../src/libcalamares/PythonJob.cpp" line="280"/>
<source>Bad working directory path</source> <source>Bad working directory path</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="281"/> <location filename="../src/libcalamares/PythonJob.cpp" line="281"/>
<source>Working directory %1 for python job %2 is not readable.</source> <source>Working directory %1 for python job %2 is not readable.</source>
<translation type="unfinished"/> <translation>Python job %2 ि %1 read </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="291"/> <location filename="../src/libcalamares/PythonJob.cpp" line="291"/>
<source>Bad main script file</source> <source>Bad main script file</source>
<translation type="unfinished"/> <translation> script </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="292"/> <location filename="../src/libcalamares/PythonJob.cpp" line="292"/>
<source>Main script file %1 for python job %2 is not readable.</source> <source>Main script file %1 for python job %2 is not readable.</source>
<translation type="unfinished"/> <translation>Python job %2 ि script %1 read </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonJob.cpp" line="368"/> <location filename="../src/libcalamares/PythonJob.cpp" line="368"/>
<source>Boost.Python error in job &quot;%1&quot;.</source> <source>Boost.Python error in job &quot;%1&quot;.</source>
<translation type="unfinished"/> <translation>Job &quot;%1&quot; Boost.Python error</translation>
</message> </message>
</context> </context>
<context> <context>
@ -161,90 +161,91 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="73"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="73"/>
<source>&amp;Back</source> <source>&amp;Back</source>
<translation type="unfinished"/> <translation>&amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="74"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="74"/>
<source>&amp;Next</source> <source>&amp;Next</source>
<translation type="unfinished"/> <translation>&amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="279"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="279"/>
<source>&amp;Cancel</source> <source>&amp;Cancel</source>
<translation type="unfinished"/> <translation>&amp; </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="280"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="280"/>
<source>Cancel installation without changing the system.</source> <source>Cancel installation without changing the system.</source>
<translation type="unfinished"/> <translation>ि ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="291"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="291"/>
<source>Cancel installation?</source> <source>Cancel installation?</source>
<translation type="unfinished"/> <translation> ?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="292"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="292"/>
<source>Do you really want to cancel the current install process? <source>Do you really want to cancel the current install process?
The installer will quit and all changes will be lost.</source> The installer will quit and all changes will be lost.</source>
<translation type="unfinished"/> <translation> ि ?
</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="297"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="297"/>
<source>&amp;Yes</source> <source>&amp;Yes</source>
<translation type="unfinished"/> <translation>&amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="298"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="298"/>
<source>&amp;No</source> <source>&amp;No</source>
<translation type="unfinished"/> <translation>&amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="162"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="162"/>
<source>&amp;Close</source> <source>&amp;Close</source>
<translation type="unfinished"/> <translation>&amp; </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="212"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="212"/>
<source>Continue with setup?</source> <source>Continue with setup?</source>
<translation type="unfinished"/> <translation> ?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="213"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="213"/>
<source>The %1 installer is about to make changes to your disk in order to install %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source> <source>The %1 installer is about to make changes to your disk in order to install %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source>
<translation type="unfinished"/> <translation>%2 ि %1 ि &lt;br/&gt;&lt;strong&gt; &lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="218"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="218"/>
<source>&amp;Install now</source> <source>&amp;Install now</source>
<translation type="unfinished"/> <translation> &amp; </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="219"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="219"/>
<source>Go &amp;back</source> <source>Go &amp;back</source>
<translation type="unfinished"/> <translation>&amp; </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="248"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="248"/>
<source>&amp;Done</source> <source>&amp;Done</source>
<translation type="unfinished"/> <translation> &amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="249"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="249"/>
<source>The installation is complete. Close the installer.</source> <source>The installation is complete. Close the installer.</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"/> <translation>Error</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/>
<source>Installation Failed</source> <source>Installation Failed</source>
<translation type="unfinished"/> <translation> ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -252,22 +253,22 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/libcalamares/PythonHelper.cpp" line="270"/> <location filename="../src/libcalamares/PythonHelper.cpp" line="270"/>
<source>Unknown exception type</source> <source>Unknown exception type</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonHelper.cpp" line="284"/> <location filename="../src/libcalamares/PythonHelper.cpp" line="284"/>
<source>unparseable Python error</source> <source>unparseable Python error</source>
<translation type="unfinished"/> <translation>unparseable Python error</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonHelper.cpp" line="324"/> <location filename="../src/libcalamares/PythonHelper.cpp" line="324"/>
<source>unparseable Python traceback</source> <source>unparseable Python traceback</source>
<translation type="unfinished"/> <translation>unparseable Python traceback</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/PythonHelper.cpp" line="329"/> <location filename="../src/libcalamares/PythonHelper.cpp" line="329"/>
<source>Unfetchable Python error.</source> <source>Unfetchable Python error.</source>
<translation type="unfinished"/> <translation>Unfetchable Python error.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -275,12 +276,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/calamares/CalamaresWindow.cpp" line="44"/> <location filename="../src/calamares/CalamaresWindow.cpp" line="44"/>
<source>%1 Installer</source> <source>%1 Installer</source>
<translation type="unfinished"/> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/calamares/CalamaresWindow.cpp" line="111"/> <location filename="../src/calamares/CalamaresWindow.cpp" line="111"/>
<source>Show debug information</source> <source>Show debug information</source>
<translation type="unfinished"/> <translation> ि</translation>
</message> </message>
</context> </context>
<context> <context>
@ -288,27 +289,27 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="96"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="96"/>
<source>This computer does not satisfy the minimum requirements for installing %1.&lt;br/&gt;Installation cannot continue. &lt;a href=&quot;#details&quot;&gt;Details...&lt;/a&gt;</source> <source>This computer does not satisfy the minimum requirements for installing %1.&lt;br/&gt;Installation cannot continue. &lt;a href=&quot;#details&quot;&gt;Details...&lt;/a&gt;</source>
<translation type="unfinished"/> <translation> %1 &lt;br/&gt; &lt;a href=&quot;#details&quot;&gt;ि...&lt;/a&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="113"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="113"/>
<source>This computer does not satisfy some of the recommended requirements for installing %1.&lt;br/&gt;Installation can continue, but some features might be disabled.</source> <source>This computer does not satisfy some of the recommended requirements for installing %1.&lt;br/&gt;Installation can continue, but some features might be disabled.</source>
<translation type="unfinished"/> <translation> %1 &lt;br/&gt; , ि ि िि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="151"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="151"/>
<source>This program will ask you some questions and set up %2 on your computer.</source> <source>This program will ask you some questions and set up %2 on your computer.</source>
<translation type="unfinished"/> <translation> program %2 </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="174"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="174"/>
<source>For best results, please ensure that this computer:</source> <source>For best results, please ensure that this computer:</source>
<translation type="unfinished"/> <translation> ि ि, िि ि :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="202"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="202"/>
<source>System requirements</source> <source>System requirements</source>
<translation type="unfinished"/> <translation>ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -316,32 +317,32 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.ui" line="14"/> <location filename="../src/modules/partition/gui/ChoicePage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="128"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="128"/>
<source>After:</source> <source>After:</source>
<translation type="unfinished"/> <translation> :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="235"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="235"/>
<source>&lt;strong&gt;Manual partitioning&lt;/strong&gt;&lt;br/&gt;You can create or resize partitions yourself.</source> <source>&lt;strong&gt;Manual partitioning&lt;/strong&gt;&lt;br/&gt;You can create or resize partitions yourself.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt; ि&lt;/strong&gt;&lt;br/&gt; ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="998"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="998"/>
<source>Boot loader location:</source> <source>Boot loader location:</source>
<translation type="unfinished"/> <translation>Boot loader location:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="942"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="942"/>
<source>%1 will be shrunk to %2MB and a new %3MB partition will be created for %4.</source> <source>%1 will be shrunk to %2MB and a new %3MB partition will be created for %4.</source>
<translation type="unfinished"/> <translation>%1 %2MB ि %4 ि %3MB ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="126"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="126"/>
<source>Select storage de&amp;vice:</source> <source>Select storage de&amp;vice:</source>
<translation type="unfinished"/> <translation>Storage ि&amp; :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="127"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="127"/>
@ -349,42 +350,42 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="970"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="970"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1049"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1049"/>
<source>Current:</source> <source>Current:</source>
<translation type="unfinished"/> <translation> :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="795"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="795"/>
<source>Reuse %1 as home partition for %2.</source> <source>Reuse %1 as home partition for %2.</source>
<translation type="unfinished"/> <translation>%2 ि ि %1 </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="925"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="925"/>
<source>&lt;strong&gt;Select a partition to shrink, then drag the bottom bar to resize&lt;/strong&gt;</source> <source>&lt;strong&gt;Select a partition to shrink, then drag the bottom bar to resize&lt;/strong&gt;</source>
<translation type="unfinished"/> <translation>&lt;strong&gt; ि ि , ि bar &lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1040"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1040"/>
<source>&lt;strong&gt;Select a partition to install on&lt;/strong&gt;</source> <source>&lt;strong&gt;Select a partition to install on&lt;/strong&gt;</source>
<translation type="unfinished"/> <translation>&lt;strong&gt; ि ि &lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1096"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1096"/>
<source>An EFI system partition cannot be found anywhere on this system. Please go back and use manual partitioning to set up %1.</source> <source>An EFI system partition cannot be found anywhere on this system. Please go back and use manual partitioning to set up %1.</source>
<translation type="unfinished"/> <translation> ि EFI ि ि ि %1 ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1105"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1105"/>
<source>The EFI system partition at %1 will be used for starting %2.</source> <source>The EFI system partition at %1 will be used for starting %2.</source>
<translation type="unfinished"/> <translation>%1 EFI ि ि %2 ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1113"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1113"/>
<source>EFI system partition:</source> <source>EFI system partition:</source>
<translation type="unfinished"/> <translation>EFI ि ि:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1200"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1200"/>
<source>This storage device does not seem to have an operating system on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source> <source>This storage device does not seem to have an operating system on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source>
<translation type="unfinished"/> <translation> storage ि ि ि ि ?&lt;br/&gt; storage ि ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1205"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1205"/>
@ -392,12 +393,12 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1264"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1264"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1288"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1288"/>
<source>&lt;strong&gt;Erase disk&lt;/strong&gt;&lt;br/&gt;This will &lt;font color=&quot;red&quot;&gt;delete&lt;/font&gt; all data currently present on the selected storage device.</source> <source>&lt;strong&gt;Erase disk&lt;/strong&gt;&lt;br/&gt;This will &lt;font color=&quot;red&quot;&gt;delete&lt;/font&gt; all data currently present on the selected storage device.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt;ि erase &lt;/strong&gt;&lt;br/&gt; ि storage ि &lt;font color=&quot;red&quot;&gt;delete&lt;/font&gt; </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1232"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1232"/>
<source>This storage device has %1 on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source> <source>This storage device has %1 on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source>
<translation type="unfinished"/> <translation> storage ि %1 ?&lt;br/&gt; storage ि ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1209"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1209"/>
@ -405,7 +406,7 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1260"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1260"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1284"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1284"/>
<source>&lt;strong&gt;Install alongside&lt;/strong&gt;&lt;br/&gt;The installer will shrink a partition to make room for %1.</source> <source>&lt;strong&gt;Install alongside&lt;/strong&gt;&lt;br/&gt;The installer will shrink a partition to make room for %1.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt; &lt;/strong&gt;&lt;br/&gt; %1 ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1213"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1213"/>
@ -413,17 +414,17 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1268"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1268"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1292"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1292"/>
<source>&lt;strong&gt;Replace a partition&lt;/strong&gt;&lt;br/&gt;Replaces a partition with %1.</source> <source>&lt;strong&gt;Replace a partition&lt;/strong&gt;&lt;br/&gt;Replaces a partition with %1.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt;ि &lt;/strong&gt; ि %1 </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1255"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1255"/>
<source>This storage device already has an operating system on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source> <source>This storage device already has an operating system on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source>
<translation type="unfinished"/> <translation> storage ि ि ि ?&lt;br/&gt; storage ि ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1279"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1279"/>
<source>This storage device has multiple operating systems on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source> <source>This storage device has multiple operating systems on it. What would you like to do?&lt;br/&gt;You will be able to review and confirm your choices before any change is made to the storage device.</source>
<translation type="unfinished"/> <translation> storage ि ि ि ि ?&lt;br/&gt; storage ि ि ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -431,17 +432,17 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="45"/> <location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="45"/>
<source>Clear mounts for partitioning operations on %1</source> <source>Clear mounts for partitioning operations on %1</source>
<translation type="unfinished"/> <translation>%1 ि mount </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="53"/> <location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="53"/>
<source>Clearing mounts for partitioning operations on %1.</source> <source>Clearing mounts for partitioning operations on %1.</source>
<translation type="unfinished"/> <translation>%1 ि mount </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="190"/> <location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="190"/>
<source>Cleared all mounts for %1</source> <source>Cleared all mounts for %1</source>
<translation type="unfinished"/> <translation>%1 ि mount ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -449,22 +450,22 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="42"/> <location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="42"/>
<source>Clear all temporary mounts.</source> <source>Clear all temporary mounts.</source>
<translation type="unfinished"/> <translation> mount </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="49"/> <location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="49"/>
<source>Clearing all temporary mounts.</source> <source>Clearing all temporary mounts.</source>
<translation type="unfinished"/> <translation> mount </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="60"/> <location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="60"/>
<source>Cannot get list of temporary mounts.</source> <source>Cannot get list of temporary mounts.</source>
<translation type="unfinished"/> <translation> mount ि</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="99"/> <location filename="../src/modules/partition/jobs/ClearTempMountsJob.cpp" line="99"/>
<source>Cleared all temporary mounts.</source> <source>Cleared all temporary mounts.</source>
<translation type="unfinished"/> <translation> mount ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -472,12 +473,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="113"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="113"/>
<source>Could not run command.</source> <source>Could not run command.</source>
<translation type="unfinished"/> <translation> run </translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="114"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="114"/>
<source>No rootMountPoint is defined, so command cannot be run in the target environment.</source> <source>No rootMountPoint is defined, so command cannot be run in the target environment.</source>
<translation type="unfinished"/> <translation> rootMountPoint िि , ि run ि </translation>
</message> </message>
</context> </context>
<context> <context>
@ -485,7 +486,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="75"/> <location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="75"/>
<source>Contextual Processes Job</source> <source>Contextual Processes Job</source>
<translation type="unfinished"/> <translation>Contextual Processes Job</translation>
</message> </message>
</context> </context>
<context> <context>
@ -493,22 +494,22 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="14"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="14"/>
<source>Create a Partition</source> <source>Create a Partition</source>
<translation type="unfinished"/> <translation> ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="48"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="48"/>
<source> MiB</source> <source> MiB</source>
<translation type="unfinished"/> <translation> MiB</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="55"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="55"/>
<source>Partition &amp;Type:</source> <source>Partition &amp;Type:</source>
<translation type="unfinished"/> <translation>ि &amp; :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="67"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="67"/>
<source>&amp;Primary</source> <source>&amp;Primary</source>
<translation type="unfinished"/> <translation>&amp;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="77"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="77"/>
@ -528,7 +529,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/>
<source>Flags:</source> <source>Flags:</source>
<translation type="unfinished"/> <translation>Flags:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="161"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="161"/>
@ -543,7 +544,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="68"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="68"/>
<source>En&amp;crypt</source> <source>En&amp;crypt</source>
<translation type="unfinished"/> <translation>En&amp;crypt</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="177"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="177"/>
@ -553,12 +554,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="182"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="182"/>
<source>Primary</source> <source>Primary</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="199"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="199"/>
<source>GPT</source> <source>GPT</source>
<translation type="unfinished"/> <translation>GPT</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="288"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="288"/>
@ -609,12 +610,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionTableDialog.ui" line="72"/> <location filename="../src/modules/partition/gui/CreatePartitionTableDialog.ui" line="72"/>
<source>Master Boot Record (MBR)</source> <source>Master Boot Record (MBR)</source>
<translation type="unfinished"/> <translation>Master Boot Record (MBR)</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionTableDialog.ui" line="82"/> <location filename="../src/modules/partition/gui/CreatePartitionTableDialog.ui" line="82"/>
<source>GUID Partition Table (GPT)</source> <source>GUID Partition Table (GPT)</source>
<translation type="unfinished"/> <translation>GUID Partition Table (GPT)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -769,7 +770,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/core/DeviceModel.cpp" line="80"/> <location filename="../src/modules/partition/core/DeviceModel.cpp" line="80"/>
<source>%1 - %2 (%3)</source> <source>%1 - %2 (%3)</source>
<translation type="unfinished"/> <translation>%1 - %2 (%3)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -795,7 +796,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/dummycpp/DummyCppJob.cpp" line="46"/> <location filename="../src/modules/dummycpp/DummyCppJob.cpp" line="46"/>
<source>Dummy C++ Job</source> <source>Dummy C++ Job</source>
<translation type="unfinished"/> <translation>Dummy C++ Job</translation>
</message> </message>
</context> </context>
<context> <context>
@ -818,12 +819,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="70"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="70"/>
<source>Format</source> <source>Format</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="89"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="89"/>
<source>Warning: Formatting the partition will erase all existing data.</source> <source>Warning: Formatting the partition will erase all existing data.</source>
<translation type="unfinished"/> <translation>: ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="99"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="99"/>
@ -838,7 +839,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="129"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="129"/>
<source> MiB</source> <source> MiB</source>
<translation type="unfinished"/> <translation> MiB</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="136"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="136"/>
@ -848,7 +849,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="149"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.ui" line="149"/>
<source>Flags:</source> <source>Flags:</source>
<translation type="unfinished"/> <translation>Flags:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.cpp" line="307"/> <location filename="../src/modules/partition/gui/EditExistingPartitionDialog.cpp" line="307"/>
@ -861,7 +862,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/EncryptWidget.ui" line="14"/> <location filename="../src/modules/partition/gui/EncryptWidget.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/EncryptWidget.ui" line="32"/> <location filename="../src/modules/partition/gui/EncryptWidget.ui" line="32"/>
@ -889,7 +890,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="123"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="123"/>
<source>Set partition information</source> <source>Set partition information</source>
<translation type="unfinished"/> <translation>ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="147"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="147"/>
@ -927,7 +928,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="14"/> <location filename="../src/modules/finished/FinishedPage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="95"/> <location filename="../src/modules/finished/FinishedPage.ui" line="95"/>
@ -1014,7 +1015,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalViewStep.cpp" line="45"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalViewStep.cpp" line="45"/>
<source>Script</source> <source>Script</source>
<translation type="unfinished"/> <translation>Script</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1035,7 +1036,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/keyboard/KeyboardViewStep.cpp" line="50"/> <location filename="../src/modules/keyboard/KeyboardViewStep.cpp" line="50"/>
<source>Keyboard</source> <source>Keyboard</source>
<translation></translation> <translation> </translation>
</message> </message>
</context> </context>
<context> <context>
@ -1053,7 +1054,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/locale/LCLocaleDialog.cpp" line="66"/> <location filename="../src/modules/locale/LCLocaleDialog.cpp" line="66"/>
<source>&amp;Cancel</source> <source>&amp;Cancel</source>
<translation type="unfinished"/> <translation>&amp; </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/locale/LCLocaleDialog.cpp" line="67"/> <location filename="../src/modules/locale/LCLocaleDialog.cpp" line="67"/>
@ -1066,7 +1067,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/license/LicensePage.ui" line="14"/> <location filename="../src/modules/license/LicensePage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="88"/> <location filename="../src/modules/license/LicensePage.cpp" line="88"/>
@ -1176,7 +1177,7 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/locale/LocalePage.cpp" line="480"/> <location filename="../src/modules/locale/LocalePage.cpp" line="480"/>
<source>%1 (%2)</source> <source>%1 (%2)</source>
<extracomment>Language (Country)</extracomment> <extracomment>Language (Country)</extracomment>
<translation type="unfinished"/> <translation>%1 (%2)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1453,7 +1454,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
<source>The configuration file is malformed</source> <source>The configuration file is malformed</source>
<translation type="unfinished"/> <translation>ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="269"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="269"/>
@ -1471,7 +1472,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/keyboard/KeyboardPage.ui" line="14"/> <location filename="../src/modules/keyboard/KeyboardPage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/keyboard/KeyboardPage.ui" line="70"/> <location filename="../src/modules/keyboard/KeyboardPage.ui" line="70"/>
@ -1489,7 +1490,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="14"/> <location filename="../src/modules/users/page_usersetup.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="36"/> <location filename="../src/modules/users/page_usersetup.ui" line="36"/>
@ -1506,7 +1507,7 @@ The installer will quit and all changes will be lost.</source>
<location filename="../src/modules/users/page_usersetup.ui" line="437"/> <location filename="../src/modules/users/page_usersetup.ui" line="437"/>
<location filename="../src/modules/users/page_usersetup.ui" line="582"/> <location filename="../src/modules/users/page_usersetup.ui" line="582"/>
<source>font-weight: normal</source> <source>font-weight: normal</source>
<translation type="unfinished"/> <translation>font-weight: normal</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="200"/> <location filename="../src/modules/users/page_usersetup.ui" line="200"/>
@ -1559,7 +1560,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="193"/> <location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="193"/>
<source>Root</source> <source>Root</source>
<translation type="unfinished"/> <translation>Root</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="196"/> <location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="196"/>
@ -1569,7 +1570,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="198"/> <location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="198"/>
<source>Boot</source> <source>Boot</source>
<translation type="unfinished"/> <translation>Boot</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="201"/> <location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="201"/>
@ -1594,7 +1595,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="224"/> <location filename="../src/modules/partition/gui/PartitionLabelsView.cpp" line="224"/>
<source>%1 %2</source> <source>%1 %2</source>
<translation type="unfinished"/> <translation>%1 %2</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1637,7 +1638,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="14"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="22"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="22"/>
@ -1685,12 +1686,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="70"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="70"/>
<source>Gathering system information...</source> <source>Gathering system information...</source>
<translation type="unfinished"/> <translation>ि ...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="121"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="121"/>
<source>Partitions</source> <source>Partitions</source>
<translation type="unfinished"/> <translation>ि</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="158"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="158"/>
@ -1740,12 +1741,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="239"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="239"/>
<source>Current:</source> <source>Current:</source>
<translation type="unfinished"/> <translation> :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="256"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="256"/>
<source>After:</source> <source>After:</source>
<translation type="unfinished"/> <translation> :</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="399"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="399"/>
@ -1783,7 +1784,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="41"/> <location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="41"/>
<source>Plasma Look-and-Feel Job</source> <source>Plasma Look-and-Feel Job</source>
<translation type="unfinished"/> <translation>Plasma Look-and-Feel Job</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="73"/> <location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="73"/>
@ -1797,12 +1798,12 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/plasmalnf/page_plasmalnf.ui" line="14"/> <location filename="../src/modules/plasmalnf/page_plasmalnf.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/plasmalnf/page_plasmalnf.ui" line="20"/> <location filename="../src/modules/plasmalnf/page_plasmalnf.ui" line="20"/>
<source>Placeholder</source> <source>Placeholder</source>
<translation type="unfinished"/> <translation>Placeholder</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="64"/> <location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="64"/>
@ -1905,12 +1906,12 @@ Output:
<message> <message>
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="206"/> <location filename="../src/modules/partition/core/KPMHelpers.cpp" line="206"/>
<source>extended</source> <source>extended</source>
<translation type="unfinished"/> <translation>ि</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="208"/> <location filename="../src/modules/partition/core/KPMHelpers.cpp" line="208"/>
<source>unformatted</source> <source>unformatted</source>
<translation type="unfinished"/> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="210"/> <location filename="../src/modules/partition/core/KPMHelpers.cpp" line="210"/>
@ -1928,7 +1929,7 @@ Output:
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.ui" line="14"/> <location filename="../src/modules/partition/gui/ReplaceWidget.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="134"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="134"/>
@ -1990,12 +1991,12 @@ Output:
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="270"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="270"/>
<source>The EFI system partition at %1 will be used for starting %2.</source> <source>The EFI system partition at %1 will be used for starting %2.</source>
<translation type="unfinished"/> <translation>%1 EFI ि ि %2 ि ि </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="286"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="286"/>
<source>EFI system partition:</source> <source>EFI system partition:</source>
<translation type="unfinished"/> <translation>EFI ि ि:</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2003,7 +2004,7 @@ Output:
<message> <message>
<location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="68"/> <location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="68"/>
<source>Gathering system information...</source> <source>Gathering system information...</source>
<translation type="unfinished"/> <translation>ि ...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="116"/> <location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="116"/>
@ -2397,12 +2398,12 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="14"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="24"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="24"/>
<source>Placeholder</source> <source>Placeholder</source>
<translation type="unfinished"/> <translation>Placeholder</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/>
@ -2414,14 +2415,14 @@ Output:
<location filename="../src/modules/tracking/page_trackingstep.ui" line="185"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="185"/>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="247"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="247"/>
<source>TextLabel</source> <source>TextLabel</source>
<translation type="unfinished"/> <translation>TextLabel</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="133"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="133"/>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="195"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="195"/>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="257"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="257"/>
<source>...</source> <source>...</source>
<translation type="unfinished"/> <translation>...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/>
@ -2504,7 +2505,7 @@ Output:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.ui" line="14"/> <location filename="../src/modules/welcome/WelcomePage.ui" line="14"/>
<source>Form</source> <source>Form</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.ui" line="75"/> <location filename="../src/modules/welcome/WelcomePage.ui" line="75"/>
@ -2534,27 +2535,27 @@ Output:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/>
<source>&lt;h1&gt;Welcome to the %1 installer.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to the %1 installer.&lt;/h1&gt;</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;%1 &lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/>
<source>&lt;h1&gt;Welcome to the Calamares installer for %1.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to the Calamares installer for %1.&lt;/h1&gt;</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;%1 ि Calamares &lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="73"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="73"/>
<source>About %1 installer</source> <source>About %1 installer</source>
<translation type="unfinished"/> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/>
<source>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to: Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, Rohan Garg and the &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</source> <source>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to: Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, Rohan Garg and the &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;Calamares अनुवादक टीम&lt;/a&gt; का धन्यवाद।&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="201"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="201"/>
<source>%1 support</source> <source>%1 support</source>
<translation type="unfinished"/> <translation>%1 </translation>
</message> </message>
</context> </context>
<context> <context>
@ -2562,7 +2563,7 @@ Output:
<message> <message>
<location filename="../src/modules/welcome/WelcomeViewStep.cpp" line="51"/> <location filename="../src/modules/welcome/WelcomeViewStep.cpp" line="51"/>
<source>Welcome</source> <source>Welcome</source>
<translation type="unfinished"/> <translation></translation>
</message> </message>
</context> </context>
</TS> </TS>

View File

@ -475,12 +475,12 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="113"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="113"/>
<source>Could not run command.</source> <source>Could not run command.</source>
<translation type="unfinished"/> <translation>Tidak dapat menjalankan perintah</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="114"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="114"/>
<source>No rootMountPoint is defined, so command cannot be run in the target environment.</source> <source>No rootMountPoint is defined, so command cannot be run in the target environment.</source>
<translation type="unfinished"/> <translation>rootMountPoint tidak didefiniskan, sehingga perintah tidak dapat dijalankan dalam lingkungan environment</translation>
</message> </message>
</context> </context>
<context> <context>
@ -488,7 +488,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="75"/> <location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="75"/>
<source>Contextual Processes Job</source> <source>Contextual Processes Job</source>
<translation type="unfinished"/> <translation>Memproses tugas kontekstual</translation>
</message> </message>
</context> </context>
<context> <context>
@ -526,7 +526,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="151"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="151"/>
<source>LVM LV name</source> <source>LVM LV name</source>
<translation type="unfinished"/> <translation>Nama LV LVM</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/>
@ -935,7 +935,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="95"/> <location filename="../src/modules/finished/FinishedPage.ui" line="95"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"/> <translation>Ketika kotak ini dicentang, sistem kamu akan segera dimulai kembali saat mengklik Selesai atau menutup pemasang.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="98"/> <location filename="../src/modules/finished/FinishedPage.ui" line="98"/>
@ -1004,7 +1004,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/>
<source>Please install KDE Konsole and try again!</source> <source>Please install KDE Konsole and try again!</source>
<translation type="unfinished"/> <translation>Silahkan pasang KDE Konsole dan ulangi lagi!</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/>
@ -1061,7 +1061,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/locale/LCLocaleDialog.cpp" line="67"/> <location filename="../src/modules/locale/LCLocaleDialog.cpp" line="67"/>
<source>&amp;OK</source> <source>&amp;OK</source>
<translation type="unfinished"/> <translation>&amp;OK</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1215,7 +1215,7 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/netinstall/NetInstallPage.cpp" line="104"/> <location filename="../src/modules/netinstall/NetInstallPage.cpp" line="104"/>
<source>Network Installation. (Disabled: Received invalid groups data)</source> <source>Network Installation. (Disabled: Received invalid groups data)</source>
<translation type="unfinished"/> <translation>Pemasangan jaringan. (Menonaktifkan: Penerimaan kelompok data yang tidak sah)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1231,57 +1231,57 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="67"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="67"/>
<source>Password is too short</source> <source>Password is too short</source>
<translation type="unfinished"/> <translation>Kata sandi terlalu pendek</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="89"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="89"/>
<source>Password is too long</source> <source>Password is too long</source>
<translation type="unfinished"/> <translation>Kata sandi terlalu panjang</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="155"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="155"/>
<source>Password is too weak</source> <source>Password is too weak</source>
<translation type="unfinished"/> <translation>kata sandi terlalu lemah</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
<source>Memory allocation error when setting &apos;%1&apos;</source> <source>Memory allocation error when setting &apos;%1&apos;</source>
<translation type="unfinished"/> <translation>Kesalahan alokasi memori saat menyetel &apos;%1&apos;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
<source>Memory allocation error</source> <source>Memory allocation error</source>
<translation type="unfinished"/> <translation>Kesalahan alokasi memori</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/>
<source>The password is the same as the old one</source> <source>The password is the same as the old one</source>
<translation type="unfinished"/> <translation>Kata sandi sama dengan yang lama</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
<source>The password is a palindrome</source> <source>The password is a palindrome</source>
<translation type="unfinished"/> <translation>Kata sandi palindrom</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
<source>The password differs with case changes only</source> <source>The password differs with case changes only</source>
<translation type="unfinished"/> <translation>Kata sandi berbeda hanya dengan perubahan huruf saja</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
<source>The password is too similar to the old one</source> <source>The password is too similar to the old one</source>
<translation type="unfinished"/> <translation>Kata sandi terlalu mirip dengan yang lama</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
<source>The password contains the user name in some form</source> <source>The password contains the user name in some form</source>
<translation type="unfinished"/> <translation>Kata sandi berisi nama pengguna dalam beberapa form</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
<source>The password contains words from the real name of the user in some form</source> <source>The password contains words from the real name of the user in some form</source>
<translation type="unfinished"/> <translation>Kata sandi berisi kata-kata dari nama asli pengguna dalam beberapa form</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>

View File

@ -172,7 +172,7 @@
<location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="279"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="279"/>
<source>&amp;Cancel</source> <source>&amp;Cancel</source>
<translation>A&amp;tšaukti</translation> <translation>A&amp;tsisakyti</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/>
@ -189,7 +189,7 @@
<location filename="../src/libcalamaresui/ViewManager.cpp" line="292"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="292"/>
<source>Do you really want to cancel the current install process? <source>Do you really want to cancel the current install process?
The installer will quit and all changes will be lost.</source> The installer will quit and all changes will be lost.</source>
<translation>Ar tikrai norite atšaukti dabartinio diegimo procesą? <translation>Ar tikrai norite atsisakyti dabartinio diegimo proceso?
Diegimo programa užbaigs darbą ir visi pakeitimai bus prarasti.</translation> Diegimo programa užbaigs darbą ir visi pakeitimai bus prarasti.</translation>
</message> </message>
<message> <message>
@ -1648,7 +1648,7 @@ Diegimo programa užbaigs darbą ir visi pakeitimai bus prarasti.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="51"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="51"/>
<source>&amp;Revert All Changes</source> <source>&amp;Revert All Changes</source>
<translation>&amp;Atšaukti visus pakeitimus</translation> <translation>&amp;Sugrąžinti visus pakeitimus</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="87"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="87"/>

View File

@ -1244,7 +1244,7 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
<source>Memory allocation error when setting &apos;%1&apos;</source> <source>Memory allocation error when setting &apos;%1&apos;</source>
<translation type="unfinished"/> <translation>Chyba počas vyhradzovania pamäte pri nastavovaní %1</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
@ -1259,12 +1259,12 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
<source>The password is a palindrome</source> <source>The password is a palindrome</source>
<translation type="unfinished"/> <translation>Heslo je palindróm</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
<source>The password differs with case changes only</source> <source>The password differs with case changes only</source>
<translation type="unfinished"/> <translation>Heslo sa odlišuje iba vo veľkosti písmen</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
@ -1289,7 +1289,7 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/>
<source>The password contains less than %1 digits</source> <source>The password contains less than %1 digits</source>
<translation type="unfinished"/> <translation>Heslo obsahuje menej ako %1 číslic</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/>
@ -1299,7 +1299,7 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/>
<source>The password contains less than %1 uppercase letters</source> <source>The password contains less than %1 uppercase letters</source>
<translation type="unfinished"/> <translation>Heslo obsahuje menej ako %1 veľkých písmen</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/>
@ -1309,7 +1309,7 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/>
<source>The password contains less than %1 lowercase letters</source> <source>The password contains less than %1 lowercase letters</source>
<translation type="unfinished"/> <translation>Heslo obsahuje menej ako %1 malých písmen</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/>
@ -1399,12 +1399,12 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
<source>The password fails the dictionary check - %1</source> <source>The password fails the dictionary check - %1</source>
<translation type="unfinished"/> <translation>Heslo zlyhalo pri slovníkovej kontrole - %1</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
<source>The password fails the dictionary check</source> <source>The password fails the dictionary check</source>
<translation type="unfinished"/> <translation>Heslo zlyhalo pri slovníkovej kontrole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
@ -1825,7 +1825,8 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="263"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="263"/>
<source> <source>
There was no output from the command.</source> There was no output from the command.</source>
<translation type="unfinished"/> <translation>
Žiadny výstup z príkazu.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="264"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="264"/>

Binary file not shown.

View File

@ -10,6 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-07 18:58+0100\n" "POT-Creation-Date: 2018-02-07 18:58+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Octavian Pylos <caspian7pena@gmail.com>, 2018\n"
"Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n" "Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -19,35 +20,35 @@ msgstr ""
#: src/modules/dummypython/main.py:44 #: src/modules/dummypython/main.py:44
msgid "Dummy python job." msgid "Dummy python job."
msgstr "" msgstr "Dummy python job."
#: src/modules/dummypython/main.py:97 #: src/modules/dummypython/main.py:97
msgid "Dummy python step {}" msgid "Dummy python step {}"
msgstr "" msgstr "Dummy python step {}"
#: src/modules/machineid/main.py:35 #: src/modules/machineid/main.py:35
msgid "Generate machine-id." msgid "Generate machine-id."
msgstr "" msgstr "machine-id generate करें।"
#: src/modules/packages/main.py:60 #: src/modules/packages/main.py:60
#, python-format #, python-format
msgid "Processing packages (%(count)d / %(total)d)" msgid "Processing packages (%(count)d / %(total)d)"
msgstr "" msgstr "पैकेज (%(count)d / %(total)d) process किए जा रहे हैं"
#: src/modules/packages/main.py:62 src/modules/packages/main.py:72 #: src/modules/packages/main.py:62 src/modules/packages/main.py:72
msgid "Install packages." msgid "Install packages."
msgstr "" msgstr "पैकेज इंस्टॉल करें।"
#: src/modules/packages/main.py:65 #: src/modules/packages/main.py:65
#, python-format #, python-format
msgid "Installing one package." msgid "Installing one package."
msgid_plural "Installing %(num)d packages." msgid_plural "Installing %(num)d packages."
msgstr[0] "" msgstr[0] "एक पैकेज इंस्टॉल किया जा रहा है।"
msgstr[1] "" msgstr[1] "%(num)d पैकेज इंस्टॉल किए जा रहे हैं।"
#: src/modules/packages/main.py:68 #: src/modules/packages/main.py:68
#, python-format #, python-format
msgid "Removing one package." msgid "Removing one package."
msgid_plural "Removing %(num)d packages." msgid_plural "Removing %(num)d packages."
msgstr[0] "" msgstr[0] "एक पैकेज हटाया जा रहा है।"
msgstr[1] "" msgstr[1] "%(num)d पैकेज हटाए जा रहे हैं।"

Binary file not shown.

View File

@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-07 18:58+0100\n" "POT-Creation-Date: 2018-02-07 18:58+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Wantoyo <wantoyek@gmail.com>, 2017\n" "Last-Translator: Choiril Abdul, 2017\n"
"Language-Team: Indonesian (https://www.transifex.com/calamares/teams/20061/id/)\n" "Language-Team: Indonesian (https://www.transifex.com/calamares/teams/20061/id/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -20,33 +20,33 @@ msgstr ""
#: src/modules/dummypython/main.py:44 #: src/modules/dummypython/main.py:44
msgid "Dummy python job." msgid "Dummy python job."
msgstr "Dummy python job." msgstr "Tugas dumi python."
#: src/modules/dummypython/main.py:97 #: src/modules/dummypython/main.py:97
msgid "Dummy python step {}" msgid "Dummy python step {}"
msgstr "Dummy python step {}" msgstr "Langkah {} dumi python"
#: src/modules/machineid/main.py:35 #: src/modules/machineid/main.py:35
msgid "Generate machine-id." msgid "Generate machine-id."
msgstr "Generate machine-id." msgstr "Menghasilkan machine-id."
#: src/modules/packages/main.py:60 #: src/modules/packages/main.py:60
#, python-format #, python-format
msgid "Processing packages (%(count)d / %(total)d)" msgid "Processing packages (%(count)d / %(total)d)"
msgstr "" msgstr "Paket pemrosesan (%(count)d/%(total)d)"
#: src/modules/packages/main.py:62 src/modules/packages/main.py:72 #: src/modules/packages/main.py:62 src/modules/packages/main.py:72
msgid "Install packages." msgid "Install packages."
msgstr "" msgstr "pasang paket"
#: src/modules/packages/main.py:65 #: src/modules/packages/main.py:65
#, python-format #, python-format
msgid "Installing one package." msgid "Installing one package."
msgid_plural "Installing %(num)d packages." msgid_plural "Installing %(num)d packages."
msgstr[0] "" msgstr[0] "memasang paket %(num)d"
#: src/modules/packages/main.py:68 #: src/modules/packages/main.py:68
#, python-format #, python-format
msgid "Removing one package." msgid "Removing one package."
msgid_plural "Removing %(num)d packages." msgid_plural "Removing %(num)d packages."
msgstr[0] "" msgstr[0] "mencopot %(num)d paket"

Binary file not shown.

View File

@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-07 18:58+0100\n" "POT-Creation-Date: 2018-02-07 18:58+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Krissi, 2017\n" "Last-Translator: Kristján Magnússon, 2017\n"
"Language-Team: Icelandic (https://www.transifex.com/calamares/teams/20061/is/)\n" "Language-Team: Icelandic (https://www.transifex.com/calamares/teams/20061/is/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"

Binary file not shown.

View File

@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-07 18:58+0100\n" "POT-Creation-Date: 2018-02-07 18:58+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Marcin Mikołajczak <m4sk1n@vivaldi.net>, 2017\n" "Last-Translator: Marcin Mikołajczak <me@m4sk.in>, 2017\n"
"Language-Team: Polish (https://www.transifex.com/calamares/teams/20061/pl/)\n" "Language-Team: Polish (https://www.transifex.com/calamares/teams/20061/pl/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"

View File

@ -8,8 +8,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-04 08:16-0400\n" "POT-Creation-Date: 2018-02-07 18:58+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Octavian Pylos <caspian7pena@gmail.com>, 2018\n"
"Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n" "Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -19,24 +20,24 @@ msgstr ""
#: src/modules/dummypythonqt/main.py:84 #: src/modules/dummypythonqt/main.py:84
msgid "Click me!" msgid "Click me!"
msgstr "" msgstr "यहाँ क्लिक करें!"
#: src/modules/dummypythonqt/main.py:94 #: src/modules/dummypythonqt/main.py:94
msgid "A new QLabel." msgid "A new QLabel."
msgstr "" msgstr "नया QLabel।"
#: src/modules/dummypythonqt/main.py:97 #: src/modules/dummypythonqt/main.py:97
msgid "Dummy PythonQt ViewStep" msgid "Dummy PythonQt ViewStep"
msgstr "" msgstr "Dummy PythonQt ViewStep"
#: src/modules/dummypythonqt/main.py:183 #: src/modules/dummypythonqt/main.py:183
msgid "The Dummy PythonQt Job" msgid "The Dummy PythonQt Job"
msgstr "" msgstr "The Dummy PythonQt Job"
#: src/modules/dummypythonqt/main.py:186 #: src/modules/dummypythonqt/main.py:186
msgid "This is the Dummy PythonQt Job. The dummy job says: {}" msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
msgstr "" msgstr "यह Dummy PythonQt Job है।The dummy job says: {}"
#: src/modules/dummypythonqt/main.py:190 #: src/modules/dummypythonqt/main.py:190
msgid "A status message for Dummy PythonQt Job." msgid "A status message for Dummy PythonQt Job."
msgstr "" msgstr "Dummy PythonQt Job के लिए एक status संदेश।"

View File

@ -6,7 +6,7 @@ endif()
include_directories( ${PROJECT_BINARY_DIR}/src/libcalamaresui ) include_directories( ${PROJECT_BINARY_DIR}/src/libcalamaresui )
set( geoip_src GeoIP.cpp GeoIPFreeGeoIP.cpp ) set( geoip_src GeoIP.cpp GeoIPJSON.cpp )
set( geoip_libs ) set( geoip_libs )
find_package(Qt5 COMPONENTS Xml) find_package(Qt5 COMPONENTS Xml)

View File

@ -20,13 +20,22 @@
#include "utils/Logger.h" #include "utils/Logger.h"
GeoIP::GeoIP(const QString& e)
: m_element( e )
{
}
GeoIP::~GeoIP() GeoIP::~GeoIP()
{ {
} }
GeoIP::RegionZonePair GeoIP::RegionZonePair
GeoIP::splitTZString( const QString& timezoneString ) GeoIP::splitTZString( const QString& tz )
{ {
QString timezoneString( tz );
timezoneString.remove( '\\' );
timezoneString.replace( ' ', '_' );
QStringList tzParts = timezoneString.split( '/', QString::SkipEmptyParts ); QStringList tzParts = timezoneString.split( '/', QString::SkipEmptyParts );
if ( tzParts.size() >= 2 ) if ( tzParts.size() >= 2 )
{ {

View File

@ -32,8 +32,9 @@ class QByteArray;
* and can handle the data returned from its interpretation of that * and can handle the data returned from its interpretation of that
* configured URL, returning a region and zone. * configured URL, returning a region and zone.
*/ */
struct GeoIP class GeoIP
{ {
public:
using RegionZonePair = QPair<QString, QString>; using RegionZonePair = QPair<QString, QString>;
virtual ~GeoIP(); virtual ~GeoIP();
@ -49,8 +50,21 @@ struct GeoIP
*/ */
virtual RegionZonePair processReply( const QByteArray& ) = 0; virtual RegionZonePair processReply( const QByteArray& ) = 0;
/** @brief Splits a region/zone string into a pair. */ /** @brief Splits a region/zone string into a pair.
*
* Cleans up the string by removing backslashes (\\)
* since some providers return silly-escaped names. Replaces
* spaces with _ since some providers return human-readable names.
* Splits on the first / in the resulting string, or returns a
* pair of empty QStrings if it can't. (e.g. America/North Dakota/Beulah
* will return "America", "North_Dakota/Beulah").
*/
static RegionZonePair splitTZString( const QString& s ); static RegionZonePair splitTZString( const QString& s );
protected:
GeoIP( const QString& e = QString() );
QString m_element; // string for selecting from data
} ; } ;
#endif #endif

View File

@ -17,8 +17,9 @@
* along with Calamares. If not, see <http://www.gnu.org/licenses/>. * along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "GeoIPFreeGeoIP.h" #include "GeoIPJSON.h"
#include "utils/CalamaresUtils.h"
#include "utils/Logger.h" #include "utils/Logger.h"
#include "utils/YamlUtils.h" #include "utils/YamlUtils.h"
@ -26,8 +27,31 @@
#include <yaml-cpp/yaml.h> #include <yaml-cpp/yaml.h>
GeoIPJSON::GeoIPJSON(const QString& attribute)
: GeoIP( attribute.isEmpty() ? QLatin1String( "time_zone" ) : attribute )
{
}
static QString
selectMap( const QVariantMap& m, const QStringList& l, int index)
{
if ( index >= l.count() )
return QString();
QString attributeName = l[index];
if ( index == l.count() - 1 )
return CalamaresUtils::getString( m, attributeName );
else
{
bool success = false; // bogus
if ( m.contains( attributeName ) )
return selectMap( CalamaresUtils::getSubMap( m, attributeName, success ), l, index+1 );
return QString();
}
}
GeoIP::RegionZonePair GeoIP::RegionZonePair
FreeGeoIP::processReply( const QByteArray& data ) GeoIPJSON::processReply( const QByteArray& data )
{ {
try try
{ {
@ -38,13 +62,10 @@ FreeGeoIP::processReply( const QByteArray& data )
var.isValid() && var.isValid() &&
var.type() == QVariant::Map ) var.type() == QVariant::Map )
{ {
QVariantMap map = var.toMap(); return splitTZString( selectMap( var.toMap(), m_element.split('.'), 0 ) );
if ( map.contains( "time_zone" ) &&
!map.value( "time_zone" ).toString().isEmpty() )
{
return splitTZString( map.value( "time_zone" ).toString() );
}
} }
else
cWarning() << "Invalid YAML data for GeoIPJSON";
} }
catch ( YAML::Exception& e ) catch ( YAML::Exception& e )
{ {

View File

@ -16,21 +16,28 @@
* along with Calamares. If not, see <http://www.gnu.org/licenses/>. * along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/ */
#ifndef GEOIPFREEGEOIP_H #ifndef GEOIPJSON_H
#define GEOIPFREEGEOIP_H #define GEOIPJSON_H
#include "GeoIP.h" #include "GeoIP.h"
/** @brief GeoIP lookup via freegeoip.com /** @brief GeoIP lookup for services that return JSON.
* *
* This is the original implementation of GeoIP lookup, * This is the original implementation of GeoIP lookup,
* using the FreeGeoIP service, or similar which returns * (e.g. using the FreeGeoIP.net service), or similar.
* data in the same format.
* *
* The data is assumed to be in JSON format with a time_zone attribute. * The data is assumed to be in JSON format with a time_zone attribute.
*/ */
struct FreeGeoIP : public GeoIP class GeoIPJSON : public GeoIP
{ {
public:
/** @brief Configure the attribute name which is selected.
*
* If an empty string is passed in (not a valid attribute name),
* then "time_zone" is used.
*/
explicit GeoIPJSON( const QString& attribute = QString() );
virtual RegionZonePair processReply( const QByteArray& ); virtual RegionZonePair processReply( const QByteArray& );
} ; } ;

View File

@ -18,7 +18,7 @@
#include "GeoIPTests.h" #include "GeoIPTests.h"
#include "GeoIPFreeGeoIP.h" #include "GeoIPJSON.h"
#ifdef HAVE_XML #ifdef HAVE_XML
#include "GeoIPXML.h" #include "GeoIPXML.h"
#endif #endif
@ -40,14 +40,14 @@ GeoIPTests::initTestCase()
{ {
} }
static const char json_data_attribute[] =
"{\"time_zone\":\"Europe/Amsterdam\"}";
void void
GeoIPTests::testJSON() GeoIPTests::testJSON()
{ {
static const char data[] = GeoIPJSON handler;
"{\"time_zone\":\"Europe/Amsterdam\"}"; auto tz = handler.processReply( json_data_attribute );
FreeGeoIP handler;
auto tz = handler.processReply( data );
QCOMPARE( tz.first, QLatin1String( "Europe" ) ); QCOMPARE( tz.first, QLatin1String( "Europe" ) );
QCOMPARE( tz.second, QLatin1String( "Amsterdam" ) ); QCOMPARE( tz.second, QLatin1String( "Amsterdam" ) );
@ -60,12 +60,24 @@ GeoIPTests::testJSON()
QCOMPARE( tz.first, "America" ); QCOMPARE( tz.first, "America" );
} }
void GeoIPTests::testJSONalt()
{
GeoIPJSON handler( "zona_de_hora" );
auto tz = handler.processReply( json_data_attribute );
QCOMPARE( tz.first, QString() ); // Not found
tz = handler.processReply( "tarifa: 12\nzona_de_hora: Europe/Madrid" );
QCOMPARE( tz.first, QLatin1String( "Europe" ) );
QCOMPARE( tz.second, QLatin1String( "Madrid" ) );
}
void void
GeoIPTests::testJSONbad() GeoIPTests::testJSONbad()
{ {
static const char data[] = "time_zone: 1"; static const char data[] = "time_zone: 1";
FreeGeoIP handler; GeoIPJSON handler;
auto tz = handler.processReply( data ); auto tz = handler.processReply( data );
tz = handler.processReply( data ); tz = handler.processReply( data );
@ -76,13 +88,13 @@ GeoIPTests::testJSONbad()
tz = handler.processReply( "<html><body>404 Forbidden</body></html>" ); tz = handler.processReply( "<html><body>404 Forbidden</body></html>" );
QCOMPARE( tz.first, QString() ); QCOMPARE( tz.first, QString() );
tz = handler.processReply( "{ time zone = 'America/LosAngeles'}" );
QCOMPARE( tz.first, QString() );
} }
void static const char xml_data_ubiquity[] =
GeoIPTests::testXML()
{
static const char data[] =
R"(<Response> R"(<Response>
<Ip>85.150.1.1</Ip> <Ip>85.150.1.1</Ip>
<Status>OK</Status> <Status>OK</Status>
@ -99,9 +111,12 @@ GeoIPTests::testXML()
<TimeZone>Europe/Amsterdam</TimeZone> <TimeZone>Europe/Amsterdam</TimeZone>
</Response>)"; </Response>)";
void
GeoIPTests::testXML()
{
#ifdef HAVE_XML #ifdef HAVE_XML
XMLGeoIP handler; GeoIPXML handler;
auto tz = handler.processReply( data ); auto tz = handler.processReply( xml_data_ubiquity );
QCOMPARE( tz.first, QLatin1String( "Europe" ) ); QCOMPARE( tz.first, QLatin1String( "Europe" ) );
QCOMPARE( tz.second, QLatin1String( "Amsterdam" ) ); QCOMPARE( tz.second, QLatin1String( "Amsterdam" ) );
@ -112,14 +127,26 @@ void
GeoIPTests::testXML2() GeoIPTests::testXML2()
{ {
static const char data[] = static const char data[] =
"<Response><TimeZone>America/North Dakota/Beulah</TimeZone></Response>"; "<Response><TimeZone>America/North Dakota/Beulah</TimeZone></Response>"; // With a space!
#ifdef HAVE_XML #ifdef HAVE_XML
XMLGeoIP handler; GeoIPXML handler;
auto tz = handler.processReply( data ); auto tz = handler.processReply( data );
QCOMPARE( tz.first, QLatin1String( "America" ) ); QCOMPARE( tz.first, QLatin1String( "America" ) );
QCOMPARE( tz.second, QLatin1String( "North Dakota/Beulah" ) ); QCOMPARE( tz.second, QLatin1String( "North_Dakota/Beulah" ) ); // Without space
#endif
}
void GeoIPTests::testXMLalt()
{
#ifdef HAVE_XML
GeoIPXML handler( "ZT" );
auto tz = handler.processReply( "<A><B/><C><ZT>Moon/Dark_side</ZT></C></A>" );
QCOMPARE( tz.first, QLatin1String( "Moon" ) );
QCOMPARE( tz.second, QLatin1String( "Dark_side" ) );
#endif #endif
} }
@ -127,7 +154,7 @@ void
GeoIPTests::testXMLbad() GeoIPTests::testXMLbad()
{ {
#ifdef HAVE_XML #ifdef HAVE_XML
XMLGeoIP handler; GeoIPXML handler;
auto tz = handler.processReply( "{time_zone: \"Europe/Paris\"}" ); auto tz = handler.processReply( "{time_zone: \"Europe/Paris\"}" );
QCOMPARE( tz.first, QString() ); QCOMPARE( tz.first, QString() );
@ -138,3 +165,88 @@ GeoIPTests::testXMLbad()
QCOMPARE( tz.first, QString() ); QCOMPARE( tz.first, QString() );
#endif #endif
} }
void GeoIPTests::testSplitTZ()
{
auto tz = GeoIP::splitTZString( QLatin1String("Moon/Dark_side") );
QCOMPARE( tz.first, QLatin1String("Moon") );
QCOMPARE( tz.second, QLatin1String("Dark_side") );
// Some providers return weirdly escaped data
tz = GeoIP::splitTZString( QLatin1String("America\\/NewYork") );
QCOMPARE( tz.first, QLatin1String("America") );
QCOMPARE( tz.second, QLatin1String("NewYork") ); // That's not actually the zone name
// Check that bogus data fails
tz = GeoIP::splitTZString( QString() );
QCOMPARE( tz.first, QString() );
tz = GeoIP::splitTZString( QLatin1String("America.NewYork") );
QCOMPARE( tz.first, QString() );
// Check that three-level is split properly and space is replaced
tz = GeoIP::splitTZString( QLatin1String("America/North Dakota/Beulah") );
QCOMPARE( tz.first, QLatin1String("America") );
QCOMPARE( tz.second, QLatin1String("North_Dakota/Beulah") );
}
static QByteArray
synchronous_get( const char* urlstring )
{
QUrl url( urlstring );
QNetworkAccessManager manager;
QEventLoop loop;
qDebug() << "Fetching" << url;
QObject::connect( &manager, &QNetworkAccessManager::finished, &loop, &QEventLoop::quit );
QNetworkRequest request( url );
QNetworkReply* reply = manager.get( request );
loop.exec();
reply->deleteLater();
return reply->readAll();
}
#define CHECK_GET(t, selector, url) \
{ \
auto tz = GeoIP##t( selector ).processReply( synchronous_get( url ) ); \
QCOMPARE( default_tz, tz ); \
}
void GeoIPTests::testGet()
{
if ( !QProcessEnvironment::systemEnvironment().contains( QLatin1String("TEST_HTTP_GET") ) )
{
qDebug() << "Skipping HTTP GET tests";
return;
}
GeoIPJSON default_handler;
// Call the KDE service the definitive source.
auto default_tz = default_handler.processReply( synchronous_get( "https://geoip.kde.org/v1/calamares" ) );
// This is bogus, because the test isn't always run by me
// QCOMPARE( default_tz.first, QLatin1String("Europe") );
// QCOMPARE( default_tz.second, QLatin1String("Amsterdam") );
QVERIFY( !default_tz.first.isEmpty() );
QVERIFY( !default_tz.second.isEmpty() );
// Each expansion of CHECK_GET does a synchronous GET, then checks that
// the TZ data is the same as the default_tz; this is fragile if the
// services don't agree on the location of where the test is run.
CHECK_GET( JSON, QString(), "https://geoip.kde.org/v1/calamares" ) // Check it's consistent
CHECK_GET( JSON, QString(), "http://freegeoip.net/json/" ) // Original FreeGeoIP service
CHECK_GET( JSON, QLatin1String("timezone"), "https://ipapi.co/json" ) // Different JSON
CHECK_GET( JSON, QLatin1String("timezone"), "http://ip-api.com/json" )
CHECK_GET( JSON, QLatin1String("location.time_zone"), "http://geoip.nekudo.com/api/" ) // 2-level JSON
CHECK_GET( JSON, QLatin1String("Location.TimeZone"), "https://geoip.kde.org/debug" ) // 2-level JSON
#ifdef HAVE_XML
CHECK_GET( XML, QString(), "http://geoip.ubuntu.com/lookup" ) // Ubiquity's XML format
CHECK_GET( XML, QString(), "https://geoip.kde.org/v1/ubiquity" ) // Temporary KDE service
#endif
}

View File

@ -31,10 +31,15 @@ public:
private Q_SLOTS: private Q_SLOTS:
void initTestCase(); void initTestCase();
void testJSON(); void testJSON();
void testJSONalt();
void testJSONbad(); void testJSONbad();
void testXML(); void testXML();
void testXML2(); void testXML2();
void testXMLalt();
void testXMLbad(); void testXMLbad();
void testSplitTZ();
void testGet();
}; };
#endif #endif

View File

@ -23,8 +23,13 @@
#include <QNetworkReply> #include <QNetworkReply>
#include <QtXml/QDomDocument> #include <QtXml/QDomDocument>
GeoIPXML::GeoIPXML( const QString& element )
: GeoIP( element.isEmpty() ? QLatin1String( "TimeZone" ) : element )
{
}
GeoIP::RegionZonePair GeoIP::RegionZonePair
XMLGeoIP::processReply( const QByteArray& data ) GeoIPXML::processReply( const QByteArray& data )
{ {
QString domError; QString domError;
int errorLine, errorColumn; int errorLine, errorColumn;
@ -32,7 +37,7 @@ XMLGeoIP::processReply( const QByteArray& data )
QDomDocument doc; QDomDocument doc;
if ( doc.setContent( data, false, &domError, &errorLine, &errorColumn ) ) if ( doc.setContent( data, false, &domError, &errorLine, &errorColumn ) )
{ {
const auto tzElements = doc.elementsByTagName( "TimeZone" ); const auto tzElements = doc.elementsByTagName( m_element );
cDebug() << "GeoIP found" << tzElements.length() << "elements"; cDebug() << "GeoIP found" << tzElements.length() << "elements";
for ( int it = 0; it < tzElements.length(); ++it ) for ( int it = 0; it < tzElements.length(); ++it )
{ {

View File

@ -28,8 +28,16 @@
* element, which contains the text (string) for the region/zone. This * element, which contains the text (string) for the region/zone. This
* format is expected by, e.g. the Ubiquity installer. * format is expected by, e.g. the Ubiquity installer.
*/ */
struct XMLGeoIP : public GeoIP class GeoIPXML : public GeoIP
{ {
public:
/** @brief Configure the element tag which is selected.
*
* If an empty string is passed in (not a valid element tag),
* then "TimeZone" is used.
*/
explicit GeoIPXML( const QString& element = QString() );
virtual RegionZonePair processReply( const QByteArray& ); virtual RegionZonePair processReply( const QByteArray& );
} ; } ;

View File

@ -20,7 +20,7 @@
#include "LocaleViewStep.h" #include "LocaleViewStep.h"
#include "GeoIP.h" #include "GeoIP.h"
#include "GeoIPFreeGeoIP.h" #include "GeoIPJSON.h"
#ifdef HAVE_XML #ifdef HAVE_XML
#include "GeoIPXML.h" #include "GeoIPXML.h"
#endif #endif
@ -124,16 +124,16 @@ LocaleViewStep::fetchGeoIpTimezone()
if ( m_geoipStyle.isEmpty() || m_geoipStyle == "legacy" ) if ( m_geoipStyle.isEmpty() || m_geoipStyle == "legacy" )
{ {
actualUrl.append( "/json/" ); actualUrl.append( "/json/" );
handler = new FreeGeoIP; handler = new GeoIPJSON( m_geoipSelector );
} }
else if ( m_geoipStyle == "json" ) else if ( m_geoipStyle == "json" )
{ {
handler = new FreeGeoIP; handler = new GeoIPJSON( m_geoipSelector );
} }
#if defined(HAVE_XML) #if defined(HAVE_XML)
else if ( m_geoipStyle == "xml" ) else if ( m_geoipStyle == "xml" )
{ {
handler = new XMLGeoIP; handler = new GeoIPXML( m_geoipSelector );
} }
#endif #endif
else else
@ -295,4 +295,5 @@ LocaleViewStep::setConfigurationMap( const QVariantMap& configurationMap )
// Optional // Optional
m_geoipUrl = CalamaresUtils::getString( configurationMap, "geoipUrl" ); m_geoipUrl = CalamaresUtils::getString( configurationMap, "geoipUrl" );
m_geoipStyle = CalamaresUtils::getString( configurationMap, "geoipStyle" ); m_geoipStyle = CalamaresUtils::getString( configurationMap, "geoipStyle" );
m_geoipSelector = CalamaresUtils::getString( configurationMap, "geoipSelector" );
} }

View File

@ -75,8 +75,10 @@ private:
QPair< QString, QString > m_startingTimezone; QPair< QString, QString > m_startingTimezone;
QString m_localeGenPath; QString m_localeGenPath;
QString m_geoipUrl;
QString m_geoipStyle; QString m_geoipUrl; // The URL, depening on style might be modified on lookup
QString m_geoipStyle; // String selecting which kind of geoip data to expect
QString m_geoipSelector; // String selecting data from the geoip lookup
QList< Calamares::job_ptr > m_jobs; QList< Calamares::job_ptr > m_jobs;
}; };

View File

@ -37,7 +37,9 @@ zone: "New_York"
# the URL may be modified before use. The request should return # the URL may be modified before use. The request should return
# valid data in a suitable format, depending on geoipStyle; # valid data in a suitable format, depending on geoipStyle;
# generally this includes a string value with the timezone # generally this includes a string value with the timezone
# in <region>/<zone> format. # in <region>/<zone> format. For services that return data which
# does not follow the conventions of "suitable data" described
# below, *geoIPSelector* may be used to pick different data.
# #
# Note that this example URL works, but the service is shutting # Note that this example URL works, but the service is shutting
# down in June 2018. # down in June 2018.
@ -51,7 +53,12 @@ zone: "New_York"
# <Response><TimeZone>Europe/Brussels</TimeZone></Response> # <Response><TimeZone>Europe/Brussels</TimeZone></Response>
# ``` # ```
# #
geoipUrl: "freegeoip.net" # To accomodate providers of GeoIP timezone data with peculiar timezone
# naming conventions, the following cleanups are performed automatically:
# - backslashes are removed
# - spaces are replaced with _
#
#geoipUrl: "freegeoip.net"
# GeoIP style. Leave commented out for the "legacy" interpretation. # GeoIP style. Leave commented out for the "legacy" interpretation.
# This setting only makes sense if geoipUrl is set, enabliing geoIP. # This setting only makes sense if geoipUrl is set, enabliing geoIP.
@ -67,4 +74,24 @@ geoipUrl: "freegeoip.net"
# The JSON format is provided by freegeoip.net, but that service is # The JSON format is provided by freegeoip.net, but that service is
# shutting down in June 2018. There are other providers with the same # shutting down in June 2018. There are other providers with the same
# format. XML format is provided for Ubiquity. # format. XML format is provided for Ubiquity.
geoipStyle: "legacy" #geoipStyle: "legacy"
# GeoIP selector. Leave commented out for the default selector
# (which depends on the style: JSON uses "time_zone" and XML
# uses TimeZone, for the FreeGeoIP-alike and the Ubiquity-alike
# respectively). If the service configured via *geoipUrl* uses
# a different attribute name (e.g. "timezone") in JSON or a
# different element tag (e.g. "<Time_Zone>") in XML, set this
# string to the name or tag to be used.
#
# In JSON:
# - if the string contains "." characters, this is used as a
# multi-level selector, e.g. "a.b" will select the timezone
# from data "{a: {b: "Europe/Amsterdam" } }".
# - each part of the string split by "." characters is used as
# a key into the JSON data.
# In XML:
# - all elements with the named tag (e.g. all TimeZone) elements
# from the document are checked; the first one with non-empty
# text value is used.
#geoipSelector: ""

View File

@ -22,7 +22,7 @@
#include <iostream> #include <iostream>
#include "GeoIPFreeGeoIP.h" #include "GeoIPJSON.h"
#ifdef HAVE_XML #ifdef HAVE_XML
#include "GeoIPXML.h" #include "GeoIPXML.h"
#endif #endif
@ -39,10 +39,10 @@ int main(int argc, char** argv)
GeoIP* handler = nullptr; GeoIP* handler = nullptr;
if ( QLatin1String( "json" ) == argv[1] ) if ( QLatin1String( "json" ) == argv[1] )
handler = new FreeGeoIP; handler = new GeoIPJSON;
#ifdef HAVE_XML #ifdef HAVE_XML
else if ( QLatin1String( "xml" ) == argv[1] ) else if ( QLatin1String( "xml" ) == argv[1] )
handler = new XMLGeoIP; handler = new GeoIPXML;
#endif #endif
if ( !handler ) if ( !handler )