Merge branch 'master' of https://github.com/calamares/calamares into development
This commit is contained in:
commit
92f2461337
29
.github/ISSUE_TEMPLATE.md
vendored
29
.github/ISSUE_TEMPLATE.md
vendored
@ -1,29 +0,0 @@
|
||||
#### Submission type
|
||||
|
||||
- [ ] Bug report
|
||||
- [ ] Feature Request
|
||||
|
||||
|
||||
#### Info regarding which version of Calamares is used, which Distribution
|
||||
|
||||
> …
|
||||
|
||||
#### Provide information on how the disks are set up, in detail, with full logs of commands issued
|
||||
|
||||
> …
|
||||
|
||||
#### What do you expect to have happen when Calamares installs?
|
||||
|
||||
> …
|
||||
|
||||
#### Describe the issue you encountered
|
||||
|
||||
> …
|
||||
|
||||
#### Steps to reproduce the problem
|
||||
|
||||
> …
|
||||
|
||||
#### Include the installation.log (usually ~/Calamares/Calamares/Calamares.log, of the user Calamares runs as):
|
||||
|
||||
> …
|
26
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
26
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
|
||||
---
|
||||
|
||||
> Hi! Thank you for helping improve Calamares. If you are seeing a problem in installing a specific distribution, you should **probably** report the problem in the distribution's bug tracker, first. That helps filter out issues with packaging, mis-configuration, etc. that Calamares has no control over. If you are a distribution packager or maintainer, this page is for you.
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is. Please include 32/64 bit machine details, EFI/BIOS details, and disk setup.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots and Logs**
|
||||
If applicable, add screenshots to help explain your problem. Calamares has an installation log (usually `~/.cache/calamares/session.log`), please check it for confidential information and attach it if possible.
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
17
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
17
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
@ -82,11 +82,11 @@ set( CALAMARES_VERSION_RC 0 )
|
||||
# checks for new languages and misspelled ones are done (that is,
|
||||
# copy these four lines to four backup lines, add "p", and then update
|
||||
# the original four lines with the current translations).
|
||||
set( _tx_complete da pt_PT ro tr_TR zh_TW zh_CN pt_BR fr hr ca lt id cs_CZ )
|
||||
set( _tx_good sq es pl ja sk it_IT hu ru he de nl bg uk )
|
||||
set( _tx_ok ast is ar sv el es_MX gl en_GB th fi_FI hi eu sr nb
|
||||
sl sr@latin mr es_PR kk kn et be )
|
||||
set( _tx_bad uz lo ur gu fr_CH fa eo ko )
|
||||
set( _tx_complete ca zh_TW hr cs_CZ da et fr id it_IT lt pl pt_PT es_MX tr_TR )
|
||||
set( _tx_good sq de pt_BR zh_CN ja ro es sk )
|
||||
set( _tx_ok hu ru he nl bg uk ast is ko ar sv el gl en_GB
|
||||
th fi_FI hi eu nb sr sl sr@latin mr es_PR kn kk be )
|
||||
set( _tx_bad fr_CH gu lo fa ur uz eo )
|
||||
|
||||
|
||||
### Required versions
|
||||
|
@ -63,6 +63,7 @@ Comment[he]=קלמארס - אשף התקנה
|
||||
Icon[hi]=calamares
|
||||
GenericName[hi]=सिस्टम इंस्टॉलर
|
||||
Comment[hi]=Calamares — सिस्टम इंस्टॉलर
|
||||
Name[hi]=सिस्टम इंस्टॉल करें
|
||||
Icon[hr]=calamares
|
||||
GenericName[hr]=Instalacija sustava
|
||||
Comment[hr]=Calamares — Instalacija sustava
|
||||
@ -87,6 +88,10 @@ Icon[ja]=calamares
|
||||
GenericName[ja]=システムインストーラー
|
||||
Comment[ja]=Calamares — システムインストーラー
|
||||
Name[ja]=システムをインストール
|
||||
Icon[ko]=깔라마레스
|
||||
GenericName[ko]=시스템 설치 관리자
|
||||
Comment[ko]=깔라마레스 — 시스템 설치 관리자
|
||||
Name[ko]=시스템 설치
|
||||
Icon[lt]=calamares
|
||||
GenericName[lt]=Sistemos diegimas į kompiuterį
|
||||
Comment[lt]=Calamares — Sistemos diegimo programa
|
||||
|
@ -1,4 +1,6 @@
|
||||
<?xml version="1.0" ?><!DOCTYPE TS><TS language="en" version="2.1">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="en">
|
||||
<context>
|
||||
<name>BootInfoWidget</name>
|
||||
<message>
|
||||
@ -45,6 +47,14 @@
|
||||
<translation>%1 (%2)</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Calamares::BlankViewStep</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/viewpages/BlankViewStep.cpp" line="69"/>
|
||||
<source>Blank Page</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Calamares::DebugWindow</name>
|
||||
<message>
|
||||
@ -97,7 +107,7 @@
|
||||
<context>
|
||||
<name>Calamares::ExecutionViewStep</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="78"/>
|
||||
<location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="79"/>
|
||||
<source>Install</source>
|
||||
<translation>Install</translation>
|
||||
</message>
|
||||
@ -105,7 +115,7 @@
|
||||
<context>
|
||||
<name>Calamares::JobThread</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/JobQueue.cpp" line="86"/>
|
||||
<location filename="../src/libcalamares/JobQueue.cpp" line="101"/>
|
||||
<source>Done</source>
|
||||
<translation>Done</translation>
|
||||
</message>
|
||||
@ -113,12 +123,12 @@
|
||||
<context>
|
||||
<name>Calamares::ProcessJob</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/ProcessJob.cpp" line="51"/>
|
||||
<location filename="../src/libcalamares/ProcessJob.cpp" line="52"/>
|
||||
<source>Run command %1 %2</source>
|
||||
<translation>Run command %1 %2</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/ProcessJob.cpp" line="60"/>
|
||||
<location filename="../src/libcalamares/ProcessJob.cpp" line="61"/>
|
||||
<source>Running command %1 %2</source>
|
||||
<translation>Running command %1 %2</translation>
|
||||
</message>
|
||||
@ -126,32 +136,32 @@
|
||||
<context>
|
||||
<name>Calamares::PythonJob</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="272"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="273"/>
|
||||
<source>Running %1 operation.</source>
|
||||
<translation>Running %1 operation.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="287"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="288"/>
|
||||
<source>Bad working directory path</source>
|
||||
<translation>Bad working directory path</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="288"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="289"/>
|
||||
<source>Working directory %1 for python job %2 is not readable.</source>
|
||||
<translation>Working directory %1 for python job %2 is not readable.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="298"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="299"/>
|
||||
<source>Bad main script file</source>
|
||||
<translation>Bad main script file</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="299"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="300"/>
|
||||
<source>Main script file %1 for python job %2 is not readable.</source>
|
||||
<translation>Main script file %1 for python job %2 is not readable.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="375"/>
|
||||
<location filename="../src/libcalamares/PythonJob.cpp" line="376"/>
|
||||
<source>Boost.Python error in job "%1".</source>
|
||||
<translation>Boost.Python error in job "%1".</translation>
|
||||
</message>
|
||||
@ -159,97 +169,112 @@
|
||||
<context>
|
||||
<name>Calamares::ViewManager</name>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="73"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="74"/>
|
||||
<source>&Back</source>
|
||||
<translation>&Back</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="74"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="257"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="279"/>
|
||||
<source>&Next</source>
|
||||
<translation>&Next</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="75"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="266"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="288"/>
|
||||
<source>&Cancel</source>
|
||||
<translation>&Cancel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="267"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="77"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="289"/>
|
||||
<source>Cancel installation without changing the system.</source>
|
||||
<translation>Cancel installation without changing the system.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="255"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="179"/>
|
||||
<source>Calamares Initialization Failed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="180"/>
|
||||
<source>%1 can not be installed. Calamares was unable to load all of the configured modules. This is a problem with the way Calamares is being used by the distribution.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="185"/>
|
||||
<source><br/>The following modules could not be loaded:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="277"/>
|
||||
<source>&Install</source>
|
||||
<translation>&Install</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="303"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="325"/>
|
||||
<source>Cancel installation?</source>
|
||||
<translation>Cancel installation?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="304"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="326"/>
|
||||
<source>Do you really want to cancel the current install process?
|
||||
The installer will quit and all changes will be lost.</source>
|
||||
<translation>Do you really want to cancel the current install process?
|
||||
The installer will quit and all changes will be lost.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="309"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="331"/>
|
||||
<source>&Yes</source>
|
||||
<translation>&Yes</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="310"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="332"/>
|
||||
<source>&No</source>
|
||||
<translation>&No</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="162"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="163"/>
|
||||
<source>&Close</source>
|
||||
<translation>&Close</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="215"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="237"/>
|
||||
<source>Continue with setup?</source>
|
||||
<translation>Continue with setup?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="216"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="238"/>
|
||||
<source>The %1 installer is about to make changes to your disk in order to install %2.<br/><strong>You will not be able to undo these changes.</strong></source>
|
||||
<translation>The %1 installer is about to make changes to your disk in order to install %2.<br/><strong>You will not be able to undo these changes.</strong></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="221"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="243"/>
|
||||
<source>&Install now</source>
|
||||
<translation>&Install now</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="222"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="244"/>
|
||||
<source>Go &back</source>
|
||||
<translation>Go &back</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="261"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="283"/>
|
||||
<source>&Done</source>
|
||||
<translation>&Done</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="262"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="284"/>
|
||||
<source>The installation is complete. Close the installer.</source>
|
||||
<translation>The installation is complete. Close the installer.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/>
|
||||
<source>Error</source>
|
||||
<translation>Error</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/>
|
||||
<location filename="../src/libcalamaresui/ViewManager.cpp" line="161"/>
|
||||
<source>Installation Failed</source>
|
||||
<translation>Installation Failed</translation>
|
||||
</message>
|
||||
@ -436,17 +461,17 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<context>
|
||||
<name>ClearMountsJob</name>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="45"/>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="46"/>
|
||||
<source>Clear mounts for partitioning operations on %1</source>
|
||||
<translation>Clear mounts for partitioning operations on %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="53"/>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="54"/>
|
||||
<source>Clearing mounts for partitioning operations on %1.</source>
|
||||
<translation>Clearing mounts for partitioning operations on %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="190"/>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="191"/>
|
||||
<source>Cleared all mounts for %1</source>
|
||||
<translation>Cleared all mounts for %1</translation>
|
||||
</message>
|
||||
@ -554,27 +579,27 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<translation>Si&ze:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="69"/>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="72"/>
|
||||
<source>En&crypt</source>
|
||||
<translation>En&crypt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="148"/>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="151"/>
|
||||
<source>Logical</source>
|
||||
<translation>Logical</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="153"/>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="156"/>
|
||||
<source>Primary</source>
|
||||
<translation>Primary</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="170"/>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="173"/>
|
||||
<source>GPT</source>
|
||||
<translation>GPT</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="259"/>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.cpp" line="262"/>
|
||||
<source>Mountpoint already in use. Please select another one.</source>
|
||||
<translation>Mountpoint already in use. Please select another one.</translation>
|
||||
</message>
|
||||
@ -776,7 +801,7 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<context>
|
||||
<name>DummyCppJob</name>
|
||||
<message>
|
||||
<location filename="../src/modules/dummycpp/DummyCppJob.cpp" line="46"/>
|
||||
<location filename="../src/modules/dummycpp/DummyCppJob.cpp" line="47"/>
|
||||
<source>Dummy C++ Job</source>
|
||||
<translation>Dummy C++ Job</translation>
|
||||
</message>
|
||||
@ -834,7 +859,7 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<translation>Flags:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.cpp" line="268"/>
|
||||
<location filename="../src/modules/partition/gui/EditExistingPartitionDialog.cpp" line="269"/>
|
||||
<source>Mountpoint already in use. Please select another one.</source>
|
||||
<translation>Mountpoint already in use. Please select another one.</translation>
|
||||
</message>
|
||||
@ -1003,12 +1028,12 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<context>
|
||||
<name>KeyboardPage</name>
|
||||
<message>
|
||||
<location filename="../src/modules/keyboard/KeyboardPage.cpp" line="220"/>
|
||||
<location filename="../src/modules/keyboard/KeyboardPage.cpp" line="219"/>
|
||||
<source>Set keyboard model to %1.<br/></source>
|
||||
<translation>Set keyboard model to %1.<br/></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/keyboard/KeyboardPage.cpp" line="222"/>
|
||||
<location filename="../src/modules/keyboard/KeyboardPage.cpp" line="221"/>
|
||||
<source>Set keyboard layout to %1/%2.</source>
|
||||
<translation>Set keyboard layout to %1/%2.</translation>
|
||||
</message>
|
||||
@ -1052,64 +1077,64 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<translation>Form</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="88"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="89"/>
|
||||
<source>I accept the terms and conditions above.</source>
|
||||
<translation>I accept the terms and conditions above.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="115"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="116"/>
|
||||
<source><h1>License Agreement</h1>This setup procedure will install proprietary software that is subject to licensing terms.</source>
|
||||
<translation><h1>License Agreement</h1>This setup procedure will install proprietary software that is subject to licensing terms.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="118"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="119"/>
|
||||
<source>Please review the End User License Agreements (EULAs) above.<br/>If you do not agree with the terms, the setup procedure cannot continue.</source>
|
||||
<translation>Please review the End User License Agreements (EULAs) above.<br/>If you do not agree with the terms, the setup procedure cannot continue.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="124"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="125"/>
|
||||
<source><h1>License Agreement</h1>This setup procedure can install proprietary software that is subject to licensing terms in order to provide additional features and enhance the user experience.</source>
|
||||
<translation><h1>License Agreement</h1>This setup procedure can install proprietary software that is subject to licensing terms in order to provide additional features and enhance the user experience.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="129"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="130"/>
|
||||
<source>Please review the End User License Agreements (EULAs) above.<br/>If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</source>
|
||||
<translation>Please review the End User License Agreements (EULAs) above.<br/>If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="159"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="160"/>
|
||||
<source><strong>%1 driver</strong><br/>by %2</source>
|
||||
<extracomment>%1 is an untranslatable product name, example: Creative Audigy driver</extracomment>
|
||||
<translation><strong>%1 driver</strong><br/>by %2</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="166"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="167"/>
|
||||
<source><strong>%1 graphics driver</strong><br/><font color="Grey">by %2</font></source>
|
||||
<extracomment>%1 is usually a vendor name, example: Nvidia graphics driver</extracomment>
|
||||
<translation><strong>%1 graphics driver</strong><br/><font color="Grey">by %2</font></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="172"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="173"/>
|
||||
<source><strong>%1 browser plugin</strong><br/><font color="Grey">by %2</font></source>
|
||||
<translation><strong>%1 browser plugin</strong><br/><font color="Grey">by %2</font></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="178"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="179"/>
|
||||
<source><strong>%1 codec</strong><br/><font color="Grey">by %2</font></source>
|
||||
<translation><strong>%1 codec</strong><br/><font color="Grey">by %2</font></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="184"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="185"/>
|
||||
<source><strong>%1 package</strong><br/><font color="Grey">by %2</font></source>
|
||||
<translation><strong>%1 package</strong><br/><font color="Grey">by %2</font></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="190"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="191"/>
|
||||
<source><strong>%1</strong><br/><font color="Grey">by %2</font></source>
|
||||
<translation><strong>%1</strong><br/><font color="Grey">by %2</font></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="202"/>
|
||||
<location filename="../src/modules/license/LicensePage.cpp" line="203"/>
|
||||
<source><a href="%1">view license agreement</a></source>
|
||||
<translation><a href="%1">view license agreement</a></translation>
|
||||
</message>
|
||||
@ -1583,34 +1608,34 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<context>
|
||||
<name>PartitionModel</name>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="137"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="169"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="138"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="170"/>
|
||||
<source>Free Space</source>
|
||||
<translation>Free Space</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="141"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="173"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="142"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="174"/>
|
||||
<source>New partition</source>
|
||||
<translation>New partition</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="257"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="258"/>
|
||||
<source>Name</source>
|
||||
<translation>Name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="259"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="260"/>
|
||||
<source>File System</source>
|
||||
<translation>File System</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="261"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="262"/>
|
||||
<source>Mount Point</source>
|
||||
<translation>Mount Point</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="263"/>
|
||||
<location filename="../src/modules/partition/core/PartitionModel.cpp" line="264"/>
|
||||
<source>Size</source>
|
||||
<translation>Size</translation>
|
||||
</message>
|
||||
@ -1639,8 +1664,8 @@ The installer will quit and all changes will be lost.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="107"/>
|
||||
<source>&Create</source>
|
||||
<translation>&Create</translation>
|
||||
<source>Cre&ate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="114"/>
|
||||
@ -1658,17 +1683,17 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<translation>Install boot &loader on:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="169"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="171"/>
|
||||
<source>Are you sure you want to create a new partition table on %1?</source>
|
||||
<translation>Are you sure you want to create a new partition table on %1?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="195"/>
|
||||
<source>Can not create new partition</source>
|
||||
<translation>Can not create new partition</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="196"/>
|
||||
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
|
||||
<translation>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</translation>
|
||||
</message>
|
||||
@ -1676,97 +1701,97 @@ The installer will quit and all changes will be lost.</translation>
|
||||
<context>
|
||||
<name>PartitionViewStep</name>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="70"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="71"/>
|
||||
<source>Gathering system information...</source>
|
||||
<translation>Gathering system information...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="121"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="122"/>
|
||||
<source>Partitions</source>
|
||||
<translation>Partitions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="158"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="159"/>
|
||||
<source>Install %1 <strong>alongside</strong> another operating system.</source>
|
||||
<translation>Install %1 <strong>alongside</strong> another operating system.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="162"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="163"/>
|
||||
<source><strong>Erase</strong> disk and install %1.</source>
|
||||
<translation><strong>Erase</strong> disk and install %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="166"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="167"/>
|
||||
<source><strong>Replace</strong> a partition with %1.</source>
|
||||
<translation><strong>Replace</strong> a partition with %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="171"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="172"/>
|
||||
<source><strong>Manual</strong> partitioning.</source>
|
||||
<translation><strong>Manual</strong> partitioning.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="184"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="185"/>
|
||||
<source>Install %1 <strong>alongside</strong> another operating system on disk <strong>%2</strong> (%3).</source>
|
||||
<translation>Install %1 <strong>alongside</strong> another operating system on disk <strong>%2</strong> (%3).</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="190"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="191"/>
|
||||
<source><strong>Erase</strong> disk <strong>%2</strong> (%3) and install %1.</source>
|
||||
<translation><strong>Erase</strong> disk <strong>%2</strong> (%3) and install %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="196"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="197"/>
|
||||
<source><strong>Replace</strong> a partition on disk <strong>%2</strong> (%3) with %1.</source>
|
||||
<translation><strong>Replace</strong> a partition on disk <strong>%2</strong> (%3) with %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="203"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="204"/>
|
||||
<source><strong>Manual</strong> partitioning on disk <strong>%1</strong> (%2).</source>
|
||||
<translation><strong>Manual</strong> partitioning on disk <strong>%1</strong> (%2).</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="211"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="212"/>
|
||||
<source>Disk <strong>%1</strong> (%2)</source>
|
||||
<translation>Disk <strong>%1</strong> (%2)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="239"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="240"/>
|
||||
<source>Current:</source>
|
||||
<translation>Current:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="256"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="257"/>
|
||||
<source>After:</source>
|
||||
<translation>After:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="399"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="400"/>
|
||||
<source>No EFI system partition configured</source>
|
||||
<translation>No EFI system partition configured</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="400"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="401"/>
|
||||
<source>An EFI system partition is necessary to start %1.<br/><br/>To configure an EFI system partition, go back and select or create a FAT32 filesystem with the <strong>esp</strong> flag enabled and mount point <strong>%2</strong>.<br/><br/>You can continue without setting up an EFI system partition but your system may fail to start.</source>
|
||||
<translation>An EFI system partition is necessary to start %1.<br/><br/>To configure an EFI system partition, go back and select or create a FAT32 filesystem with the <strong>esp</strong> flag enabled and mount point <strong>%2</strong>.<br/><br/>You can continue without setting up an EFI system partition but your system may fail to start.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="413"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="414"/>
|
||||
<source>EFI system partition flag not set</source>
|
||||
<translation>EFI system partition flag not set</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="414"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="415"/>
|
||||
<source>An EFI system partition is necessary to start %1.<br/><br/>A partition was configured with mount point <strong>%2</strong> but its <strong>esp</strong> flag is not set.<br/>To set the flag, go back and edit the partition.<br/><br/>You can continue without setting the flag but your system may fail to start.</source>
|
||||
<translation>An EFI system partition is necessary to start %1.<br/><br/>A partition was configured with mount point <strong>%2</strong> but its <strong>esp</strong> flag is not set.<br/>To set the flag, go back and edit the partition.<br/><br/>You can continue without setting the flag but your system may fail to start.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="449"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="450"/>
|
||||
<source>Boot partition not encrypted</source>
|
||||
<translation>Boot partition not encrypted</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="450"/>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="451"/>
|
||||
<source>A separate boot partition was set up together with an encrypted root partition, but the boot partition is not encrypted.<br/><br/>There are security concerns with this kind of setup, because important system files are kept on an unencrypted partition.<br/>You may continue if you wish, but filesystem unlocking will happen later during system startup.<br/>To encrypt the boot partition, go back and recreate it, selecting <strong>Encrypt</strong> in the partition creation window.</source>
|
||||
<translation>A separate boot partition was set up together with an encrypted root partition, but the boot partition is not encrypted.<br/><br/>There are security concerns with this kind of setup, because important system files are kept on an unencrypted partition.<br/>You may continue if you wish, but filesystem unlocking will happen later during system startup.<br/>To encrypt the boot partition, go back and recreate it, selecting <strong>Encrypt</strong> in the partition creation window.</translation>
|
||||
</message>
|
||||
@ -1912,22 +1937,22 @@ Output:
|
||||
<translation>Default</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="206"/>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="207"/>
|
||||
<source>unknown</source>
|
||||
<translation>unknown</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="208"/>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="209"/>
|
||||
<source>extended</source>
|
||||
<translation>extended</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="210"/>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="211"/>
|
||||
<source>unformatted</source>
|
||||
<translation>unformatted</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="212"/>
|
||||
<location filename="../src/modules/partition/core/KPMHelpers.cpp" line="213"/>
|
||||
<source>swap</source>
|
||||
<translation>swap</translation>
|
||||
</message>
|
||||
@ -2109,29 +2134,29 @@ Output:
|
||||
<context>
|
||||
<name>SetHostNameJob</name>
|
||||
<message>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="37"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="38"/>
|
||||
<source>Set hostname %1</source>
|
||||
<translation>Set hostname %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="44"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="45"/>
|
||||
<source>Set hostname <strong>%1</strong>.</source>
|
||||
<translation>Set hostname <strong>%1</strong>.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="51"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="52"/>
|
||||
<source>Setting hostname %1.</source>
|
||||
<translation>Setting hostname %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="61"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="68"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="62"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="69"/>
|
||||
<source>Internal Error</source>
|
||||
<translation>Internal Error</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="75"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="86"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="76"/>
|
||||
<location filename="../src/modules/users/SetHostNameJob.cpp" line="87"/>
|
||||
<source>Cannot write hostname to target system</source>
|
||||
<translation>Cannot write hostname to target system</translation>
|
||||
</message>
|
||||
@ -2583,7 +2608,7 @@ Output:
|
||||
<context>
|
||||
<name>WelcomeViewStep</name>
|
||||
<message>
|
||||
<location filename="../src/modules/welcome/WelcomeViewStep.cpp" line="51"/>
|
||||
<location filename="../src/modules/welcome/WelcomeViewStep.cpp" line="52"/>
|
||||
<source>Welcome</source>
|
||||
<translation>Welcome</translation>
|
||||
</message>
|
||||
|
@ -343,7 +343,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<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>
|
||||
<translation>%1 será reducido a %2MB y una nueva partición de %3MB será creado para %4.</translation>
|
||||
<translation>%1 será reducido a %2MB y una nueva partición %3MB will be created for %4.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="126"/>
|
||||
@ -439,12 +439,12 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="45"/>
|
||||
<source>Clear mounts for partitioning operations on %1</source>
|
||||
<translation>Despejar puntos de montaje para operaciones de particionamiento en %1</translation>
|
||||
<translation>Borrar puntos de montaje para operaciones de particionamiento en %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="53"/>
|
||||
<source>Clearing mounts for partitioning operations on %1.</source>
|
||||
<translation>Despejando puntos de montaje para operaciones de particionamiento en %1</translation>
|
||||
<translation>Borrando puntos de montaje para operaciones de particionamiento en %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/ClearMountsJob.cpp" line="190"/>
|
||||
@ -499,7 +499,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="117"/>
|
||||
<source>Contextual Processes Job</source>
|
||||
<translation>Tareas de procesos contextuales.</translation>
|
||||
<translation>Tareas de procesos contextuales</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -507,7 +507,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="14"/>
|
||||
<source>Create a Partition</source>
|
||||
<translation>Crear una partición</translation>
|
||||
<translation>Crear una Partición</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="48"/>
|
||||
@ -636,7 +636,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="45"/>
|
||||
<source>Create new %1 partition table on %2.</source>
|
||||
<translation> Crear nueva tabla de particiones %1 en %2</translation>
|
||||
<translation> Crear nueva tabla de partición %1 en %2.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="52"/>
|
||||
@ -878,7 +878,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="147"/>
|
||||
<source>Install %1 on <strong>new</strong> %2 system partition.</source>
|
||||
<translation>Instalar %1 en <strong>nueva</strong> partición de sistema %2.</translation>
|
||||
<translation>Instalar %1 en <strong>nueva</strong> %2 partición de sistema.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="151"/>
|
||||
@ -1714,7 +1714,7 @@ El instalador terminará y se perderán todos los cambios.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="190"/>
|
||||
<source><strong>Erase</strong> disk <strong>%2</strong> (%3) and install %1.</source>
|
||||
<translation> <strong>Borrar</strong> el disco <strong>%2<strong> (%3) e instalar %1.</translation>
|
||||
<translation><strong>Borrar</strong> el disco <strong>%2<strong> (%3) e instalar %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="196"/>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1325,12 +1325,12 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="201"/>
|
||||
<source>The password contains less than %1 character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит менее %1 классов символов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
|
||||
<source>The password does not contain enough character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит недостаточно классов символов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/>
|
||||
@ -1345,27 +1345,27 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
|
||||
<source>The password contains more than %1 characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит более %1 символов одного и того же класса последовательно</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
|
||||
<source>The password contains too many characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит слишком длинную последовательность символов одного и того же класса</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
|
||||
<source>The password contains monotonic sequence longer than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит монотонную последовательность длиннее %1 символов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
<source>The password contains too long of a monotonic character sequence</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль содержит слишком длинную монотонную последовательность символов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="216"/>
|
||||
<source>No password supplied</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не задан пароль</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
|
||||
@ -1841,7 +1841,9 @@ There was no output from the command.</source>
|
||||
<source>
|
||||
Output:
|
||||
</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>
|
||||
Вывод:
|
||||
</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="275"/>
|
||||
@ -1856,17 +1858,17 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="281"/>
|
||||
<source>External command failed to start.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удалось запустить внешнюю команду.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="282"/>
|
||||
<source>Command <i>%1</i> failed to start.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удалось запустить команду <i>%1</i>.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="286"/>
|
||||
<source>Internal error when starting command.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Внутренняя ошибка при запуске команды.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="287"/>
|
||||
@ -1876,7 +1878,7 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="290"/>
|
||||
<source>External command failed to finish.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удалось завершить внешнюю команду.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="291"/>
|
||||
@ -2364,12 +2366,12 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="43"/>
|
||||
<source>Installation feedback</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Отчёт об установке</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="53"/>
|
||||
<source>Sending installation feedback.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Отправка отчёта об установке.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="88"/>
|
||||
|
@ -8,51 +8,51 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
|
||||
"POT-Creation-Date: 2018-06-18 07:46-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: \n"
|
||||
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
||||
|
||||
#: src/modules/umount/main.py:40
|
||||
msgid "Unmount file systems."
|
||||
msgstr "Unmount file systems."
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypython/main.py:44
|
||||
msgid "Dummy python job."
|
||||
msgstr "Dummy python job."
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypython/main.py:97
|
||||
msgid "Dummy python step {}"
|
||||
msgstr "Dummy python step {}"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/machineid/main.py:35
|
||||
msgid "Generate machine-id."
|
||||
msgstr "Generate machine-id."
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/packages/main.py:61
|
||||
#: src/modules/packages/main.py:62
|
||||
#, python-format
|
||||
msgid "Processing packages (%(count)d / %(total)d)"
|
||||
msgstr "Processing packages (%(count)d / %(total)d)"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73
|
||||
#: src/modules/packages/main.py:64 src/modules/packages/main.py:74
|
||||
msgid "Install packages."
|
||||
msgstr "Install packages."
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/packages/main.py:66
|
||||
#: src/modules/packages/main.py:67
|
||||
#, python-format
|
||||
msgid "Installing one package."
|
||||
msgid_plural "Installing %(num)d packages."
|
||||
msgstr[0] "Installing one package."
|
||||
msgstr[1] "Installing %(num)d packages."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: src/modules/packages/main.py:69
|
||||
#: src/modules/packages/main.py:70
|
||||
#, python-format
|
||||
msgid "Removing one package."
|
||||
msgid_plural "Removing %(num)d packages."
|
||||
msgstr[0] "Removing one package."
|
||||
msgstr[1] "Removing %(num)d packages."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
Binary file not shown.
@ -20,24 +20,24 @@ msgstr ""
|
||||
|
||||
#: src/modules/umount/main.py:40
|
||||
msgid "Unmount file systems."
|
||||
msgstr ""
|
||||
msgstr "फ़ाइल सिस्टम माउंट से हटाएँ।"
|
||||
|
||||
#: src/modules/dummypython/main.py:44
|
||||
msgid "Dummy python job."
|
||||
msgstr "Dummy python job."
|
||||
msgstr "डमी पाइथन प्रक्रिया ।"
|
||||
|
||||
#: src/modules/dummypython/main.py:97
|
||||
msgid "Dummy python step {}"
|
||||
msgstr "Dummy python step {}"
|
||||
msgstr "डमी पाइथन प्रक्रिया की चरण संख्या {}"
|
||||
|
||||
#: src/modules/machineid/main.py:35
|
||||
msgid "Generate machine-id."
|
||||
msgstr "machine-id generate करें।"
|
||||
msgstr "मशीन-आईडी उत्पन्न करें।"
|
||||
|
||||
#: src/modules/packages/main.py:61
|
||||
#, python-format
|
||||
msgid "Processing packages (%(count)d / %(total)d)"
|
||||
msgstr "पैकेज (%(count)d / %(total)d) process किए जा रहे हैं"
|
||||
msgstr "पैकेज (%(count)d / %(total)d) संसाधित किए जा रहे हैं"
|
||||
|
||||
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73
|
||||
msgid "Install packages."
|
||||
|
Binary file not shown.
@ -10,6 +10,7 @@ msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Ji-Hyeon Gim <potatogim@potatogim.net>, 2018\n"
|
||||
"Language-Team: Korean (https://www.transifex.com/calamares/teams/20061/ko/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@ -19,37 +20,37 @@ msgstr ""
|
||||
|
||||
#: src/modules/umount/main.py:40
|
||||
msgid "Unmount file systems."
|
||||
msgstr ""
|
||||
msgstr "파일 시스템 마운트를 해제합니다."
|
||||
|
||||
#: src/modules/dummypython/main.py:44
|
||||
msgid "Dummy python job."
|
||||
msgstr ""
|
||||
msgstr "더미 파이썬 작업."
|
||||
|
||||
#: src/modules/dummypython/main.py:97
|
||||
msgid "Dummy python step {}"
|
||||
msgstr ""
|
||||
msgstr "더미 파이썬 단계 {}"
|
||||
|
||||
#: src/modules/machineid/main.py:35
|
||||
msgid "Generate machine-id."
|
||||
msgstr ""
|
||||
msgstr "장치 식별자를 생성합니다."
|
||||
|
||||
#: src/modules/packages/main.py:61
|
||||
#, python-format
|
||||
msgid "Processing packages (%(count)d / %(total)d)"
|
||||
msgstr ""
|
||||
msgstr "패키지들을 처리하는 중입니다 (%(count)d / %(total)d)"
|
||||
|
||||
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73
|
||||
msgid "Install packages."
|
||||
msgstr ""
|
||||
msgstr "패키지들을 설치합니다."
|
||||
|
||||
#: src/modules/packages/main.py:66
|
||||
#, python-format
|
||||
msgid "Installing one package."
|
||||
msgid_plural "Installing %(num)d packages."
|
||||
msgstr[0] ""
|
||||
msgstr[0] "%(num)d개의 패키지들을 설치하는 중입니다."
|
||||
|
||||
#: src/modules/packages/main.py:69
|
||||
#, python-format
|
||||
msgid "Removing one package."
|
||||
msgid_plural "Removing %(num)d packages."
|
||||
msgstr[0] ""
|
||||
msgstr[0] "%(num)d개의 패키지들을 제거하는 중입니다."
|
||||
|
@ -29,13 +29,19 @@
|
||||
|
||||
#include <yaml-cpp/yaml.h>
|
||||
|
||||
static bool
|
||||
hasValue( const YAML::Node& v )
|
||||
{
|
||||
return v.IsDefined() && !v.IsNull();
|
||||
}
|
||||
|
||||
/** Helper function to grab a QString out of the config, and to warn if not present. */
|
||||
static QString
|
||||
requireString( const YAML::Node& config, const char* key )
|
||||
{
|
||||
if ( config[ key ] )
|
||||
return QString::fromStdString( config[ key ].as< std::string >() );
|
||||
auto v = config[ key ];
|
||||
if ( hasValue(v) )
|
||||
return QString::fromStdString( v.as< std::string >() );
|
||||
else
|
||||
{
|
||||
cWarning() << "Required settings.conf key" << key << "is missing.";
|
||||
@ -47,8 +53,9 @@ requireString( const YAML::Node& config, const char* key )
|
||||
static bool
|
||||
requireBool( const YAML::Node& config, const char* key, bool d )
|
||||
{
|
||||
if ( config[ key ] )
|
||||
return config[ key ].as< bool >();
|
||||
auto v = config[ key ];
|
||||
if ( hasValue(v) )
|
||||
return v.as< bool >();
|
||||
else
|
||||
{
|
||||
cWarning() << "Required settings.conf key" << key << "is missing.";
|
||||
@ -175,7 +182,7 @@ Settings::Settings( const QString& settingsFilePath,
|
||||
|
||||
m_brandingComponentName = requireString( config, "branding" );
|
||||
m_promptInstall = requireBool( config, "prompt-install", false );
|
||||
m_doChroot = requireBool( config, "dont-chroot", true );
|
||||
m_doChroot = !requireBool( config, "dont-chroot", false );
|
||||
}
|
||||
catch ( YAML::Exception& e )
|
||||
{
|
||||
|
@ -26,7 +26,8 @@
|
||||
#include <QDir>
|
||||
#include <QPluginLoader>
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
|
||||
Module::Type
|
||||
@ -55,7 +56,7 @@ CppJobModule::loadSelf()
|
||||
return;
|
||||
}
|
||||
|
||||
CppJob *cppJob = pf->create< Calamares::CppJob >();
|
||||
CppJob* cppJob = pf->create< Calamares::CppJob >();
|
||||
if ( !cppJob )
|
||||
{
|
||||
cDebug() << Q_FUNC_INFO << m_loader->errorString();
|
||||
@ -68,7 +69,7 @@ CppJobModule::loadSelf()
|
||||
|
||||
cppJob->setModuleInstanceKey( instanceKey() );
|
||||
cppJob->setConfigurationMap( m_configurationMap );
|
||||
m_job = Calamares::job_ptr( static_cast< Calamares::Job * >( cppJob ) );
|
||||
m_job = Calamares::job_ptr( static_cast< Calamares::Job* >( cppJob ) );
|
||||
m_loaded = true;
|
||||
cDebug() << "CppJobModule" << instanceKey() << "loading complete.";
|
||||
}
|
||||
|
@ -71,8 +71,7 @@ Module::fromDescriptor( const QVariantMap& moduleDescriptor,
|
||||
QString typeString = moduleDescriptor.value( "type" ).toString();
|
||||
QString intfString = moduleDescriptor.value( "interface" ).toString();
|
||||
|
||||
if ( typeString.isEmpty() ||
|
||||
intfString.isEmpty() )
|
||||
if ( typeString.isEmpty() || intfString.isEmpty() )
|
||||
{
|
||||
cError() << "Bad module descriptor format" << instanceId;
|
||||
return nullptr;
|
||||
@ -80,9 +79,7 @@ Module::fromDescriptor( const QVariantMap& moduleDescriptor,
|
||||
if ( ( typeString == "view" ) || ( typeString == "viewmodule" ) )
|
||||
{
|
||||
if ( intfString == "qtplugin" )
|
||||
{
|
||||
m.reset( new ViewModule() );
|
||||
}
|
||||
else if ( intfString == "pythonqt" )
|
||||
{
|
||||
#ifdef WITH_PYTHONQT
|
||||
@ -97,13 +94,9 @@ Module::fromDescriptor( const QVariantMap& moduleDescriptor,
|
||||
else if ( typeString == "job" )
|
||||
{
|
||||
if ( intfString == "qtplugin" )
|
||||
{
|
||||
m.reset( new CppJobModule() );
|
||||
}
|
||||
else if ( intfString == "process" )
|
||||
{
|
||||
m.reset( new ProcessJobModule() );
|
||||
}
|
||||
else if ( intfString == "python" )
|
||||
{
|
||||
#ifdef WITH_PYTHON
|
||||
@ -121,8 +114,8 @@ Module::fromDescriptor( const QVariantMap& moduleDescriptor,
|
||||
if ( !m )
|
||||
{
|
||||
cError() << "Bad module type (" << typeString
|
||||
<< ") or interface string (" << intfString
|
||||
<< ") for module " << instanceId;
|
||||
<< ") or interface string (" << intfString
|
||||
<< ") for module " << instanceId;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@ -168,8 +161,7 @@ Module::loadConfigurationFile( const QString& configFileName ) //throws YAML::Ex
|
||||
{
|
||||
configFilesByPriority.append(
|
||||
QDir( QDir::currentPath() ).absoluteFilePath(
|
||||
QString( "src/modules/%1/%2" ).arg( m_name )
|
||||
.arg( configFileName ) ) );
|
||||
QString( "src/modules/%1/%2" ).arg( m_name ).arg( configFileName ) ) );
|
||||
}
|
||||
|
||||
configFilesByPriority.append(
|
||||
@ -201,8 +193,8 @@ Module::loadConfigurationFile( const QString& configFileName ) //throws YAML::Ex
|
||||
|
||||
m_configurationMap = CalamaresUtils::yamlMapToVariant( doc ).toMap();
|
||||
m_emergency = m_maybe_emergency
|
||||
&& m_configurationMap.contains( EMERGENCY )
|
||||
&& m_configurationMap[ EMERGENCY ].toBool();
|
||||
&& m_configurationMap.contains( EMERGENCY )
|
||||
&& m_configurationMap[ EMERGENCY ].toBool();
|
||||
return;
|
||||
}
|
||||
else
|
||||
@ -228,8 +220,7 @@ Module::instanceId() const
|
||||
QString
|
||||
Module::instanceKey() const
|
||||
{
|
||||
return QString( "%1@%2" ).arg( m_name )
|
||||
.arg( m_instanceId );
|
||||
return QString( "%1@%2" ).arg( m_name ).arg( m_instanceId );
|
||||
}
|
||||
|
||||
|
||||
@ -297,9 +288,7 @@ Module::initFrom( const QVariantMap& moduleDescriptor )
|
||||
m_name = moduleDescriptor.value( "name" ).toString();
|
||||
|
||||
if ( moduleDescriptor.contains( EMERGENCY ) )
|
||||
{
|
||||
m_maybe_emergency = moduleDescriptor[ EMERGENCY ].toBool();
|
||||
}
|
||||
}
|
||||
|
||||
} //ns
|
||||
|
@ -147,7 +147,10 @@ public:
|
||||
* @brief isLoaded reports on the loaded status of a module.
|
||||
* @return true if the module's loading phase has finished, otherwise false.
|
||||
*/
|
||||
bool isLoaded() const { return m_loaded; }
|
||||
bool isLoaded() const
|
||||
{
|
||||
return m_loaded;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief loadSelf initialized the module.
|
||||
@ -164,7 +167,10 @@ public:
|
||||
* are not run (in the common case where there is only
|
||||
* one exec block, this doesn't really matter).
|
||||
*/
|
||||
bool isEmergency() const { return m_emergency; }
|
||||
bool isEmergency() const
|
||||
{
|
||||
return m_emergency;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief jobs returns any jobs exposed by this module.
|
||||
|
@ -60,10 +60,8 @@ ModuleManager::ModuleManager( const QStringList& paths, QObject* parent )
|
||||
ModuleManager::~ModuleManager()
|
||||
{
|
||||
// The map is populated with Module::fromDescriptor(), which allocates on the heap.
|
||||
for( auto moduleptr : m_loadedModulesByInstanceKey )
|
||||
{
|
||||
for ( auto moduleptr : m_loadedModulesByInstanceKey )
|
||||
delete moduleptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -119,14 +117,12 @@ ModuleManager::doInit()
|
||||
else
|
||||
{
|
||||
cWarning() << "Cannot cd into module directory "
|
||||
<< path << "/" << subdir;
|
||||
<< path << "/" << subdir;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
cDebug() << "ModuleManager bad search path" << path;
|
||||
}
|
||||
}
|
||||
// At this point m_availableModules is filled with whatever was found in the
|
||||
// search paths.
|
||||
@ -182,10 +178,10 @@ ModuleManager::loadModules()
|
||||
{
|
||||
QStringList failedModules;
|
||||
Settings::InstanceDescriptionList customInstances =
|
||||
Settings::instance()->customModuleInstances();
|
||||
Settings::instance()->customModuleInstances();
|
||||
|
||||
const auto modulesSequence = Settings::instance()->modulesSequence();
|
||||
for ( const auto &modulePhase : modulesSequence )
|
||||
for ( const auto& modulePhase : modulesSequence )
|
||||
{
|
||||
ModuleAction currentAction = modulePhase.first;
|
||||
|
||||
@ -197,7 +193,7 @@ ModuleManager::loadModules()
|
||||
QString instanceId;
|
||||
QString configFileName;
|
||||
if ( moduleEntrySplit.length() < 1 ||
|
||||
moduleEntrySplit.length() > 2 )
|
||||
moduleEntrySplit.length() > 2 )
|
||||
{
|
||||
cError() << "Wrong module entry format for module" << moduleEntry;
|
||||
failedModules.append( moduleEntry );
|
||||
@ -208,20 +204,20 @@ ModuleManager::loadModules()
|
||||
configFileName = QString( "%1.conf" ).arg( moduleName );
|
||||
|
||||
if ( !m_availableDescriptorsByModuleName.contains( moduleName ) ||
|
||||
m_availableDescriptorsByModuleName.value( moduleName ).isEmpty() )
|
||||
m_availableDescriptorsByModuleName.value( moduleName ).isEmpty() )
|
||||
{
|
||||
cError() << "Module" << moduleName << "not found in module search paths."
|
||||
<< Logger::DebugList( m_paths );
|
||||
<< Logger::DebugList( m_paths );
|
||||
failedModules.append( moduleName );
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( moduleName != instanceId ) //means this is a custom instance
|
||||
{
|
||||
if ( int found = findCustomInstance( customInstances, moduleName, instanceId ) > -1 )
|
||||
{
|
||||
int found = findCustomInstance( customInstances, moduleName, instanceId );
|
||||
|
||||
if ( found > -1 )
|
||||
configFileName = customInstances[ found ].value( "config" );
|
||||
}
|
||||
else //ought to be a custom instance, but cannot find instance entry
|
||||
{
|
||||
cError() << "Custom instance" << moduleEntry << "not found in custom instances section.";
|
||||
@ -252,9 +248,7 @@ ModuleManager::loadModules()
|
||||
}
|
||||
|
||||
if ( thisModule && thisModule->isLoaded() )
|
||||
{
|
||||
cDebug() << "Module" << instanceKey << "already loaded.";
|
||||
}
|
||||
else
|
||||
{
|
||||
thisModule =
|
||||
@ -316,10 +310,10 @@ ModuleManager::checkDependencies()
|
||||
forever
|
||||
{
|
||||
for ( auto it = m_availableDescriptorsByModuleName.begin();
|
||||
it != m_availableDescriptorsByModuleName.end(); ++it )
|
||||
it != m_availableDescriptorsByModuleName.end(); ++it )
|
||||
{
|
||||
foreach ( const QString& depName,
|
||||
(*it).value( "requiredModules" ).toStringList() )
|
||||
( *it ).value( "requiredModules" ).toStringList() )
|
||||
{
|
||||
if ( !m_availableDescriptorsByModuleName.contains( depName ) )
|
||||
{
|
||||
|
@ -22,7 +22,8 @@
|
||||
|
||||
#include <QDir>
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
|
||||
Module::Type
|
||||
@ -68,23 +69,17 @@ ProcessJobModule::initFrom( const QVariantMap& moduleDescriptor )
|
||||
m_workingPath = directory.absolutePath();
|
||||
|
||||
if ( !moduleDescriptor.value( "command" ).toString().isEmpty() )
|
||||
{
|
||||
m_command = moduleDescriptor.value( "command" ).toString();
|
||||
}
|
||||
|
||||
m_secondsTimeout = 30;
|
||||
if ( moduleDescriptor.contains( "timeout" ) &&
|
||||
!moduleDescriptor.value( "timeout" ).isNull() )
|
||||
{
|
||||
!moduleDescriptor.value( "timeout" ).isNull() )
|
||||
m_secondsTimeout = moduleDescriptor.value( "timeout" ).toInt();
|
||||
}
|
||||
|
||||
m_runInChroot = false;
|
||||
if ( moduleDescriptor.contains( "chroot" )&&
|
||||
!moduleDescriptor.value( "chroot" ).isNull() )
|
||||
{
|
||||
!moduleDescriptor.value( "chroot" ).isNull() )
|
||||
m_runInChroot = moduleDescriptor.value( "chroot" ).toBool();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -23,7 +23,8 @@
|
||||
#include <QDir>
|
||||
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
|
||||
Module::Type
|
||||
@ -46,9 +47,7 @@ PythonJobModule::loadSelf()
|
||||
if ( m_loaded )
|
||||
return;
|
||||
|
||||
m_job = Calamares::job_ptr( new PythonJob( m_scriptFileName,
|
||||
m_workingPath,
|
||||
m_configurationMap ) );
|
||||
m_job = Calamares::job_ptr( new PythonJob( m_scriptFileName, m_workingPath, m_configurationMap ) );
|
||||
m_loaded = true;
|
||||
}
|
||||
|
||||
@ -68,9 +67,7 @@ PythonJobModule::initFrom( const QVariantMap& moduleDescriptor )
|
||||
m_workingPath = directory.absolutePath();
|
||||
|
||||
if ( !moduleDescriptor.value( "script" ).toString().isEmpty() )
|
||||
{
|
||||
m_scriptFileName = moduleDescriptor.value( "script" ).toString();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -23,7 +23,8 @@
|
||||
|
||||
#include "UiDllMacro.h"
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
class UIDLLEXPORT PythonJobModule : public Module
|
||||
{
|
||||
|
@ -40,7 +40,8 @@
|
||||
static QPointer< GlobalStorage > s_gs = nullptr;
|
||||
static QPointer< Utils > s_utils = nullptr;
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
Module::Type
|
||||
PythonQtViewModule::type() const
|
||||
@ -98,20 +99,21 @@ PythonQtViewModule::loadSelf()
|
||||
cala.addObject( "utils", s_utils );
|
||||
|
||||
// Append configuration object, in module PythonQt.calamares
|
||||
cala.addVariable("configuration", m_configurationMap);
|
||||
cala.addVariable( "configuration", m_configurationMap );
|
||||
|
||||
// Basic stdout/stderr handling
|
||||
QObject::connect( PythonQt::self(), &PythonQt::pythonStdOut,
|
||||
[]( const QString& message )
|
||||
{
|
||||
cDebug() << "PythonQt OUT>" << message;
|
||||
} );
|
||||
[]( const QString& message )
|
||||
{
|
||||
cDebug() << "PythonQt OUT>" << message;
|
||||
}
|
||||
);
|
||||
QObject::connect( PythonQt::self(), &PythonQt::pythonStdErr,
|
||||
[]( const QString& message )
|
||||
{
|
||||
cDebug() << "PythonQt ERR>" << message;
|
||||
} );
|
||||
|
||||
[]( const QString& message )
|
||||
{
|
||||
cDebug() << "PythonQt ERR>" << message;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
QDir workingDir( m_workingPath );
|
||||
@ -137,8 +139,8 @@ PythonQtViewModule::loadSelf()
|
||||
|
||||
// Construct empty Python module with the given name
|
||||
PythonQtObjectPtr cxt =
|
||||
PythonQt::self()->
|
||||
createModuleFromScript( name() );
|
||||
PythonQt::self()->
|
||||
createModuleFromScript( name() );
|
||||
if ( cxt.isNull() )
|
||||
{
|
||||
cDebug() << "Cannot load PythonQt context from file"
|
||||
@ -149,11 +151,11 @@ PythonQtViewModule::loadSelf()
|
||||
}
|
||||
|
||||
static const QLatin1Literal calamares_module_annotation(
|
||||
"_calamares_module_typename = ''\n"
|
||||
"def calamares_module(viewmodule_type):\n"
|
||||
" global _calamares_module_typename\n"
|
||||
" _calamares_module_typename = viewmodule_type.__name__\n"
|
||||
" return viewmodule_type\n");
|
||||
"_calamares_module_typename = ''\n"
|
||||
"def calamares_module(viewmodule_type):\n"
|
||||
" global _calamares_module_typename\n"
|
||||
" _calamares_module_typename = viewmodule_type.__name__\n"
|
||||
" return viewmodule_type\n" );
|
||||
|
||||
// Load in the decorator
|
||||
PythonQt::self()->evalScript( cxt, calamares_module_annotation );
|
||||
@ -191,9 +193,7 @@ PythonQtViewModule::initFrom( const QVariantMap& moduleDescriptor )
|
||||
m_workingPath = directory.absolutePath();
|
||||
|
||||
if ( !moduleDescriptor.value( "script" ).toString().isEmpty() )
|
||||
{
|
||||
m_scriptFileName = moduleDescriptor.value( "script" ).toString();
|
||||
}
|
||||
}
|
||||
|
||||
PythonQtViewModule::PythonQtViewModule()
|
||||
|
@ -22,7 +22,8 @@
|
||||
#include "UiDllMacro.h"
|
||||
#include "Module.h"
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
class ViewStep;
|
||||
|
||||
|
@ -27,7 +27,8 @@
|
||||
#include <QDir>
|
||||
#include <QPluginLoader>
|
||||
|
||||
namespace Calamares {
|
||||
namespace Calamares
|
||||
{
|
||||
|
||||
|
||||
Module::Type
|
||||
|
@ -21,12 +21,14 @@ fallbackKernelLine: ", with _manjaro_kernel_ (fallback initramfs)"
|
||||
# GRUB 2 binary names and boot directory
|
||||
# Some distributions (e.g. Fedora) use grub2-* (resp. /boot/grub2/) names.
|
||||
# These names are also used when using sb-shim, since that needs some
|
||||
# GRUB functionality (notably grub-probe) to work.
|
||||
# GRUB functionality (notably grub-probe) to work. As needed, you may use
|
||||
# complete paths like `/usr/bin/efibootmgr` for the executables.
|
||||
#
|
||||
grubInstall: "grub-install"
|
||||
grubMkconfig: "grub-mkconfig"
|
||||
grubCfg: "/boot/grub/grub.cfg"
|
||||
grubProbe: "/usr/sbin/grub2-probe"
|
||||
grubProbe: "grub-probe"
|
||||
efiBootMgr: "efibootmgr"
|
||||
|
||||
# Optionally set the bootloader ID to use for EFI. This is passed to
|
||||
# grub-install --bootloader-id.
|
||||
|
@ -8,7 +8,7 @@
|
||||
# Copyright 2014, Daniel Hillenbrand <codeworkx@bbqlinux.org>
|
||||
# Copyright 2014, Benjamin Vaudour <benjamin.vaudour@yahoo.fr>
|
||||
# Copyright 2014, Kevin Kofler <kevin.kofler@chello.at>
|
||||
# Copyright 2015-2017, Philip Mueller <philm@manjaro.org>
|
||||
# Copyright 2015-2018, Philip Mueller <philm@manjaro.org>
|
||||
# Copyright 2016-2017, Teo Mrnjavac <teo@kde.org>
|
||||
# Copyright 2017, Alf Gaida <agaida@siduction.org>
|
||||
# Copyright 2017-2018, Adriaan de Groot <groot@kde.org>
|
||||
@ -351,7 +351,7 @@ def install_secureboot(efi_directory):
|
||||
raise ValueError("No partition number found for %s" % install_efi_directory)
|
||||
|
||||
subprocess.call([
|
||||
"/usr/sbin/efibootmgr",
|
||||
libcalamares.job.configuration["efiBootMgr"],
|
||||
"-c",
|
||||
"-w",
|
||||
"-L", efi_bootloader_id,
|
||||
|
@ -8,35 +8,35 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-02-07 18:58+0100\n"
|
||||
"POT-Creation-Date: 2018-06-18 07:46-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: \n"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:84
|
||||
msgid "Click me!"
|
||||
msgstr "Click me!"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:94
|
||||
msgid "A new QLabel."
|
||||
msgstr "A new QLabel."
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:97
|
||||
msgid "Dummy PythonQt ViewStep"
|
||||
msgstr "Dummy PythonQt ViewStep"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:183
|
||||
msgid "The Dummy PythonQt Job"
|
||||
msgstr "The Dummy PythonQt Job"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:186
|
||||
msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
|
||||
msgstr "This is the Dummy PythonQt Job. The dummy job says: {}"
|
||||
msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:190
|
||||
msgid "A status message for Dummy PythonQt Job."
|
||||
msgstr "A status message for Dummy PythonQt Job."
|
||||
msgstr ""
|
||||
|
Binary file not shown.
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-04-13 10:28-0400\n"
|
||||
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Panwar108 <caspian7pena@gmail.com>, 2018\n"
|
||||
"Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n"
|
||||
@ -28,16 +28,16 @@ msgstr "नया QLabel।"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:97
|
||||
msgid "Dummy PythonQt ViewStep"
|
||||
msgstr "Dummy PythonQt ViewStep"
|
||||
msgstr "डमी पाइथन प्रक्रिया की चरण संख्या देखें"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:183
|
||||
msgid "The Dummy PythonQt Job"
|
||||
msgstr "The Dummy PythonQt Job"
|
||||
msgstr "डमी पाइथन प्रक्रिया"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:186
|
||||
msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
|
||||
msgstr "यह Dummy PythonQt Job है।The dummy job says: {}"
|
||||
msgstr "यह डमी पाइथन प्रक्रिया है। डमी प्रक्रिया संबंधी संदेश : {}"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:190
|
||||
msgid "A status message for Dummy PythonQt Job."
|
||||
msgstr "Dummy PythonQt Job के लिए एक status संदेश।"
|
||||
msgstr "डमी पाइथन प्रक्रिया की अवस्था संबंधी संदेश।"
|
||||
|
Binary file not shown.
@ -10,6 +10,7 @@ msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Ji-Hyeon Gim <potatogim@potatogim.net>, 2018\n"
|
||||
"Language-Team: Korean (https://www.transifex.com/calamares/teams/20061/ko/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@ -19,24 +20,24 @@ msgstr ""
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:84
|
||||
msgid "Click me!"
|
||||
msgstr ""
|
||||
msgstr "여기를 클릭하세요!"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:94
|
||||
msgid "A new QLabel."
|
||||
msgstr ""
|
||||
msgstr "새로운 QLabel."
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:97
|
||||
msgid "Dummy PythonQt ViewStep"
|
||||
msgstr ""
|
||||
msgstr "더미 PythonQt ViewStep"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:183
|
||||
msgid "The Dummy PythonQt Job"
|
||||
msgstr ""
|
||||
msgstr "더미 PythonQt Job"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:186
|
||||
msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
|
||||
msgstr ""
|
||||
msgstr "더미 PythonQt Job입니다. 이 더미 Job의 출력은 다음과 같습니다: {}"
|
||||
|
||||
#: src/modules/dummypythonqt/main.py:190
|
||||
msgid "A status message for Dummy PythonQt Job."
|
||||
msgstr ""
|
||||
msgstr "더미 PythonQt Job의 상태 메시지"
|
||||
|
@ -7,6 +7,7 @@
|
||||
# Copyright 2015, Philip Müller <philm@manjaro.org>
|
||||
# Copyright 2016, Teo Mrnjavac <teo@kde.org>
|
||||
# Copyright 2018, AlmAck <gluca86@gmail.com>
|
||||
# Copyright 2018, Adriaan de Groot <groot@kde.org>
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@ -22,14 +23,91 @@
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
|
||||
import libcalamares
|
||||
RE_IS_COMMENT = re.compile("^ *#")
|
||||
def is_comment(line):
|
||||
"""
|
||||
Does the @p line look like a comment? Whitespace, followed by a #
|
||||
is a comment-only line.
|
||||
"""
|
||||
return bool(RE_IS_COMMENT.match(line))
|
||||
|
||||
RE_TRAILING_COMMENT = re.compile("#.*$")
|
||||
RE_REST_OF_LINE = re.compile("\\s.*$")
|
||||
def extract_locale(line):
|
||||
"""
|
||||
Extracts a locale from the @p line, and returns a pair of
|
||||
(extracted-locale, uncommented line). The locale is the
|
||||
first word of the line after uncommenting (in the human-
|
||||
readable text explanation at the top of most /etc/locale.gen
|
||||
files, the locales may be bogus -- either "" or e.g. "Configuration")
|
||||
"""
|
||||
# Remove leading spaces and comment signs
|
||||
line = RE_IS_COMMENT.sub("", line)
|
||||
uncommented = line.strip()
|
||||
fields = RE_TRAILING_COMMENT.sub("", uncommented).strip().split()
|
||||
if len(fields) != 2:
|
||||
# Not exactly two fields, can't be a proper locale line
|
||||
return "", uncommented
|
||||
else:
|
||||
# Drop all but first field
|
||||
locale = RE_REST_OF_LINE.sub("", uncommented)
|
||||
return locale, uncommented
|
||||
|
||||
|
||||
def rewrite_locale_gen(srcfilename, destfilename, locale_conf):
|
||||
"""
|
||||
Copies a locale.gen file from @p srcfilename to @p destfilename
|
||||
(this may be the same name), enabling those locales that can
|
||||
be found in the map @p locale_conf. Also always enables en_US.UTF-8.
|
||||
"""
|
||||
en_us_locale = 'en_US.UTF-8'
|
||||
|
||||
# Get entire source-file contents
|
||||
text = []
|
||||
with open(srcfilename, "r") as gen:
|
||||
text = gen.readlines()
|
||||
|
||||
# we want unique values, so locale_values should have 1 or 2 items
|
||||
locale_values = set(locale_conf.values())
|
||||
locale_values.add(en_us_locale) # Always enable en_US as well
|
||||
|
||||
enabled_locales = {}
|
||||
seen_locales = set()
|
||||
|
||||
# Write source out again, enabling some
|
||||
with open(destfilename, "w") as gen:
|
||||
for line in text:
|
||||
c = is_comment(line)
|
||||
locale, uncommented = extract_locale(line)
|
||||
|
||||
# Non-comment lines are preserved, and comment lines
|
||||
# may be enabled if they match a desired locale
|
||||
if not c:
|
||||
seen_locales.add(locale)
|
||||
else:
|
||||
for locale_value in locale_values:
|
||||
if locale.startswith(locale_value):
|
||||
enabled_locales[locale] = uncommented
|
||||
gen.write(line)
|
||||
|
||||
gen.write("\n###\n#\n# Locales enabled by Calamares\n")
|
||||
for locale, line in enabled_locales.items():
|
||||
if locale not in seen_locales:
|
||||
gen.write(line + "\n")
|
||||
seen_locales.add(locale)
|
||||
|
||||
for locale in locale_values:
|
||||
if locale not in seen_locales:
|
||||
gen.write("# Missing: %s\n" % locale)
|
||||
|
||||
|
||||
def run():
|
||||
""" Create locale """
|
||||
en_us_locale = 'en_US.UTF-8'
|
||||
import libcalamares
|
||||
|
||||
locale_conf = libcalamares.globalstorage.value("localeConf")
|
||||
|
||||
if not locale_conf:
|
||||
@ -47,50 +125,36 @@ def run():
|
||||
}
|
||||
|
||||
install_path = libcalamares.globalstorage.value("rootMountPoint")
|
||||
target_locale_gen = "{!s}/etc/locale.gen".format(install_path)
|
||||
target_locale_gen_bak = target_locale_gen + ".bak"
|
||||
target_locale_conf_path = "{!s}/etc/locale.conf".format(install_path)
|
||||
target_etc_default_path = "{!s}/etc/default".format(install_path)
|
||||
|
||||
# restore backup if available
|
||||
if os.path.exists('/etc/locale.gen.bak'):
|
||||
shutil.copy2("{!s}/etc/locale.gen.bak".format(install_path),
|
||||
"{!s}/etc/locale.gen".format(install_path))
|
||||
if os.path.exists(target_locale_gen_bak):
|
||||
shutil.copy2(target_locale_gen_bak, target_locale_gen)
|
||||
libcalamares.utils.debug("Restored backup {!s} -> {!s}"
|
||||
.format(target_locale_gen_bak).format(target_locale_gen))
|
||||
|
||||
# run locale-gen if detected
|
||||
# run locale-gen if detected; this *will* cause an exception
|
||||
# if the live system has locale.gen, but the target does not:
|
||||
# in that case, fix your installation filesystem.
|
||||
if os.path.exists('/etc/locale.gen'):
|
||||
text = []
|
||||
|
||||
with open("{!s}/etc/locale.gen".format(install_path), "r") as gen:
|
||||
text = gen.readlines()
|
||||
|
||||
# we want unique values, so locale_values should have 1 or 2 items
|
||||
locale_values = set(locale_conf.values())
|
||||
|
||||
with open("{!s}/etc/locale.gen".format(install_path), "w") as gen:
|
||||
for line in text:
|
||||
# always enable en_US
|
||||
if line.startswith("#" + en_us_locale):
|
||||
# uncomment line
|
||||
line = line[1:].lstrip()
|
||||
|
||||
for locale_value in locale_values:
|
||||
if line.startswith("#" + locale_value):
|
||||
# uncomment line
|
||||
line = line[1:].lstrip()
|
||||
|
||||
gen.write(line)
|
||||
|
||||
rewrite_locale_gen(target_locale_gen, target_locale_gen, locale_conf)
|
||||
libcalamares.utils.target_env_call(['locale-gen'])
|
||||
print('locale.gen done')
|
||||
libcalamares.utils.debug('{!s} done'.format(target_locale_gen))
|
||||
|
||||
# write /etc/locale.conf
|
||||
locale_conf_path = os.path.join(install_path, "etc/locale.conf")
|
||||
with open(locale_conf_path, "w") as lcf:
|
||||
with open(target_locale_conf_path, "w") as lcf:
|
||||
for k, v in locale_conf.items():
|
||||
lcf.write("{!s}={!s}\n".format(k, v))
|
||||
libcalamares.utils.debug('{!s} done'.format(target_locale_conf_path))
|
||||
|
||||
# write /etc/default/locale if /etc/default exists and is a dir
|
||||
etc_default_path = os.path.join(install_path, "etc/default")
|
||||
if os.path.isdir(etc_default_path):
|
||||
with open(os.path.join(etc_default_path, "locale"), "w") as edl:
|
||||
if os.path.isdir(target_etc_default_path):
|
||||
with open(os.path.join(target_etc_default_path, "locale"), "w") as edl:
|
||||
for k, v in locale_conf.items():
|
||||
edl.write("{!s}={!s}\n".format(k, v))
|
||||
libcalamares.utils.debug('{!s} done'.format(target_etc_default_path))
|
||||
|
||||
return None
|
||||
|
@ -1,3 +1,6 @@
|
||||
# Enable the configured locales (those set by the user on the
|
||||
# user page) in /etc/locale.gen, if they are available in the
|
||||
# target system.
|
||||
---
|
||||
type: "job"
|
||||
name: "localecfg"
|
||||
|
@ -8,6 +8,7 @@
|
||||
# Copyright 2016-2017, Kyle Robbertze <kyle@aims.ac.za>
|
||||
# Copyright 2017, Alf Gaida <agaida@siduction.org>
|
||||
# Copyright 2018, Adriaan de Groot <groot@kde.org>
|
||||
# Copyright 2018, Philip Müller <philm@manjaro.org>
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@ -153,6 +154,8 @@ class PMPackageKit(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["pkcon", "refresh"])
|
||||
|
||||
def update_system(self):
|
||||
check_target_env_call(["pkcon", "-py", "update"])
|
||||
|
||||
class PMZypp(PackageManager):
|
||||
backend = "zypp"
|
||||
@ -170,12 +173,15 @@ class PMZypp(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["zypper", "--non-interactive", "update"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
class PMYum(PackageManager):
|
||||
backend = "yum"
|
||||
|
||||
def install(self, pkgs, from_local=False):
|
||||
check_target_env_call(["yum", "install", "-y"] + pkgs)
|
||||
check_target_env_call(["yum", "-y", "install"] + pkgs)
|
||||
|
||||
def remove(self, pkgs):
|
||||
check_target_env_call(["yum", "--disablerepo=*", "-C", "-y",
|
||||
@ -185,12 +191,14 @@ class PMYum(PackageManager):
|
||||
# Doesn't need updates
|
||||
pass
|
||||
|
||||
def update_system(self):
|
||||
check_target_env_call(["yum", "-y", "upgrade"])
|
||||
|
||||
class PMDnf(PackageManager):
|
||||
backend = "dnf"
|
||||
|
||||
def install(self, pkgs, from_local=False):
|
||||
check_target_env_call(["dnf", "install", "-y"] + pkgs)
|
||||
check_target_env_call(["dnf", "-y", "install"] + pkgs)
|
||||
|
||||
def remove(self, pkgs):
|
||||
# ignore the error code for now because dnf thinks removing a
|
||||
@ -199,9 +207,12 @@ class PMDnf(PackageManager):
|
||||
"remove"] + pkgs)
|
||||
|
||||
def update_db(self):
|
||||
# Doesn't need to update explicitly
|
||||
# Doesn't need updates
|
||||
pass
|
||||
|
||||
def update_system(self):
|
||||
check_target_env_call(["dnf", "-y", "upgrade"])
|
||||
|
||||
|
||||
class PMUrpmi(PackageManager):
|
||||
backend = "urpmi"
|
||||
@ -218,6 +229,10 @@ class PMUrpmi(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["urpmi.update", "-a"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
|
||||
class PMApt(PackageManager):
|
||||
backend = "apt"
|
||||
@ -234,6 +249,10 @@ class PMApt(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["apt-get", "update"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
|
||||
class PMPacman(PackageManager):
|
||||
backend = "pacman"
|
||||
@ -242,7 +261,7 @@ class PMPacman(PackageManager):
|
||||
if from_local:
|
||||
pacman_flags = "-U"
|
||||
else:
|
||||
pacman_flags = "-Sy"
|
||||
pacman_flags = "-S"
|
||||
|
||||
check_target_env_call(["pacman", pacman_flags,
|
||||
"--noconfirm"] + pkgs)
|
||||
@ -253,6 +272,9 @@ class PMPacman(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["pacman", "-Sy"])
|
||||
|
||||
def update_system(self):
|
||||
check_target_env_call(["pacman", "-Su"])
|
||||
|
||||
|
||||
class PMPortage(PackageManager):
|
||||
backend = "portage"
|
||||
@ -267,6 +289,10 @@ class PMPortage(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["emerge", "--sync"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
|
||||
class PMEntropy(PackageManager):
|
||||
backend = "entropy"
|
||||
@ -280,6 +306,10 @@ class PMEntropy(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["equo", "update"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
|
||||
class PMDummy(PackageManager):
|
||||
backend = "dummy"
|
||||
@ -293,6 +323,9 @@ class PMDummy(PackageManager):
|
||||
def update_db(self):
|
||||
libcalamares.utils.debug("Updating DB")
|
||||
|
||||
def update_system(self):
|
||||
libcalamares.utils.debug("Updating System")
|
||||
|
||||
def run(self, script):
|
||||
libcalamares.utils.debug("Running script '" + str(script) + "'")
|
||||
|
||||
@ -309,6 +342,10 @@ class PMPisi(PackageManager):
|
||||
def update_db(self):
|
||||
check_target_env_call(["pisi", "update-repo"])
|
||||
|
||||
def update_system(self):
|
||||
# Doesn't need to update the system explicitly
|
||||
pass
|
||||
|
||||
|
||||
# Collect all the subclasses of PackageManager defined above,
|
||||
# and index them based on the backend property of each class.
|
||||
@ -452,6 +489,10 @@ def run():
|
||||
if update_db and libcalamares.globalstorage.value("hasInternet"):
|
||||
pkgman.update_db()
|
||||
|
||||
update_system = libcalamares.job.configuration.get("update_system", False)
|
||||
if update_system and libcalamares.globalstorage.value("hasInternet"):
|
||||
pkgman.update_system()
|
||||
|
||||
operations = libcalamares.job.configuration.get("operations", [])
|
||||
if libcalamares.globalstorage.contains("packageOperations"):
|
||||
operations += libcalamares.globalstorage.value("packageOperations")
|
||||
|
@ -14,21 +14,30 @@
|
||||
#
|
||||
backend: dummy
|
||||
|
||||
#
|
||||
# Often package installation needs an internet connection.
|
||||
# Since you may allow system installation without a connection
|
||||
# and want to offer **optional** package installation, it's
|
||||
# and want to offer OPTIONAL package installation, it's
|
||||
# possible to have no internet, yet have this packages module
|
||||
# enabled in settings.
|
||||
#
|
||||
# You can skip the whole module when there is no internet
|
||||
# by setting *skip_if_no_internet* to true.
|
||||
# by setting "skip_if_no_internet" to true.
|
||||
#
|
||||
# You can run a package-manager specific update procedure
|
||||
# before installing packages (for instance, to update the
|
||||
# list of packages and dependencies); this is done only if there
|
||||
# is an internet connection. Set *update_db* to true to do so.
|
||||
# is an internet connection.
|
||||
#
|
||||
# Set "update_db" to 'true' for refreshing the database on the
|
||||
# target system. On target installations, which got installed by
|
||||
# unsquashing, a full system update may be needed. Otherwise
|
||||
# post-installing additional packages may result in conflicts.
|
||||
# Therefore set also "update_system" to 'true'.
|
||||
#
|
||||
skip_if_no_internet: false
|
||||
update_db: true
|
||||
update_system: false
|
||||
|
||||
#
|
||||
# List of maps with package operations such as install or remove.
|
||||
@ -86,14 +95,14 @@ update_db: true
|
||||
#
|
||||
# - if the system locale is English (any variety), then the package is not
|
||||
# installed at all,
|
||||
# - otherwise $LOCALE or ${LOCALE} is replaced by the **lower-cased** BCP47
|
||||
# name of the **language** part of the selected system locale (not the
|
||||
# country/region/dialect part), e.g. selecting *nl_BE* will use *nl*
|
||||
# - otherwise $LOCALE or ${LOCALE} is replaced by the 'lower-cased' BCP47
|
||||
# name of the 'language' part of the selected system locale (not the
|
||||
# country/region/dialect part), e.g. selecting "nl_BE" will use "nl"
|
||||
# here.
|
||||
#
|
||||
# Take care that just plain LOCALE will not be replaced, so foo-LOCALE will
|
||||
# be left unchanged, while foo-$LOCALE will be changed. However, foo-LOCALE
|
||||
# **will** be removed from the list of packages, if English is selected.
|
||||
# 'will' be removed from the list of packages, if English is selected.
|
||||
#
|
||||
# The following installs localizations for vi, if they are relevant; if
|
||||
# there is no localization, installation continues normally.
|
||||
|
@ -104,7 +104,7 @@
|
||||
<item>
|
||||
<widget class="QPushButton" name="createButton">
|
||||
<property name="text">
|
||||
<string>&Create</string>
|
||||
<string>Cre&ate</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
Loading…
Reference in New Issue
Block a user