diff --git a/CHANGES b/CHANGES
index 49e020363..d7510976a 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3,7 +3,7 @@ contributors are listed. Note that Calamares does not have a historical
changelog -- this log starts with version 3.2.0. The release notes on the
website will have to do for older versions.
-# 3.2.27 (unreleased) #
+# 3.2.28 (unreleased) #
This release contains contributions from (alphabetically by first name):
- No external contributors yet
@@ -15,6 +15,25 @@ This release contains contributions from (alphabetically by first name):
- No module changes yet
+# 3.2.27 (2020-07-11) #
+
+This release contains contributions from (alphabetically by first name):
+ - Gaël PORTAY
+ - Vitor Lopes (new! welcome!)
+
+## Core ##
+ - QML modules with no surrounding navigation -- this is basically a
+ special case for full-screen Calamares -- now have margins suitable
+ for full-screen use.
+ - PythonQt modules are increasingly on the way out.
+
+## Modules ##
+ - The Manjaro package manager *pamac* has been added to those supported by
+ the *packages* module.
+ - The *netinstall* module has had some minor UI tweaks.
+ - Partitioning now tries harder to avoid floppy drives.
+
+
# 3.2.26.1 (2020-06-23) #
This is a hotfix release for undefined behavior caused by an
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b653f0996..fb3ccf699 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,10 +46,10 @@
# TODO:3.3: Require CMake 3.12
cmake_minimum_required( VERSION 3.3 FATAL_ERROR )
project( CALAMARES
- VERSION 3.2.26.1
+ VERSION 3.2.28
LANGUAGES C CXX )
-set( CALAMARES_VERSION_RC 0 ) # Set to 0 during release cycle, 1 during development
+set( CALAMARES_VERSION_RC 1 ) # Set to 0 during release cycle, 1 during development
### OPTIONS
#
diff --git a/CMakeModules/CalamaresAddBrandingSubdirectory.cmake b/CMakeModules/CalamaresAddBrandingSubdirectory.cmake
index 9283b48a7..70fcd9279 100644
--- a/CMakeModules/CalamaresAddBrandingSubdirectory.cmake
+++ b/CMakeModules/CalamaresAddBrandingSubdirectory.cmake
@@ -70,7 +70,11 @@ function( calamares_add_branding NAME )
foreach( BRANDING_COMPONENT_FILE ${BRANDING_COMPONENT_FILES} )
set( _subpath ${_brand_dir}/${BRANDING_COMPONENT_FILE} )
if( NOT IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_subpath} )
- configure_file( ${_subpath} ${_subpath} COPYONLY )
+ set( _src ${CMAKE_CURRENT_SOURCE_DIR}/${_subpath} )
+ set( _dst ${CMAKE_CURRENT_BINARY_DIR}/${_subpath} )
+ if( ${_src} IS_NEWER_THAN ${_dst} )
+ configure_file( ${_src} ${_dst} COPYONLY )
+ endif()
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_subpath}
DESTINATION ${BRANDING_COMPONENT_DESTINATION}/${_subdir}/ )
diff --git a/calamares.desktop b/calamares.desktop
index c385e3c91..78c943ddb 100644
--- a/calamares.desktop
+++ b/calamares.desktop
@@ -33,6 +33,10 @@ Name[bg]=Инсталирай системата
Icon[bg]=calamares
GenericName[bg]=Системен Инсталатор
Comment[bg]=Calamares — Системен Инсталатор
+Name[bn]=সিস্টেম ইনস্টল করুন
+Icon[bn]=ক্যালামারেস
+GenericName[bn]=সিস্টেম ইনস্টলার
+Comment[bn]=ক্যালামারেস - সিস্টেম ইনস্টলার
Name[ca]=Instal·la el sistema
Icon[ca]=calamares
GenericName[ca]=Instal·lador de sistema
diff --git a/lang/calamares_az.ts b/lang/calamares_az.ts
index c4ab24305..bfc079749 100644
--- a/lang/calamares_az.ts
+++ b/lang/calamares_az.ts
@@ -24,7 +24,7 @@
- %1 Əsas ön yükləyici qurmaq
+ %1 əsas Ön yükləyici qurmaq
@@ -132,7 +132,7 @@
- Tapşırığı yerinə yetirmək mümkün olmadı (%1)
+ (%1) Tapşırığı yerinə yetirmək mümkün olmadı
@@ -199,7 +199,7 @@
- %1 Əsas əmrlər faylı %2 python işləri üçün açıla bilmir.
+ %1 əsas əmrlər faylı %2 python işləri üçün açıla bilmir.
@@ -311,7 +311,7 @@
- %1 quraşdırılmadı. Calamares konfiqurasiya edilmiş modulların hamısını yükləyə bilmədi. Bu Calamares'i sizin distribütör tərəfindən necə istifadə edilməsindən asılı olan bir problemdir.
+ %1 quraşdırılmadı. Calamares konfiqurasiya edilmiş modulların hamısını yükləyə bilmədi. Bu Calamares'i, sizin distribütör tərəfindən necə istifadə edilməsindən asılı olan bir problemdir.
@@ -433,22 +433,22 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Naməlum istisna halı
+ Naməlum istisna hal
- görünməmiş python xətası
+ görünməmiş Python xətası
- görünməmiş python izi
+ görünməmiş Python izi
- Oxunmayan python xətası.
+ Oxunmayan Python xətası.
@@ -530,7 +530,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <strong>Əli ilə bölmək</strong><br/>Siz disk sahəsini özünüz bölə və ölçülərini təyin edə bilərsiniz. GPT disk bölmələri cədvəli və <strong>fat32 512Mb /boot bölməsi UEFI sistemi üçün vacibdir.</strong>ya da mövcud bir bölmə varsa onu istifadə edin, və ya başqa birini yaradın.
+ <strong>Əl ilə bölmək</strong><br/>Siz disk sahəsini özünüz bölə və ölçülərini təyin edə bilərsiniz. GPT disk bölmələri cədvəli və <strong>fat32 512Mb /boot bölməsi UEFI sistemi üçün vacibdir</strong>, ya da mövcud bir bölmə varsa onu istifadə edin, və ya başqa birini yaradın.
@@ -583,7 +583,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <strong>Diski təmizləmək</strong><br/> <font color="red">Silmək</font> hal-hazırda seçilmiş diskdəki bütün verilənləri siləcəkdir.
+ <strong>Diski təmizləmək</strong><br/> <font color="red">Silmək</font>seçimi hal-hazırda, seçilmiş diskdəki bütün verilənləri siləcəkdir.
@@ -694,7 +694,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Əmr quraşdırı mühitində icra olunur və kök qovluğa yolu bilinməlidir, lakin rootMountPoint aşkar edilmədi.
+ Əmr, quraşdırı mühitində icra olunur və kök qovluğa yolu bilinməlidir, lakin rootMountPoint - KökQoşulmaNöqtəsi - aşkar edilmədi.
@@ -772,7 +772,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bu proqram sizə bəi suallar verəcək və %2 sizin komputerinizə qurmağa kömək edəcək.
+ Bu proqram sizə bəzi suallar verəcək və %2 əməliyyat sistemini sizin komputerinizə qurmağa kömək edəcək.
@@ -914,7 +914,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bölmələr Cədvəli yaratmaq bütün diskdə olan məlumatların hamısını siləcək.
+ Bölmələr Cədvəli yaratmaq, bütün diskdə olan məlumatların hamısını siləcək.
@@ -1203,7 +1203,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Forma
+ Format
@@ -1223,7 +1223,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Lütfən hər iki sahəyə eyni şifrəni daxil edin.
+ Lütfən, hər iki sahəyə eyni şifrəni daxil edin.
@@ -1279,17 +1279,17 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <h1>Hər şey hazırdır.</h1><br/>%1 sizin kopyuterə qurulacaqdır.<br/>Siz indi yeni sisteminizi başlada bilərsiniz.
+ <h1>Hər şey hazırdır.</h1><br/>%1 kompyuterinizə qurulub.<br/>Siz indi yeni sisteminizi başlada bilərsiniz.
- <html><head/><body><p>Bu çərçivə işarələnərsə siz <span style="font-style:italic;">Hazır</span> düyməsinə vurduğunuz və ya quraşdırıcı proqramı bağladığınız zaman sisteminiz dərhal yenidən başladılacaqdır.</p></body></html>
+ <html><head/><body><p>Bu çərçivə işarələnərsə siz <span style="font-style:italic;">Hazır</span> düyməsinə vurduğunuz və ya quraşdırıcı proqramı bağlatdığınız zaman sisteminiz dərhal yenidən başladılacaqdır.</p></body></html>
- <h1>Hər şey hazırdır.</h1><br/>%1 sizin kompyuterinizə quraşdırıldı.<br/>Siz yenidən başladaraq yeni sisteminizə daxil ola və ya %2 Canlı mühitini istifadə etməyə davam edə bilərsiniz.
+ <h1>Hər şey hazırdır.</h1><br/>%1 kompyuterinizə quraşdırıldı.<br/>Siz yenidən başladaraq yeni sisteminizə daxil ola və ya %2 Canlı mühitini istifadə etməyə davam edə bilərsiniz.
@@ -1299,12 +1299,12 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <h1>Quraşdırılma alınmadı</h1><br/>%1 sizin kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
+ <h1>Quraşdırılma alınmadı</h1><br/>%1 kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
- <h1>Quraşdırılma alınmadı</h1><br/>%1 sizin kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
+ <h1>Quraşdırılma alınmadı</h1><br/>%1 kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
@@ -1332,7 +1332,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- %1in quraşdırılması başa çatdı.
+ %1-n quraşdırılması başa çatdı.
@@ -1340,7 +1340,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- %4-də %1 bölməsini format etmək (fayl sistemi: %2, ölçüsü: %3 MB).
+ %4 üzərində %1 bölməsini format etmək (fayl sistemi: %2, ölçüsü: %3 MB).
@@ -1368,7 +1368,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Kifayət qədər disk sahəsi yoxdur. əƏn azı %1 QB tələb olunur.
+ Kifayət qədər disk sahəsi yoxdur. Ən azı %1 QB tələb olunur.
@@ -1403,7 +1403,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- quraşdırıcı adminstrator (root) imtiyazları ilə başladılması
+ quraşdırıcını adminstrator (root) imtiyazları ilə başladılması
@@ -1428,7 +1428,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bu quarşdırıcını göstəmək üçün ekran çox kiçikdir.
+ Bu quarşdırıcını göstərmək üçün ekran çox kiçikdir.
@@ -1680,7 +1680,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Zona:
+ Saat qurşağı:
@@ -3845,7 +3845,7 @@ Output:
- Qatları
+ Qatlar
@@ -3866,7 +3866,7 @@ Output:
- klaviaturanızı yoxlayın
+ Klaviaturanızı yoxlayın
@@ -3879,7 +3879,7 @@ Output:
- Yerli saylvə tarix formatlarını %1 qurmaq
+ Yerli say və tarix formatlarını %1 qurmaq
diff --git a/lang/calamares_az_AZ.ts b/lang/calamares_az_AZ.ts
index f329495fc..3368ce761 100644
--- a/lang/calamares_az_AZ.ts
+++ b/lang/calamares_az_AZ.ts
@@ -24,7 +24,7 @@
- %1 Əsas ön yükləyici qurmaq
+ %1 əsas Ön yükləyici qurmaq
@@ -132,7 +132,7 @@
- Tapşırığı yerinə yetirmək mümkün olmadı (%1)
+ (%1) Tapşırığı yerinə yetirmək mümkün olmadı
@@ -199,7 +199,7 @@
- %1 Əsas əmrlər faylı %2 python işləri üçün açıla bilmir.
+ %1 əsas əmrlər faylı %2 python işləri üçün açıla bilmir.
@@ -311,7 +311,7 @@
- %1 quraşdırılmadı. Calamares konfiqurasiya edilmiş modulların hamısını yükləyə bilmədi. Bu Calamares'i sizin distribütör tərəfindən necə istifadə edilməsindən asılı olan bir problemdir.
+ %1 quraşdırılmadı. Calamares konfiqurasiya edilmiş modulların hamısını yükləyə bilmədi. Bu Calamares'i, sizin distribütör tərəfindən necə istifadə edilməsindən asılı olan bir problemdir.
@@ -433,22 +433,22 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Naməlum istisna halı
+ Naməlum istisna hal
- görünməmiş python xətası
+ görünməmiş Python xətası
- görünməmiş python izi
+ görünməmiş Python izi
- Oxunmayan python xətası.
+ Oxunmayan Python xətası.
@@ -530,7 +530,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <strong>Əli ilə bölmək</strong><br/>Siz disk sahəsini özünüz bölə və ölçülərini təyin edə bilərsiniz. GPT disk bölmələri cədvəli və <strong>fat32 512Mb /boot bölməsi UEFI sistemi üçün vacibdir.</strong>ya da mövcud bir bölmə varsa onu istifadə edin, və ya başqa birini yaradın.
+ <strong>Əl ilə bölmək</strong><br/>Siz disk sahəsini özünüz bölə və ölçülərini təyin edə bilərsiniz. GPT disk bölmələri cədvəli və <strong>fat32 512Mb /boot bölməsi UEFI sistemi üçün vacibdir</strong>, ya da mövcud bir bölmə varsa onu istifadə edin, və ya başqa birini yaradın.
@@ -583,7 +583,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <strong>Diski təmizləmək</strong><br/> <font color="red">Silmək</font> hal-hazırda seçilmiş diskdəki bütün verilənləri siləcəkdir.
+ <strong>Diski təmizləmək</strong><br/> <font color="red">Silmək</font>seçimi hal-hazırda, seçilmiş diskdəki bütün verilənləri siləcəkdir.
@@ -694,7 +694,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Əmr quraşdırı mühitində icra olunur və kök qovluğa yolu bilinməlidir, lakin rootMountPoint aşkar edilmədi.
+ Əmr, quraşdırı mühitində icra olunur və kök qovluğa yolu bilinməlidir, lakin rootMountPoint - KökQoşulmaNöqtəsi - aşkar edilmədi.
@@ -772,7 +772,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bu proqram sizə bəi suallar verəcək və %2 sizin komputerinizə qurmağa kömək edəcək.
+ Bu proqram sizə bəzi suallar verəcək və %2 əməliyyat sistemini sizin komputerinizə qurmağa kömək edəcək.
@@ -914,7 +914,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bölmələr Cədvəli yaratmaq bütün diskdə olan məlumatların hamısını siləcək.
+ Bölmələr Cədvəli yaratmaq, bütün diskdə olan məlumatların hamısını siləcək.
@@ -1203,7 +1203,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Forma
+ Format
@@ -1223,7 +1223,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Lütfən hər iki sahəyə eyni şifrəni daxil edin.
+ Lütfən, hər iki sahəyə eyni şifrəni daxil edin.
@@ -1279,17 +1279,17 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <h1>Hər şey hazırdır.</h1><br/>%1 sizin kopyuterə qurulacaqdır.<br/>Siz indi yeni sisteminizi başlada bilərsiniz.
+ <h1>Hər şey hazırdır.</h1><br/>%1 kompyuterinizə qurulub.<br/>Siz indi yeni sisteminizi başlada bilərsiniz.
- <html><head/><body><p>Bu çərçivə işarələnərsə siz <span style="font-style:italic;">Hazır</span> düyməsinə vurduğunuz və ya quraşdırıcı proqramı bağladığınız zaman sisteminiz dərhal yenidən başladılacaqdır.</p></body></html>
+ <html><head/><body><p>Bu çərçivə işarələnərsə siz <span style="font-style:italic;">Hazır</span> düyməsinə vurduğunuz və ya quraşdırıcı proqramı bağlatdığınız zaman sisteminiz dərhal yenidən başladılacaqdır.</p></body></html>
- <h1>Hər şey hazırdır.</h1><br/>%1 sizin kompyuterinizə quraşdırıldı.<br/>Siz yenidən başladaraq yeni sisteminizə daxil ola və ya %2 Canlı mühitini istifadə etməyə davam edə bilərsiniz.
+ <h1>Hər şey hazırdır.</h1><br/>%1 kompyuterinizə quraşdırıldı.<br/>Siz yenidən başladaraq yeni sisteminizə daxil ola və ya %2 Canlı mühitini istifadə etməyə davam edə bilərsiniz.
@@ -1299,12 +1299,12 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- <h1>Quraşdırılma alınmadı</h1><br/>%1 sizin kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
+ <h1>Quraşdırılma alınmadı</h1><br/>%1 kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
- <h1>Quraşdırılma alınmadı</h1><br/>%1 sizin kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
+ <h1>Quraşdırılma alınmadı</h1><br/>%1 kompyuterinizə quraşdırıla bilmədi.<br/>Baş vermiş xəta: %2.
@@ -1332,7 +1332,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- %1in quraşdırılması başa çatdı.
+ %1-n quraşdırılması başa çatdı.
@@ -1340,7 +1340,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- %4-də %1 bölməsini format etmək (fayl sistemi: %2, ölçüsü: %3 MB).
+ %4 üzərində %1 bölməsini format etmək (fayl sistemi: %2, ölçüsü: %3 MB).
@@ -1368,7 +1368,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Kifayət qədər disk sahəsi yoxdur. əƏn azı %1 QB tələb olunur.
+ Kifayət qədər disk sahəsi yoxdur. Ən azı %1 QB tələb olunur.
@@ -1403,7 +1403,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- quraşdırıcı adminstrator (root) imtiyazları ilə başladılması
+ quraşdırıcını adminstrator (root) imtiyazları ilə başladılması
@@ -1428,7 +1428,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Bu quarşdırıcını göstəmək üçün ekran çox kiçikdir.
+ Bu quarşdırıcını göstərmək üçün ekran çox kiçikdir.
@@ -1680,7 +1680,7 @@ Bu proqramdan çıxılacaq və bütün dəyişikliklər itiriləcəkdir.
- Zona:
+ Saat qurşağı:
@@ -3845,7 +3845,7 @@ Output:
- Qatları
+ Qatlar
@@ -3866,7 +3866,7 @@ Output:
- klaviaturanızı yoxlayın
+ Klaviaturanızı yoxlayın
@@ -3879,7 +3879,7 @@ Output:
- Yerli saylvə tarix formatlarını %1 qurmaq
+ Yerli say və tarix formatlarını %1 qurmaq
diff --git a/lang/calamares_bn.ts b/lang/calamares_bn.ts
index afb7f16ee..bd1c887c2 100644
--- a/lang/calamares_bn.ts
+++ b/lang/calamares_bn.ts
@@ -1763,7 +1763,7 @@ The installer will quit and all changes will be lost.
-
+ কনফিগারেশন ত্রুটি
diff --git a/lang/calamares_da.ts b/lang/calamares_da.ts
index 76995d9d6..e9b9ed1d0 100644
--- a/lang/calamares_da.ts
+++ b/lang/calamares_da.ts
@@ -1781,7 +1781,9 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.Please select your preferred location on the map so the installer can suggest the locale
and timezone settings for you. You can fine-tune the suggested settings below. Search the map by dragging
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.
-
+ Vælg venligst din foretrukne placering på kortet, så installationsprogrammet kan foreslå lokalitets-
+ og tidszoneindstillinger til dig. Du kan finjustere de foreslåede indstillinger nedenfor. Søg på kortet ved ved at trække
+ for at flytte og brug knapperne +/- for at zoome ind/ud eller brug muserulning til at zoome.
@@ -1932,7 +1934,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.
-
+ For at kunne vælge en tidszone skal du sørge for at der er forbindelse til internettet. Genstart installationsprogrammet efter forbindelsen er blevet oprettet. Du kan finjustere sprog- og lokalitetsindstillinger nedenfor.
@@ -3503,7 +3505,7 @@ setting
-
+ Sporing hjælper %1 med at se hvor ofte den installeres, hvilken hardware den installeres på og hvilke programmer der bruges. Klik på hjælpeikonet ved siden af hvert område for at se hvad der sendes.
@@ -3518,7 +3520,7 @@ setting
-
+ Vælges dette sender du regelmæssigt information om din <b>bruger</b>installation, hardware, programmer og programmernes anvendelsesmønstre, til %1.
diff --git a/lang/calamares_de.ts b/lang/calamares_de.ts
index b59fe4f38..9098ab48c 100644
--- a/lang/calamares_de.ts
+++ b/lang/calamares_de.ts
@@ -777,17 +777,17 @@ Dies wird das Installationsprogramm beenden und alle Änderungen gehen verloren.
-
+ <h1>Willkommen bei Calamares, dem Installationsprogramm für %1</h1>
-
+ <h1>Willkommen zur Installation von %1</h1>
-
+ <h1>Willkommen bei Calamares, dem Installationsprogramm für %1</h1>
@@ -1927,7 +1927,7 @@ Dies wird das Installationsprogramm beenden und alle Änderungen gehen verloren.
-
+ Zeitzone: %1
@@ -3866,17 +3866,17 @@ Liberating Software.
-
+ Systemsprache eingestellt auf %1
-
+ Zahlen- und Datumsformat eingestellt auf %1
-
+ Ändern
diff --git a/lang/calamares_fi_FI.ts b/lang/calamares_fi_FI.ts
index e3e1baf4a..ec44e74f7 100644
--- a/lang/calamares_fi_FI.ts
+++ b/lang/calamares_fi_FI.ts
@@ -1782,7 +1782,9 @@ Asennus voi jatkua, mutta jotkin toiminnot saattavat olla pois käytöstä.Please select your preferred location on the map so the installer can suggest the locale
and timezone settings for you. You can fine-tune the suggested settings below. Search the map by dragging
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.
-
+ Valitse sijainti kartalla, jotta asentaja voi ehdottaa paikalliset ja aikavyöhykeen asetukset.
+ Voit hienosäätää alla olevia asetuksia. Etsi kartalta vetämällä ja suurenna/pienennä +/- -painikkeella tai käytä
+hiiren vieritystä skaalaamiseen.
@@ -1933,7 +1935,7 @@ Asennus voi jatkua, mutta jotkin toiminnot saattavat olla pois käytöstä.
-
+ Jos haluat valita aikavyöhykkeen niin varmista, että olet yhteydessä Internetiin. Käynnistä asennusohjelma uudelleen yhteyden muodostamisen jälkeen. Voit hienosäätää alla olevia kieli- ja kieliasetuksia.
@@ -3493,7 +3495,7 @@ Asennus voi jatkua, mutta jotkin toiminnot saattavat olla pois käytöstä.
-
+ <html><head/><body><p>Napsauta tätä <span style=" font-weight:600;">jos et halua lähettää mitään</span> tietoja asennuksesta.</p></body></html>
@@ -3503,22 +3505,22 @@ Asennus voi jatkua, mutta jotkin toiminnot saattavat olla pois käytöstä.
-
+ Seuranta auttaa %1 näkemään, kuinka usein se asennetaan, mihin laitteistoon se on asennettu ja mihin sovelluksiin sitä käytetään. Jos haluat nähdä, mitä lähetetään, napsauta kunkin alueen vieressä olevaa ohjekuvaketta.
-
+ Valitsemalla tämän lähetät tietoja asennuksesta ja laitteistosta. Nämä tiedot lähetetään vain </b>kerran</b> asennuksen päätyttyä.
-
+ Valitsemalla tämän lähetät määräajoin tietoja <b>koneesi</b> asennuksesta, laitteistosta ja sovelluksista, %1:lle.
-
+ Valitsemalla tämän lähetät säännöllisesti tietoja <b>käyttäjän</b> asennuksesta, laitteistosta, sovelluksista ja sovellusten käyttötavoista %1:lle.
@@ -3807,13 +3809,15 @@ Asennus voi jatkua, mutta jotkin toiminnot saattavat olla pois käytöstä.
-
+ <h1>Kielet</h1> </br>
+ Järjestelmän sijaintiasetukset vaikuttaa joidenkin komentorivin käyttöliittymän elementtien kieliin ja merkistöihin. Nykyinen asetus on <strong>%1</strong>.
-
+ <h1>Sijainti</h1> </br>
+ Järjestelmän sijaintiasetukset vaikuttaa joidenkin komentorivin käyttöliittymän elementtien kieliin ja merkistöihin. Nykyinen asetus on <strong>%1</strong>.
diff --git a/lang/calamares_lt.ts b/lang/calamares_lt.ts
index aa51d8669..261317f2c 100644
--- a/lang/calamares_lt.ts
+++ b/lang/calamares_lt.ts
@@ -781,22 +781,22 @@ Diegimo programa užbaigs darbą ir visi pakeitimai bus prarasti.
-
+ </h1>Jus sveikina Calamares sąrankos programa, skirta %1 sistemai.</h1>
-
+ <h1>Jus sveikina %1 sąranka</h1>
-
+ <h1>Jus sveikina Calamares diegimo programa, skirta %1 sistemai</h1>
-
+ <h1>Jus sveikina %1 diegimo programa</h1>
@@ -3870,7 +3870,7 @@ Išvestis:
-
+ Sistemos kalba nustatyta į %1
@@ -3880,7 +3880,7 @@ Išvestis:
-
+ Keisti
diff --git a/lang/calamares_pt_BR.ts b/lang/calamares_pt_BR.ts
index ab98dc800..f65ecd0ee 100644
--- a/lang/calamares_pt_BR.ts
+++ b/lang/calamares_pt_BR.ts
@@ -230,7 +230,7 @@
- A verificação de requerimentos para o módulo <i>%1</i> está completa.
+ A verificação de requisitos para o módulo <i>%1</i> está completa.
@@ -251,7 +251,7 @@
- Verificação de requerimentos do sistema completa.
+ Verificação de requisitos do sistema completa.
@@ -722,7 +722,7 @@ O instalador será fechado e todas as alterações serão perdidas.
- O local dos números e datas será definido como %1.
+ A localidade dos números e datas será definida como %1.
@@ -752,7 +752,7 @@ O instalador será fechado e todas as alterações serão perdidas.
- Este computador não satisfaz os requerimentos mínimos para configurar %1.<br/>A configuração não pode continuar. <a href="#details">Detalhes...</a>
+ Este computador não satisfaz os requisitos mínimos para configurar %1.<br/>A configuração não pode continuar. <a href="#details">Detalhes...</a>
@@ -762,7 +762,7 @@ O instalador será fechado e todas as alterações serão perdidas.
- Este computador não satisfaz alguns dos requerimentos recomendados para configurar %1.<br/>A configuração pode continuar, mas algumas funções podem ser desativadas.
+ Este computador não satisfaz alguns dos requisitos recomendados para configurar %1.<br/>A configuração pode continuar, mas alguns recursos podem ser desativados.
@@ -777,22 +777,22 @@ O instalador será fechado e todas as alterações serão perdidas.
-
+ <h1>Bem-vindo ao programa de configuração Calamares para %1</h1>
-
+ <h1>Bem-vindo à configuração de %1</h1>
-
+ <h1>Bem-vindo ao instalador Calamares para %1</h1>
-
+ <h1>Bem-vindo ao instalador de %1</h1>
@@ -1546,7 +1546,7 @@ O instalador será fechado e todas as alterações serão perdidas.
- A configuração de localidade do sistema afeta a linguagem e o conjunto de caracteres para algumas linhas de comando e elementos da interface do usuário.<br/>A configuração atual é <strong>%1</strong>.
+ A configuração de localidade do sistema afeta o idioma e o conjunto de caracteres para algumas linhas de comando e elementos da interface do usuário.<br/>A configuração atual é <strong>%1</strong>.
@@ -1696,7 +1696,7 @@ O instalador será fechado e todas as alterações serão perdidas.
- O local dos números e datas será definido como %1.
+ A localidade dos números e datas será definida como %1.
@@ -1781,7 +1781,9 @@ O instalador será fechado e todas as alterações serão perdidas.Please select your preferred location on the map so the installer can suggest the locale
and timezone settings for you. You can fine-tune the suggested settings below. Search the map by dragging
to move and using the +/- buttons to zoom in/out or use mouse scrolling for zooming.
-
+ Por favor selecione seu local preferido no mapa para que o instalador possa sugerir as configurações de localidade
+ e fuso horário para você. Você pode ajustar as configurações sugeridas abaixo. Procure no mapa arrastando
+ para mover e usando os botões +/- para aumentar/diminuir ou use a rolagem do mouse para dar zoom.
@@ -1927,12 +1929,12 @@ O instalador será fechado e todas as alterações serão perdidas.
-
+ Fuso horário: %1
-
+ Para poder selecionar o fuso horário, tenha certeza que você está conectado à internet. Reinicie o instalador após conectar. Você pode ajustar as configurações de Idioma e Localidade abaixo.
@@ -2837,7 +2839,8 @@ Saída:
-
+ <p>Este computador não satisfaz alguns dos requisitos recomendados para configurar %1.<br/>
+ A configuração pode continuar, mas alguns recursos podem ser desativados.</p>
@@ -2948,13 +2951,15 @@ Saída:
-
+ <p>Este computador não satisfaz os requisitos mínimos para instalar %1.<br/>
+ A instalação não pode continuar.</p>
-
+ <p>Este computador não satisfaz alguns dos requisitos recomendados para configurar %1.<br/>
+ A configuração pode continuar, mas alguns recursos podem ser desativados.</p>
@@ -3094,7 +3099,7 @@ Saída:
- Este computador não satisfaz os requerimentos mínimos para configurar %1.<br/>A configuração não pode continuar. <a href="#details">Detalhes...</a>
+ Este computador não satisfaz os requisitos mínimos para configurar %1.<br/>A configuração não pode continuar. <a href="#details">Detalhes...</a>
@@ -3104,7 +3109,7 @@ Saída:
- Este computador não satisfaz alguns dos requerimentos recomendados para configurar %1.<br/>A configuração pode continuar, mas algumas funções podem ser desativadas.
+ Este computador não satisfaz alguns dos requisitos recomendados para configurar %1.<br/>A configuração pode continuar, mas alguns recursos podem ser desativados.
@@ -3420,28 +3425,28 @@ Saída:
-
+ Feedback de usuário KDE
-
+ Configurando feedback de usuário KDE.
-
+ Erro na configuração do feedback de usuário KDE.
-
+ Não foi possível configurar o feedback de usuário KDE corretamente, erro de script %1.
-
+ Não foi possível configurar o feedback de usuário KDE corretamente, erro do Calamares %1.
@@ -3488,7 +3493,7 @@ Saída:
-
+ <html><head/><body><p>Clique aqui para não enviar <span style=" font-weight:600;">nenhum tipo de informação</span> sobre sua instalação.</p></body></html>
@@ -3498,22 +3503,22 @@ Saída:
-
+ O rastreamento ajuda %1 a ver quão frequentemente ele é instalado, em qual hardware ele é instalado e quais aplicações são usadas. Para ver o que será enviado, por favor, clique no ícone de ajuda próximo a cada área.
-
+ Ao selecionar isto você enviará informações sobre sua instalação e hardware. Essa informação será enviada apenas <b>uma vez</b> depois que a instalação terminar.
-
+ Ao selecionar isto você enviará periodicamente informações sobre a instalação da sua <b>máquina</b>, hardware e aplicações para %1.
-
+ Ao selecionar isto você enviará periodicamente informações sobre a instalação do seu <b>usuário</b>, hardware, aplicações e padrões de uso das aplicações para %1.
@@ -3657,7 +3662,7 @@ Saída:
- Selecione a aplicação e a linguagem do sistema
+ Selecione o idioma do sistema e das aplicações
@@ -3722,7 +3727,7 @@ Saída:
- <h1>Bem-vindo ao instalador %1 .</h1>
+ <h1>Bem-vindo ao instalador %1.</h1>
@@ -3802,13 +3807,15 @@ Saída:
-
+ <h1>Idiomas</h1> </br>
+ A configuração de localidade do sistema afeta o idioma e o conjunto de caracteres para algumas linhas de comando e elementos da interface do usuário. A configuração atual é <strong>%1</strong>.
-
+ <h1>Localidades</h1> </br>
+ A configuração de localidade do sistema afeta o idioma e o conjunto de caracteres para algumas linhas de comando e elementos da interface do usuário. A configuração atual é <strong>%1</strong>.
@@ -3866,17 +3873,17 @@ Saída:
-
+ Idioma do sistema definido como %1
-
+ A localidade de números e datas foi definida para %1
-
+ Modificar
diff --git a/lang/calamares_sv.ts b/lang/calamares_sv.ts
index 408f67634..7d51e3b82 100644
--- a/lang/calamares_sv.ts
+++ b/lang/calamares_sv.ts
@@ -1926,7 +1926,7 @@ Alla ändringar kommer att gå förlorade.
-
+ Tidszon: %1
@@ -3875,7 +3875,7 @@ Utdata:
-
+ Ändra
diff --git a/lang/python/bn/LC_MESSAGES/python.mo b/lang/python/bn/LC_MESSAGES/python.mo
index b067dcf71..7faa09a2c 100644
Binary files a/lang/python/bn/LC_MESSAGES/python.mo and b/lang/python/bn/LC_MESSAGES/python.mo differ
diff --git a/lang/python/bn/LC_MESSAGES/python.po b/lang/python/bn/LC_MESSAGES/python.po
index 529799daf..ee7b2e059 100644
--- a/lang/python/bn/LC_MESSAGES/python.po
+++ b/lang/python/bn/LC_MESSAGES/python.po
@@ -3,6 +3,9 @@
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR , YEAR.
#
+# Translators:
+# 508a8b0ef95404aa3dc5178f0ccada5e_017b8a4 , 2020
+#
#, fuzzy
msgid ""
msgstr ""
@@ -10,6 +13,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-18 15:42+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
+"Last-Translator: 508a8b0ef95404aa3dc5178f0ccada5e_017b8a4 , 2020\n"
"Language-Team: Bengali (https://www.transifex.com/calamares/teams/20061/bn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -19,11 +23,11 @@ msgstr ""
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
-msgstr ""
+msgstr "কনফিগার করুন জিআরইউবি।"
#: src/modules/mount/main.py:38
msgid "Mounting partitions."
-msgstr ""
+msgstr "মাউন্ট করছে পার্টিশনগুলো।"
#: src/modules/mount/main.py:150 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209
@@ -35,28 +39,29 @@ msgstr ""
#: src/modules/fstab/main.py:338 src/modules/localecfg/main.py:144
#: src/modules/networkcfg/main.py:48
msgid "Configuration Error"
-msgstr ""
+msgstr "কনফিগারেশন ত্রুটি"
#: src/modules/mount/main.py:151 src/modules/initcpiocfg/main.py:206
#: src/modules/luksopenswaphookcfg/main.py:96 src/modules/rawfs/main.py:174
#: src/modules/initramfscfg/main.py:95 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/fstab/main.py:333
msgid "No partitions are defined for
{!s}
to use."
-msgstr ""
+msgstr "কোন পার্টিশন নির্দিষ্ট করা হয়নি
{!এস}
ব্যবহার করার জন্য।"
#: src/modules/services-systemd/main.py:35
msgid "Configure systemd services"
-msgstr ""
+msgstr "কনফিগার করুন সিস্টেমডি সেবাগুলি"
#: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102
msgid "Cannot modify service"
-msgstr ""
+msgstr "সেবা পরিবর্তন করতে পারে না"
#: src/modules/services-systemd/main.py:69
msgid ""
"systemctl {arg!s} call in chroot returned error code {num!s}."
msgstr ""
+"সিস্টেমসিটিএল {এআরজি!এস}সিএইচরুট ফেরত ত্রুটি কোড দে{NUM! গুলি}।"
#: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76
@@ -83,27 +88,27 @@ msgstr ""
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
-msgstr ""
+msgstr "আনমাউন্ট ফাইল সিস্টেমগুলি করুন।"
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
-msgstr ""
+msgstr "ফাইলসিস্টেমগুলিপূরণ করছে।"
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
-msgstr ""
+msgstr "ত্রুটি কোড সহ আরসিঙ্ক ব্যর্থ হয়েছে {}।"
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
-msgstr ""
+msgstr "চিত্র আনপ্যাক করছে {} / {}, ফাইল {} / {}"
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
-msgstr ""
+msgstr "আনপ্যাক করা শুরু করছে {}"
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:448
msgid "Failed to unpack image \"{}\""
-msgstr ""
+msgstr "চিত্র আনপ্যাক করতে ব্যর্থ হয়েছে \"{}\""
#: src/modules/unpackfs/main.py:415
msgid "No mount point for root partition"
diff --git a/lang/python/de/LC_MESSAGES/python.mo b/lang/python/de/LC_MESSAGES/python.mo
index 64f71d6aa..beb4ce7b3 100644
Binary files a/lang/python/de/LC_MESSAGES/python.mo and b/lang/python/de/LC_MESSAGES/python.mo differ
diff --git a/lang/python/de/LC_MESSAGES/python.po b/lang/python/de/LC_MESSAGES/python.po
index 25e2e98d3..107847889 100644
--- a/lang/python/de/LC_MESSAGES/python.po
+++ b/lang/python/de/LC_MESSAGES/python.po
@@ -4,9 +4,9 @@
# FIRST AUTHOR , YEAR.
#
# Translators:
-# Adriaan de Groot , 2019
# Christian Spaan, 2020
# Andreas Eitel , 2020
+# Adriaan de Groot , 2020
#
#, fuzzy
msgid ""
@@ -15,7 +15,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-18 15:42+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
-"Last-Translator: Andreas Eitel , 2020\n"
+"Last-Translator: Adriaan de Groot , 2020\n"
"Language-Team: German (https://www.transifex.com/calamares/teams/20061/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -105,7 +105,7 @@ msgstr "rsync fehlgeschlagen mit Fehlercode {}."
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
-msgstr "Bild Entpacken {}/{}, Datei {}/{}"
+msgstr "Abbilddatei Entpacken {}/{}, Datei {}/{}"
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
@@ -113,7 +113,7 @@ msgstr "Beginn des Entpackens {}"
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:448
msgid "Failed to unpack image \"{}\""
-msgstr "Entpacken des Image \"{}\" fehlgeschlagen"
+msgstr "Entpacken der Abbilddatei \"{}\" fehlgeschlagen"
#: src/modules/unpackfs/main.py:415
msgid "No mount point for root partition"
diff --git a/src/calamares/calamares-sidebar.qml b/src/calamares/calamares-sidebar.qml
index 183a9acb2..85d1d506d 100644
--- a/src/calamares/calamares-sidebar.qml
+++ b/src/calamares/calamares-sidebar.qml
@@ -7,6 +7,7 @@ import QtQuick.Layouts 1.3
Rectangle {
id: sideBar;
color: Branding.styleString( Branding.SidebarBackground );
+ anchors.fill: parent;
ColumnLayout {
anchors.fill: parent;
@@ -27,16 +28,17 @@ Rectangle {
Repeater {
model: ViewManager
Rectangle {
- Layout.leftMargin: 12;
- width: parent.width - 24;
+ Layout.leftMargin: 6;
+ Layout.rightMargin: 6;
+ Layout.fillWidth: true;
height: 35;
radius: 6;
- color: Branding.styleString( index == ViewManager.currentStepIndex ? Branding.SidebarTextHighlight : Branding.SidebarBackground );
+ color: Branding.styleString( index == ViewManager.currentStepIndex ? Branding.SidebarBackgroundSelected : Branding.SidebarBackground );
Text {
anchors.verticalCenter: parent.verticalCenter;
- x: parent.x + 12;
- color: Branding.styleString( index == ViewManager.currentStepIndex ? Branding.SidebarTextSelect : Branding.SidebarText );
+ anchors.horizontalCenter: parent.horizontalCenter;
+ color: Branding.styleString( index == ViewManager.currentStepIndex ? Branding.SidebarTextSelected : Branding.SidebarText );
text: display;
}
}
diff --git a/src/libcalamares/utils/Logger.cpp b/src/libcalamares/utils/Logger.cpp
index 494b88659..72885d53f 100644
--- a/src/libcalamares/utils/Logger.cpp
+++ b/src/libcalamares/utils/Logger.cpp
@@ -1,5 +1,5 @@
/* === This file is part of Calamares - ===
- *
+ *
* SPDX-FileCopyrightText: 2010-2011 Christian Muehlhaeuser
* SPDX-FileCopyrightText: 2014 Teo Mrnjavac
* SPDX-FileCopyrightText: 2017 Adriaan de Groot
@@ -50,7 +50,7 @@ static unsigned int s_threshold =
static QMutex s_mutex;
static const char s_Continuation[] = "\n ";
-static const char s_SubEntry[] = " .. ";
+static const char s_SubEntry[] = " .. ";
namespace Logger
@@ -79,7 +79,7 @@ logLevel()
}
static void
-log( const char* msg, unsigned int debugLevel )
+log( const char* msg, unsigned int debugLevel, bool withTime = true )
{
if ( true )
{
@@ -95,13 +95,15 @@ log( const char* msg, unsigned int debugLevel )
logfile.flush();
}
- if ( debugLevel <= LOGEXTRA || debugLevel < s_threshold )
+ if ( logLevelEnabled( debugLevel ) )
{
QMutexLocker lock( &s_mutex );
-
- std::cout << QTime::currentTime().toString().toUtf8().data() << " ["
- << QString::number( debugLevel ).toUtf8().data() << "]: " << msg << std::endl;
- std::cout.flush();
+ if ( withTime )
+ {
+ std::cout << QTime::currentTime().toString().toUtf8().data() << " ["
+ << QString::number( debugLevel ).toUtf8().data() << "]: ";
+ }
+ std::cout << msg << std::endl;
}
}
@@ -199,12 +201,15 @@ CDebug::CDebug( unsigned int debugLevel, const char* func )
CDebug::~CDebug()
{
- if ( m_funcinfo )
+ if ( logLevelEnabled( m_debugLevel ) )
{
- m_msg.prepend( s_Continuation ); // Prepending, so back-to-front
- m_msg.prepend( m_funcinfo );
+ if ( m_funcinfo )
+ {
+ m_msg.prepend( s_Continuation ); // Prepending, so back-to-front
+ m_msg.prepend( m_funcinfo );
+ }
+ log( m_msg.toUtf8().data(), m_debugLevel, m_funcinfo );
}
- log( m_msg.toUtf8().data(), m_debugLevel );
}
constexpr FuncSuppressor::FuncSuppressor( const char s[] )
diff --git a/src/libcalamares/utils/Yaml.cpp b/src/libcalamares/utils/Yaml.cpp
index 0c7b6787f..af73e2825 100644
--- a/src/libcalamares/utils/Yaml.cpp
+++ b/src/libcalamares/utils/Yaml.cpp
@@ -1,7 +1,8 @@
/* === This file is part of Calamares - ===
- *
+ *
* SPDX-FileCopyrightText: 2014 Teo Mrnjavac
* SPDX-FileCopyrightText: 2017-2018 Adriaan de Groot
+ * SPDX-License-Identifier: GPL-3.0-or-later
*
*
* Calamares is free software: you can redistribute it and/or modify
@@ -17,8 +18,6 @@
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see .
*
- * SPDX-License-Identifier: GPL-3.0-or-later
- * License-Filename: LICENSE
*
*/
#include "Yaml.h"
@@ -125,7 +124,6 @@ yamlToStringList( const YAML::Node& listNode )
return l;
}
-
void
explainYamlException( const YAML::Exception& e, const QByteArray& yamlData, const char* label )
{
diff --git a/src/libcalamares/utils/Yaml.h b/src/libcalamares/utils/Yaml.h
index c14639447..0f9631fa2 100644
--- a/src/libcalamares/utils/Yaml.h
+++ b/src/libcalamares/utils/Yaml.h
@@ -1,7 +1,8 @@
/* === This file is part of Calamares - ===
- *
+ *
* SPDX-FileCopyrightText: 2014 Teo Mrnjavac
* SPDX-FileCopyrightText: 2017-2018 Adriaan de Groot
+ * SPDX-License-Identifier: GPL-3.0-or-later
*
*
* Calamares is free software: you can redistribute it and/or modify
@@ -17,11 +18,16 @@
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see .
*
- * SPDX-License-Identifier: GPL-3.0-or-later
- * License-Filename: LICENSE
*
*/
+/*
+ * YAML conversions and YAML convenience header.
+ *
+ * Includes the system YAMLCPP headers without warnings (by switching off
+ * the expected warnings) and provides a handful of methods for
+ * converting between YAML and QVariant.
+ */
#ifndef UTILS_YAML_H
#define UTILS_YAML_H
@@ -50,7 +56,7 @@ class QFileInfo;
#pragma clang diagnostic pop
#endif
-/// @brief Appends all te elements of @p node to the string list @p v
+/// @brief Appends all the elements of @p node to the string list @p v
void operator>>( const YAML::Node& node, QStringList& v );
namespace CalamaresUtils
diff --git a/src/libcalamaresui/Branding.cpp b/src/libcalamaresui/Branding.cpp
index a5909fd61..4cfe7ea40 100644
--- a/src/libcalamaresui/Branding.cpp
+++ b/src/libcalamaresui/Branding.cpp
@@ -132,9 +132,7 @@ loadStrings( QMap< QString, QString >& map,
throw YAML::Exception( YAML::Mark(), std::string( "Branding configuration is not a map: " ) + key );
}
- const auto& config = CalamaresUtils::yamlMapToVariant( doc[ key ] );
-
- map.clear();
+ const QVariantMap config = CalamaresUtils::yamlMapToVariant( doc[ key ] );
for ( auto it = config.constBegin(); it != config.constEnd(); ++it )
{
map.insert( it.key(), transform( it.value().toString() ) );
@@ -369,7 +367,7 @@ Branding::WindowDimension::isValid() const
}
-/// @brief Guard against cases where the @p key doesn't exist in @p doc
+/// @brief Get a string (empty is @p key doesn't exist) from @p key in @p doc
static inline QString
getString( const YAML::Node& doc, const char* key )
{
@@ -380,6 +378,18 @@ getString( const YAML::Node& doc, const char* key )
return QString();
}
+/// @brief Get a node (throws if @p key doesn't exist) from @p key in @p doc
+static inline YAML::Node
+get( const YAML::Node& doc, const char* key )
+{
+ auto r = doc[ key ];
+ if ( !r.IsDefined() )
+ {
+ throw YAML::KeyNotFound( YAML::Mark::null_mark(), std::string( key ) );
+ }
+ return r;
+}
+
static inline void
flavorAndSide( const YAML::Node& doc, const char* key, Branding::PanelFlavor& flavor, Branding::PanelSide& side )
{
@@ -516,10 +526,11 @@ Branding::initSlideshowSettings( const YAML::Node& doc )
{
QDir componentDir( componentDirectory() );
- if ( doc[ "slideshow" ].IsSequence() )
+ auto slideshow = get( doc, "slideshow" );
+ if ( slideshow.IsSequence() )
{
QStringList slideShowPictures;
- doc[ "slideshow" ] >> slideShowPictures;
+ slideshow >> slideShowPictures;
for ( int i = 0; i < slideShowPictures.count(); ++i )
{
QString pathString = slideShowPictures[ i ];
@@ -537,9 +548,9 @@ Branding::initSlideshowSettings( const YAML::Node& doc )
m_slideshowAPI = -1;
}
#ifdef WITH_QML
- else if ( doc[ "slideshow" ].IsScalar() )
+ else if ( slideshow.IsScalar() )
{
- QString slideshowPath = QString::fromStdString( doc[ "slideshow" ].as< std::string >() );
+ QString slideshowPath = QString::fromStdString( slideshow.as< std::string >() );
QFileInfo slideshowFi( componentDir.absoluteFilePath( slideshowPath ) );
if ( !slideshowFi.exists() || !slideshowFi.fileName().toLower().endsWith( ".qml" ) )
bail( m_descriptorPath,
@@ -548,7 +559,9 @@ Branding::initSlideshowSettings( const YAML::Node& doc )
m_slideshowPath = slideshowFi.absoluteFilePath();
// API choice is relevant for QML slideshow
- int api = doc[ "slideshowAPI" ].IsScalar() ? doc[ "slideshowAPI" ].as< int >() : -1;
+ // TODO:3.3: use get(), make slideshowAPI required
+ int api
+ = ( doc[ "slideshowAPI" ] && doc[ "slideshowAPI" ].IsScalar() ) ? doc[ "slideshowAPI" ].as< int >() : -1;
if ( ( api < 1 ) || ( api > 2 ) )
{
cWarning() << "Invalid or missing *slideshowAPI* in branding file.";
@@ -557,7 +570,7 @@ Branding::initSlideshowSettings( const YAML::Node& doc )
m_slideshowAPI = api;
}
#else
- else if ( doc[ "slideshow" ].IsScalar() )
+ else if ( slideshow.IsScalar() )
{
cWarning() << "Invalid *slideshow* setting, must be list of images.";
}
diff --git a/src/libcalamaresui/Branding.h b/src/libcalamaresui/Branding.h
index e84e23680..764845fec 100644
--- a/src/libcalamaresui/Branding.h
+++ b/src/libcalamaresui/Branding.h
@@ -83,7 +83,9 @@ public:
SidebarBackground,
SidebarText,
SidebarTextSelect,
- SidebarTextHighlight
+ SidebarTextSelected = SidebarTextSelect, // TODO:3.3:Remove SidebarTextSelect
+ SidebarTextHighlight,
+ SidebarBackgroundSelected = SidebarTextHighlight // TODO:3.3:Remove SidebarTextHighlight
};
Q_ENUM( StyleEntry )
diff --git a/src/modules/netinstall/NetInstallPage.cpp b/src/modules/netinstall/NetInstallPage.cpp
index 80689e6d2..0d8dc5960 100644
--- a/src/modules/netinstall/NetInstallPage.cpp
+++ b/src/modules/netinstall/NetInstallPage.cpp
@@ -40,6 +40,7 @@ NetInstallPage::NetInstallPage( Config* c, QWidget* parent )
, ui( new Ui::Page_NetInst )
{
ui->setupUi( this );
+ ui->groupswidget->header()->setSectionResizeMode( QHeaderView::ResizeToContents );
ui->groupswidget->setModel( c->model() );
connect( c, &Config::statusChanged, this, &NetInstallPage::setStatus );
connect( c, &Config::statusReady, this, &NetInstallPage::expandGroups );
@@ -88,8 +89,6 @@ NetInstallPage::expandGroups()
ui->groupswidget->setExpanded( index, true );
}
}
- // Make sure all the group names are visible
- ui->groupswidget->resizeColumnToContents(0);
}
void
diff --git a/src/modules/packages/main.py b/src/modules/packages/main.py
index 3e29d72e1..4f746dccc 100644
--- a/src/modules/packages/main.py
+++ b/src/modules/packages/main.py
@@ -178,6 +178,7 @@ class PMPackageKit(PackageManager):
def update_system(self):
check_target_env_call(["pkcon", "-py", "update"])
+
class PMZypp(PackageManager):
backend = "zypp"
@@ -198,6 +199,7 @@ class PMZypp(PackageManager):
# Doesn't need to update the system explicitly
pass
+
class PMYum(PackageManager):
backend = "yum"
@@ -215,6 +217,7 @@ class PMYum(PackageManager):
def update_system(self):
check_target_env_call(["yum", "-y", "upgrade"])
+
class PMDnf(PackageManager):
backend = "dnf"
@@ -274,6 +277,7 @@ class PMApt(PackageManager):
# Doesn't need to update the system explicitly
pass
+
class PMXbps(PackageManager):
backend = "xbps"
@@ -289,6 +293,7 @@ class PMXbps(PackageManager):
def update_system(self):
check_target_env_call(["xbps", "-Suy"])
+
class PMPacman(PackageManager):
backend = "pacman"
@@ -311,6 +316,31 @@ class PMPacman(PackageManager):
check_target_env_call(["pacman", "-Su", "--noconfirm"])
+class PMPamac(PackageManager):
+ backend = "pamac"
+
+ def del_db_lock(self, lock="/var/lib/pacman/db.lck"):
+ # In case some error or crash, the database will be locked,
+ # resulting in remaining packages not being installed.
+ check_target_env_call(["rm", "-f", lock])
+
+ def install(self, pkgs, from_local=False):
+ self.del_db_lock()
+ check_target_env_call([self.backend, "install", "--no-confirm"] + pkgs)
+
+ def remove(self, pkgs):
+ self.del_db_lock()
+ check_target_env_call([self.backend, "remove", "--no-confirm"] + pkgs)
+
+ def update_db(self):
+ self.del_db_lock()
+ check_target_env_call([self.backend, "update", "--no-confirm"])
+
+ def update_system(self):
+ self.del_db_lock()
+ check_target_env_call([self.backend, "upgrade", "--no-confirm"])
+
+
class PMPortage(PackageManager):
backend = "portage"
diff --git a/src/modules/packages/packages.conf b/src/modules/packages/packages.conf
index bcf313972..df477e6e9 100644
--- a/src/modules/packages/packages.conf
+++ b/src/modules/packages/packages.conf
@@ -7,6 +7,7 @@
# - entropy - Sabayon package manager
# - packagekit - PackageKit CLI tool
# - pacman - Pacman
+# - pamac - Manjaro package manager
# - portage - Gentoo package manager
# - urpmi - Mandriva package manager
# - yum - Yum RPM frontend
diff --git a/src/modules/packages/packages.schema.yaml b/src/modules/packages/packages.schema.yaml
index 40f82bb35..ea0addd10 100644
--- a/src/modules/packages/packages.schema.yaml
+++ b/src/modules/packages/packages.schema.yaml
@@ -13,6 +13,7 @@ properties:
- entropy
- packagekit
- pacman
+ - pamac
- portage
- urpmi
- yum
diff --git a/src/modules/partition/core/DeviceList.cpp b/src/modules/partition/core/DeviceList.cpp
index 944940d9a..041801b9e 100644
--- a/src/modules/partition/core/DeviceList.cpp
+++ b/src/modules/partition/core/DeviceList.cpp
@@ -92,6 +92,19 @@ isIso9660( const Device* device )
return false;
}
+static inline bool
+isZRam( const Device* device )
+{
+ const QString path = device->deviceNode();
+ return path.startsWith( "/dev/zram" );
+}
+
+static inline bool
+isFloppyDrive( const Device* device )
+{
+ const QString path = device->deviceNode();
+ return path.startsWith( "/dev/fd" ) || path.startsWith( "/dev/floppy" );
+}
static inline QDebug&
operator<<( QDebug& s, QList< Device* >::iterator& it )
@@ -112,7 +125,7 @@ erase( DeviceList& l, DeviceList::iterator& it )
}
QList< Device* >
-getDevices( DeviceType which, qint64 minimumSize )
+getDevices( DeviceType which )
{
bool writableOnly = ( which == DeviceType::WritableOnly );
@@ -138,11 +151,16 @@ getDevices( DeviceType which, qint64 minimumSize )
cDebug() << Logger::SubEntry << "Skipping nullptr device";
it = erase( devices, it );
}
- else if ( ( *it )->deviceNode().startsWith( "/dev/zram" ) )
+ else if ( isZRam( *it ) )
{
cDebug() << Logger::SubEntry << "Removing zram" << it;
it = erase( devices, it );
}
+ else if ( isFloppyDrive( ( *it ) ) )
+ {
+ cDebug() << Logger::SubEntry << "Removing floppy disk" << it;
+ it = erase( devices, it );
+ }
else if ( writableOnly && hasRootPartition( *it ) )
{
cDebug() << Logger::SubEntry << "Removing device with root filesystem (/) on it" << it;
@@ -153,11 +171,6 @@ getDevices( DeviceType which, qint64 minimumSize )
cDebug() << Logger::SubEntry << "Removing device with iso9660 filesystem (probably a CD) on it" << it;
it = erase( devices, it );
}
- else if ( ( minimumSize >= 0 ) && !( ( *it )->capacity() > minimumSize ) )
- {
- cDebug() << Logger::SubEntry << "Removing too-small" << it;
- it = erase( devices, it );
- }
else
{
++it;
diff --git a/src/modules/partition/core/DeviceList.h b/src/modules/partition/core/DeviceList.h
index 6823d6951..306d90739 100644
--- a/src/modules/partition/core/DeviceList.h
+++ b/src/modules/partition/core/DeviceList.h
@@ -40,12 +40,9 @@ enum class DeviceType
* the system, filtering out those that do not meet a criterium.
* If set to WritableOnly, only devices which can be overwritten
* safely are returned (e.g. RO-media are ignored, as are mounted partitions).
- * @param minimumSize Can be used to filter devices based on their
- * size (in bytes). If non-negative, only devices with a size
- * greater than @p minimumSize will be returned.
* @return a list of Devices meeting this criterium.
*/
-QList< Device* > getDevices( DeviceType which = DeviceType::All, qint64 minimumSize = -1 );
+QList< Device* > getDevices( DeviceType which = DeviceType::All );
} // namespace PartUtils
diff --git a/src/modules/partition/gui/PartitionViewStep.cpp b/src/modules/partition/gui/PartitionViewStep.cpp
index a583a4b96..b0142a82a 100644
--- a/src/modules/partition/gui/PartitionViewStep.cpp
+++ b/src/modules/partition/gui/PartitionViewStep.cpp
@@ -122,6 +122,7 @@ PartitionViewStep::~PartitionViewStep()
{
m_manualPartitionPage->deleteLater();
}
+ delete m_core;
}