Merge branch 'master' of https://github.com/calamares/calamares into development

This commit is contained in:
Philip Müller 2018-12-08 12:37:13 +01:00
commit 404cfc451d
12 changed files with 162 additions and 90 deletions

View File

@ -46,6 +46,7 @@ option( WITH_PYTHON "Enable Python modules API (requires Boost.Python)." ON )
option( WITH_PYTHONQT "Enable next generation Python modules API (experimental, requires PythonQt)." ON ) option( WITH_PYTHONQT "Enable next generation Python modules API (experimental, requires PythonQt)." ON )
option( WITH_KF5Crash "Enable crash reporting with KCrash." ON ) option( WITH_KF5Crash "Enable crash reporting with KCrash." ON )
### USE_* ### USE_*
# #
# By convention, when there are multiple modules that implement similar # By convention, when there are multiple modules that implement similar
@ -77,6 +78,7 @@ set( CALAMARES_VERSION_MINOR 2 )
set( CALAMARES_VERSION_PATCH 3 ) set( CALAMARES_VERSION_PATCH 3 )
set( CALAMARES_VERSION_RC 1 ) set( CALAMARES_VERSION_RC 1 )
### Transifex (languages) info ### Transifex (languages) info
# #
# complete = 100% translated, # complete = 100% translated,
@ -142,6 +144,26 @@ set( CMAKE_CXX_STANDARD_REQUIRED ON )
set( CMAKE_C_STANDARD 99 ) set( CMAKE_C_STANDARD 99 )
set( CMAKE_C_STANDARD_REQUIRED ON ) set( CMAKE_C_STANDARD_REQUIRED ON )
# Debugging flags
#
# Possible debugging flags are:
# - DEBUG_TIMEZONES draws latitude and longitude lines on the timezone
# widget and enables chatty debug logging, for dealing with the timezone
# location database.
# - DEBUG_FILESYSTEMS does extra logging and checking when looking at
# partition configuration. Lists known KPMCore FS types.
#
# The flags listed here are enabled in Debug builds. By default, none
# are **actually** listed, because they're for such specific scenarios.
set( _enable_debug_flags
# DEBUG_TIMEZONES
# DEBUG_FILESYSTEMS
)
# Add those flags to the CXX flags in a suitable format.
foreach( _edf ${_enable_debug_flags} )
string( APPEND CMAKE_CXX_FLAGS_DEBUG " -D${_edf}" )
endforeach()
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" ) set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" )
if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" ) if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
message( STATUS "Found Clang ${CMAKE_CXX_COMPILER_VERSION}, setting up Clang-specific compiler flags." ) message( STATUS "Found Clang ${CMAKE_CXX_COMPILER_VERSION}, setting up Clang-specific compiler flags." )
@ -175,7 +197,7 @@ if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
set( SUPPRESS_3RDPARTY_WARNINGS "-Wno-everything" ) set( SUPPRESS_3RDPARTY_WARNINGS "-Wno-everything" )
set( SUPPRESS_BOOST_WARNINGS " -Wno-zero-as-null-pointer-constant -Wno-disabled-macro-expansion" ) set( SUPPRESS_BOOST_WARNINGS " -Wno-zero-as-null-pointer-constant -Wno-disabled-macro-expansion" )
set( CMAKE_CXX_FLAGS_DEBUG "-g" ) set( CMAKE_CXX_FLAGS_DEBUG "-g ${CMAKE_CXX_FLAGS_DEBUG}" )
set( CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG" ) set( CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG" )
set( CMAKE_CXX_FLAGS_RELEASE "-O4 -DNDEBUG" ) set( CMAKE_CXX_FLAGS_RELEASE "-O4 -DNDEBUG" )
set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" ) set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" )

View File

@ -14,168 +14,168 @@ Categories=Qt;System;
X-AppStream-Ignore=true X-AppStream-Ignore=true
Name[ar]=نظام التثبيت Name[ar]=نظام التثبيت
Comment[be]=Calamares усталёўшчык сістэмы
Icon[be]=calamares
Name[be]=Усталяваць сістэму Name[be]=Усталяваць сістэму
Icon[be]=calamares
GenericName[be]=Усталёўшчык сістэмы GenericName[be]=Усталёўшчык сістэмы
Comment[bg]=Calamares Системен Инсталатор Comment[be]=Calamares усталёўшчык сістэмы
Icon[bg]=calamares
Name[bg]=Инсталирай системата Name[bg]=Инсталирай системата
Icon[bg]=calamares
GenericName[bg]=Системен Инсталатор GenericName[bg]=Системен Инсталатор
Comment[ca]=Calamares Instal·lador de sistema Comment[bg]=Calamares Системен Инсталатор
Icon[ca]=calamares
Name[ca]=Instal·la el sistema Name[ca]=Instal·la el sistema
Icon[ca]=calamares
GenericName[ca]=Instal·lador de sistema GenericName[ca]=Instal·lador de sistema
Comment[da]=Calamares Systeminstallationsprogram Comment[ca]=Calamares Instal·lador de sistema
Icon[da]=calamares
Name[da]=Installér system Name[da]=Installér system
Icon[da]=calamares
GenericName[da]=Systeminstallationsprogram GenericName[da]=Systeminstallationsprogram
Comment[de]=Calamares - Installation des Betriebssystems Comment[da]=Calamares Systeminstallationsprogram
Icon[de]=calamares
Name[de]=System installieren Name[de]=System installieren
Icon[de]=calamares
GenericName[de]=Installation des Betriebssystems GenericName[de]=Installation des Betriebssystems
Comment[el]=Calamares Εγκατάσταση συστήματος Comment[de]=Calamares - Installation des Betriebssystems
Icon[el]=calamares
Name[el]=Εγκατάσταση συστήματος Name[el]=Εγκατάσταση συστήματος
Icon[el]=calamares
GenericName[el]=Εγκατάσταση συστήματος GenericName[el]=Εγκατάσταση συστήματος
Comment[en_GB]=Calamares System Installer Comment[el]=Calamares Εγκατάσταση συστήματος
Icon[en_GB]=calamares
Name[en_GB]=Install System Name[en_GB]=Install System
Icon[en_GB]=calamares
GenericName[en_GB]=System Installer GenericName[en_GB]=System Installer
Comment[es]=Calamares Instalador del Sistema Comment[en_GB]=Calamares System Installer
Icon[es]=calamares
Name[es]=Instalar Sistema Name[es]=Instalar Sistema
Icon[es]=calamares
GenericName[es]=Instalador del Sistema GenericName[es]=Instalador del Sistema
Comment[et]=Calamares süsteemipaigaldaja Comment[es]=Calamares Instalador del Sistema
Icon[et]=calamares
Name[et]=Paigalda süsteem Name[et]=Paigalda süsteem
Icon[et]=calamares
GenericName[et]=Süsteemipaigaldaja GenericName[et]=Süsteemipaigaldaja
Comment[et]=Calamares süsteemipaigaldaja
Name[eu]=Sistema instalatu Name[eu]=Sistema instalatu
Name[es_PR]=Instalar el sistema Name[es_PR]=Instalar el sistema
Comment[fr]=Calamares - Installateur système
Icon[fr]=calamares
Name[fr]=Installer le système Name[fr]=Installer le système
Icon[fr]=calamares
GenericName[fr]=Installateur système GenericName[fr]=Installateur système
Comment[gl]=Calamares Instalador de sistemas Comment[fr]=Calamares - Installateur système
Icon[gl]=calamares
Name[gl]=Instalación do Sistema Name[gl]=Instalación do Sistema
Icon[gl]=calamares
GenericName[gl]=Instalador de sistemas GenericName[gl]=Instalador de sistemas
Comment[he]=Calamares - אשף התקנה Comment[gl]=Calamares Instalador de sistemas
Icon[he]=calamares
Name[he]=התקנת מערכת Name[he]=התקנת מערכת
Icon[he]=calamares
GenericName[he]=אשף התקנה GenericName[he]=אשף התקנה
Comment[hi]=Calamares ि Comment[he]=Calamares - אשף התקנה
Icon[hi]=calamares
Name[hi]=ि Name[hi]=ि
Icon[hi]=calamares
GenericName[hi]=ि GenericName[hi]=ि
Comment[hr]=Calamares Instalacija sustava Comment[hi]=Calamares ि
Icon[hr]=calamares
Name[hr]=Instaliraj sustav Name[hr]=Instaliraj sustav
Icon[hr]=calamares
GenericName[hr]=Instalacija sustava GenericName[hr]=Instalacija sustava
Comment[hu]=Calamares Rendszertelepítő Comment[hr]=Calamares Instalacija sustava
Icon[hu]=calamares
Name[hu]=Rendszer telepítése Name[hu]=Rendszer telepítése
Icon[hu]=calamares
GenericName[hu]=Rendszertelepítő GenericName[hu]=Rendszertelepítő
Comment[id]=Calamares Pemasang Sistem Comment[hu]=Calamares Rendszertelepítő
Icon[id]=calamares
Name[id]=Instal Sistem Name[id]=Instal Sistem
Icon[id]=calamares
GenericName[id]=Pemasang GenericName[id]=Pemasang
Comment[is]=Calamares Kerfis uppsetning Comment[id]=Calamares Pemasang Sistem
Icon[is]=calamares
Name[is]=Setja upp kerfið Name[is]=Setja upp kerfið
Icon[is]=calamares
GenericName[is]=Kerfis uppsetning GenericName[is]=Kerfis uppsetning
Comment[cs_CZ]=Calamares instalátor operačních systémů Comment[is]=Calamares Kerfis uppsetning
Icon[cs_CZ]=calamares
Name[cs_CZ]=Nainstalovat Name[cs_CZ]=Nainstalovat
Icon[cs_CZ]=calamares
GenericName[cs_CZ]=Instalátor systému GenericName[cs_CZ]=Instalátor systému
Comment[ja]=Calamares Comment[cs_CZ]=Calamares instalátor operačních systémů
Icon[ja]=calamares
Name[ja]= Name[ja]=
Icon[ja]=calamares
GenericName[ja]= GenericName[ja]=
Comment[ko]= Comment[ja]=Calamares
Icon[ko]=
Name[ko]= Name[ko]=
Icon[ko]=
GenericName[ko]= GenericName[ko]=
Comment[lt]=Calamares Sistemos diegimo programa Comment[ko]=
Icon[lt]=calamares
Name[lt]=Įdiegti Sistemą Name[lt]=Įdiegti Sistemą
Icon[lt]=calamares
GenericName[lt]=Sistemos diegimas į kompiuterį GenericName[lt]=Sistemos diegimas į kompiuterį
Comment[it_IT]=Calamares Programma d'installazione del sistema Comment[lt]=Calamares Sistemos diegimo programa
Icon[it_IT]=calamares
Name[it_IT]=Installa il sistema Name[it_IT]=Installa il sistema
Icon[it_IT]=calamares
GenericName[it_IT]=Programma d'installazione del sistema GenericName[it_IT]=Programma d'installazione del sistema
Comment[nb]=Calamares-systeminstallatør Comment[it_IT]=Calamares Programma d'installazione del sistema
Icon[nb]=calamares
Name[nb]=Installer System Name[nb]=Installer System
Icon[nb]=calamares
GenericName[nb]=Systeminstallatør GenericName[nb]=Systeminstallatør
Comment[nl]=Calamares Installatieprogramma Comment[nb]=Calamares-systeminstallatør
Icon[nl]=calamares
Name[nl]=Installeer systeem Name[nl]=Installeer systeem
Icon[nl]=calamares
GenericName[nl]=Installatieprogramma GenericName[nl]=Installatieprogramma
Comment[pl]=Calamares Instalator systemu Comment[nl]=Calamares Installatieprogramma
Icon[pl]=calamares
Name[pl]=Zainstaluj system Name[pl]=Zainstaluj system
Icon[pl]=calamares
GenericName[pl]=Instalator systemu GenericName[pl]=Instalator systemu
Comment[pt_BR]=Calamares Instalador de Sistema Comment[pl]=Calamares Instalator systemu
Icon[pt_BR]=calamares
Name[pt_BR]=Sistema de Instalação Name[pt_BR]=Sistema de Instalação
Icon[pt_BR]=calamares
GenericName[pt_BR]=Instalador de Sistema GenericName[pt_BR]=Instalador de Sistema
Comment[ro]=Calamares Instalator de sistem Comment[pt_BR]=Calamares Instalador de Sistema
Icon[ro]=calamares
Name[ro]=Instalează sistemul Name[ro]=Instalează sistemul
Icon[ro]=calamares
GenericName[ro]=Instalator de sistem GenericName[ro]=Instalator de sistem
Comment[ru]=Calamares - Установщик системы Comment[ro]=Calamares Instalator de sistem
Icon[ru]=calamares
Name[ru]=Установить систему Name[ru]=Установить систему
Icon[ru]=calamares
GenericName[ru]=Установщик системы GenericName[ru]=Установщик системы
Comment[sk]=Calamares Inštalátor systému Comment[ru]=Calamares - Установщик системы
Icon[sk]=calamares
Name[sk]=Inštalovať systém Name[sk]=Inštalovať systém
Icon[sk]=calamares
GenericName[sk]=Inštalátor systému GenericName[sk]=Inštalátor systému
Comment[sk]=Calamares Inštalátor systému
Name[sl]=Namesti sistem Name[sl]=Namesti sistem
Comment[sq]=Calamares Instalues Sistemi
Icon[sq]=calamares
Name[sq]=Instalo Sistemin Name[sq]=Instalo Sistemin
Icon[sq]=calamares
GenericName[sq]=Instalues Sistemi GenericName[sq]=Instalues Sistemi
Comment[fi_FI]=Calamares Järjestelmän Asentaja Comment[sq]=Calamares Instalues Sistemi
Icon[fi_FI]=calamares
Name[fi_FI]=Asenna Järjestelmä Name[fi_FI]=Asenna Järjestelmä
Icon[fi_FI]=calamares
GenericName[fi_FI]=Järjestelmän Asennusohjelma GenericName[fi_FI]=Järjestelmän Asennusohjelma
Comment[fi_FI]=Calamares Järjestelmän Asentaja
Name[sr@latin]=Instaliraj sistem Name[sr@latin]=Instaliraj sistem
Name[sr]=Инсталирај систем Name[sr]=Инсталирај систем
Comment[sv]=Calamares Systeminstallerare
Icon[sv]=calamares
Name[sv]=Installera system Name[sv]=Installera system
Icon[sv]=calamares
GenericName[sv]=Systeminstallerare GenericName[sv]=Systeminstallerare
Comment[sv]=Calamares Systeminstallerare
Name[th]= Name[th]=
Comment[uk]=Calamares - Встановлювач системи
Name[uk]=Встановити Систему Name[uk]=Встановити Систему
GenericName[uk]=Встановлювач системи GenericName[uk]=Встановлювач системи
Comment[zh_CN]=Calamares Comment[uk]=Calamares - Встановлювач системи
Icon[zh_CN]=calamares
Name[zh_CN]= Name[zh_CN]=
Icon[zh_CN]=calamares
GenericName[zh_CN]= GenericName[zh_CN]=
Comment[zh_TW]=Calamares Comment[zh_CN]=Calamares
Icon[zh_TW]=calamares
Name[zh_TW]= Name[zh_TW]=
Icon[zh_TW]=calamares
GenericName[zh_TW]= GenericName[zh_TW]=
Comment[ast]=Calamares Instalador del sistema Comment[zh_TW]=Calamares
Icon[ast]=calamares
Name[ast]=Instalar sistema Name[ast]=Instalar sistema
Icon[ast]=calamares
GenericName[ast]=Instalador del sistema GenericName[ast]=Instalador del sistema
Comment[eo]=Calamares Sistema Instalilo Comment[ast]=Calamares Instalador del sistema
Icon[eo]=calamares
Name[eo]=Instali Sistemo Name[eo]=Instali Sistemo
Icon[eo]=calamares
GenericName[eo]=Sistema Instalilo GenericName[eo]=Sistema Instalilo
Comment[es_MX]=Calamares - Instalador del sistema Comment[eo]=Calamares Sistema Instalilo
Icon[es_MX]=calamares
Name[es_MX]=Instalar el Sistema Name[es_MX]=Instalar el Sistema
Icon[es_MX]=calamares
GenericName[es_MX]=Instalador del sistema GenericName[es_MX]=Instalador del sistema
Comment[pt_PT]=Calamares - Instalador de Sistema Comment[es_MX]=Calamares - Instalador del sistema
Icon[pt_PT]=calamares
Name[pt_PT]=Instalar Sistema Name[pt_PT]=Instalar Sistema
Icon[pt_PT]=calamares
GenericName[pt_PT]=Instalador de Sistema GenericName[pt_PT]=Instalador de Sistema
Comment[tr_TR]=Calamares Sistem Yükleyici Comment[pt_PT]=Calamares - Instalador de Sistema
Icon[tr_TR]=calamares
Name[tr_TR]=Sistemi Yükle Name[tr_TR]=Sistemi Yükle
Icon[tr_TR]=calamares
GenericName[tr_TR]=Sistem Yükleyici GenericName[tr_TR]=Sistem Yükleyici
Comment[tr_TR]=Calamares Sistem Yükleyici

View File

@ -5,6 +5,7 @@
# This file is sourced by travis.sh, and exports the variables # This file is sourced by travis.sh, and exports the variables
# to the environment. # to the environment.
CMAKE_ARGS="\ CMAKE_ARGS="\
-DCMAKE_BUILD_TYPE=Debug \
-DWEBVIEW_FORCE_WEBKIT=1 \ -DWEBVIEW_FORCE_WEBKIT=1 \
-DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
-DWITH_PYTHONQT=OFF" -DWITH_PYTHONQT=OFF"

View File

@ -2746,7 +2746,7 @@ Ausgabe:
<message> <message>
<location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="56"/> <location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="56"/>
<source>Physical Extent Size:</source> <source>Physical Extent Size:</source>
<translation type="unfinished"/> <translation>Größe der Körpergröße:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="66"/> <location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="66"/>

View File

@ -821,7 +821,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/core/DeviceModel.cpp" line="89"/> <location filename="../src/modules/partition/core/DeviceModel.cpp" line="89"/>
<source>%1 - (%2)</source> <source>%1 - (%2)</source>
<translation type="unfinished"/> <translation>%1 - (%2)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1724,7 +1724,7 @@ The installer will quit and all changes will be lost.</source>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="132"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="132"/>
<source>New Volume Group</source> <source>New Volume Group</source>
<translation type="unfinished"/> <translation>Новая группа томов</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="139"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="139"/>

View File

@ -6,7 +6,7 @@
# Translators: # Translators:
# Paul Combal <abonnementspaul@gmail.com>, 2017 # Paul Combal <abonnementspaul@gmail.com>, 2017
# Abdallah B <bahassinea@gmail.com>, 2017 # Abdallah B <bahassinea@gmail.com>, 2017
# Aestan <anthony.margerand@gmail.com>, 2018 # Aestan <anthony.margerand@protonmail.com>, 2018
# Jeremy Gourmel <jgourmel@free.fr>, 2018 # Jeremy Gourmel <jgourmel@free.fr>, 2018
# #
#, fuzzy #, fuzzy

View File

@ -5,7 +5,7 @@
# #
# Translators: # Translators:
# Paul Combal <abonnementspaul@gmail.com>, 2017 # Paul Combal <abonnementspaul@gmail.com>, 2017
# Aestan <anthony.margerand@gmail.com>, 2018 # Aestan <anthony.margerand@protonmail.com>, 2018
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
@ -14,7 +14,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-10-05 11:34-0400\n" "POT-Creation-Date: 2018-10-05 11:34-0400\n"
"PO-Revision-Date: 2016-12-16 12:18+0000\n" "PO-Revision-Date: 2016-12-16 12:18+0000\n"
"Last-Translator: Aestan <anthony.margerand@gmail.com>, 2018\n" "Last-Translator: Aestan <anthony.margerand@protonmail.com>, 2018\n"
"Language-Team: French (https://www.transifex.com/calamares/teams/20061/fr/)\n" "Language-Team: French (https://www.transifex.com/calamares/teams/20061/fr/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"

View File

@ -80,27 +80,48 @@ bool
canBeResized( Partition* candidate ) canBeResized( Partition* candidate )
{ {
if ( !candidate ) if ( !candidate )
{
cDebug() << "Partition* is NULL";
return false; return false;
}
cDebug() << "Checking if" << candidate->partitionPath() << "can be resized.";
if ( !candidate->fileSystem().supportGrow() || if ( !candidate->fileSystem().supportGrow() ||
!candidate->fileSystem().supportShrink() ) !candidate->fileSystem().supportShrink() )
{
cDebug() << " .. filesystem" << candidate->fileSystem().name()
<< "does not support resize.";
return false; return false;
}
if ( KPMHelpers::isPartitionFreeSpace( candidate ) ) if ( KPMHelpers::isPartitionFreeSpace( candidate ) )
{
cDebug() << " .. partition is free space";
return false; return false;
}
if ( candidate->isMounted() ) if ( candidate->isMounted() )
{
cDebug() << " .. partition is mounted";
return false; return false;
}
if ( candidate->roles().has( PartitionRole::Primary ) ) if ( candidate->roles().has( PartitionRole::Primary ) )
{ {
PartitionTable* table = dynamic_cast< PartitionTable* >( candidate->parent() ); PartitionTable* table = dynamic_cast< PartitionTable* >( candidate->parent() );
if ( !table ) if ( !table )
{
cDebug() << " .. no partition table found";
return false; return false;
}
if ( table->numPrimaries() >= table->maxPrimaries() ) if ( table->numPrimaries() >= table->maxPrimaries() )
{
cDebug() << " .. partition table already has"
<< table->maxPrimaries() << "primary partitions.";
return false; return false;
} }
}
bool ok = false; bool ok = false;
double requiredStorageGB = Calamares::JobQueue::instance() double requiredStorageGB = Calamares::JobQueue::instance()
@ -136,11 +157,10 @@ bool
canBeResized( PartitionCoreModule* core, const QString& partitionPath ) canBeResized( PartitionCoreModule* core, const QString& partitionPath )
{ {
//FIXME: check for max partitions count on DOS MBR //FIXME: check for max partitions count on DOS MBR
cDebug() << "checking if" << partitionPath << "can be resized."; cDebug() << "Checking if" << partitionPath << "can be resized.";
QString partitionWithOs = partitionPath; QString partitionWithOs = partitionPath;
if ( partitionWithOs.startsWith( "/dev/" ) ) if ( partitionWithOs.startsWith( "/dev/" ) )
{ {
cDebug() << partitionWithOs << "seems like a good path";
DeviceModel* dm = core->deviceModel(); DeviceModel* dm = core->deviceModel();
for ( int i = 0; i < dm->rowCount(); ++i ) for ( int i = 0; i < dm->rowCount(); ++i )
{ {
@ -148,10 +168,11 @@ canBeResized( PartitionCoreModule* core, const QString& partitionPath )
Partition* candidate = KPMHelpers::findPartitionByPath( { dev }, partitionWithOs ); Partition* candidate = KPMHelpers::findPartitionByPath( { dev }, partitionWithOs );
if ( candidate ) if ( candidate )
{ {
cDebug() << "found Partition* for" << partitionWithOs; cDebug() << " .. found Partition* for" << partitionWithOs;
return canBeResized( candidate ); return canBeResized( candidate );
} }
} }
cDebug() << " .. no Partition* found for" << partitionWithOs;
} }
cDebug() << "Partition" << partitionWithOs << "CANNOT BE RESIZED FOR AUTOINSTALL."; cDebug() << "Partition" << partitionWithOs << "CANNOT BE RESIZED FOR AUTOINSTALL.";
@ -177,6 +198,9 @@ lookForFstabEntries( const QString& partitionPath )
mountOptions.append( "noload" ); mountOptions.append( "noload" );
} }
cDebug() << "Checking device" << partitionPath
<< "for fstab (fs=" << r.getOutput() << ')';
FstabEntryList fstabEntries; FstabEntryList fstabEntries;
QTemporaryDir mountsDir; QTemporaryDir mountsDir;
mountsDir.setAutoRemove( false ); mountsDir.setAutoRemove( false );
@ -185,6 +209,9 @@ lookForFstabEntries( const QString& partitionPath )
if ( !exit ) // if all is well if ( !exit ) // if all is well
{ {
QFile fstabFile( mountsDir.path() + "/etc/fstab" ); QFile fstabFile( mountsDir.path() + "/etc/fstab" );
cDebug() << " .. reading" << fstabFile.fileName();
if ( fstabFile.open( QIODevice::ReadOnly | QIODevice::Text ) ) if ( fstabFile.open( QIODevice::ReadOnly | QIODevice::Text ) )
{ {
const QStringList fstabLines = QString::fromLocal8Bit( fstabFile.readAll() ) const QStringList fstabLines = QString::fromLocal8Bit( fstabFile.readAll() )
@ -193,12 +220,18 @@ lookForFstabEntries( const QString& partitionPath )
for ( const QString& rawLine : fstabLines ) for ( const QString& rawLine : fstabLines )
fstabEntries.append( FstabEntry::fromEtcFstab( rawLine ) ); fstabEntries.append( FstabEntry::fromEtcFstab( rawLine ) );
fstabFile.close(); fstabFile.close();
cDebug() << " .. got" << fstabEntries.count() << "lines.";
std::remove_if( fstabEntries.begin(), fstabEntries.end(), [](const FstabEntry& x) { return !x.isValid(); } ); std::remove_if( fstabEntries.begin(), fstabEntries.end(), [](const FstabEntry& x) { return !x.isValid(); } );
cDebug() << " .. got" << fstabEntries.count() << "fstab entries.";
} }
else
cWarning() << "Could not read fstab from mounted fs";
if ( QProcess::execute( "umount", { "-R", mountsDir.path() } ) ) if ( QProcess::execute( "umount", { "-R", mountsDir.path() } ) )
cWarning() << "Could not unmount" << mountsDir.path(); cWarning() << "Could not unmount" << mountsDir.path();
} }
else
cWarning() << "Could not mount existing fs";
return fstabEntries; return fstabEntries;
} }

View File

@ -574,10 +574,24 @@ PartitionViewStep::setConfigurationMap( const QVariantMap& configurationMap )
QString defaultFS = CalamaresUtils::getString( configurationMap, "defaultFileSystemType" ); QString defaultFS = CalamaresUtils::getString( configurationMap, "defaultFileSystemType" );
if ( defaultFS.isEmpty() ) if ( defaultFS.isEmpty() )
defaultFS = QStringLiteral( "ext4" ); defaultFS = QStringLiteral( "ext4" );
else
cDebug() << "Partition-module setting *defaultFileSystemType*" << defaultFS;
if ( FileSystem::typeForName( defaultFS ) == FileSystem::Unknown ) if ( FileSystem::typeForName( defaultFS ) == FileSystem::Unknown )
{ {
cWarning() << "Partition-module setting *defaultFileSystemType* is bad (" << defaultFS << ") using ext4."; cWarning() << "Partition-module setting *defaultFileSystemType* is bad (" << defaultFS << ") using ext4.";
defaultFS = QStringLiteral( "ext4" ); defaultFS = QStringLiteral( "ext4" );
#ifdef DEBUG_FILESYSTEMS
// This bit is for distro's debugging their settings, and shows
// all the strings that KPMCore is matching against for FS type.
{
Logger::CLog d( Logger::LOGDEBUG );
using TR = Logger::DebugRow< int, QString >;
const auto fstypes = FileSystem::types();
d << "Available types (" << fstypes.count() << ')';
for ( FileSystem::Type t : fstypes )
d << TR( static_cast<int>( t ), FileSystem::nameForType( t ) );
}
#endif
} }
gs->insert( "defaultFileSystemType", defaultFS ); gs->insert( "defaultFileSystemType", defaultFS );

View File

@ -53,6 +53,8 @@ alwaysShowPartitionLabels: true
# #
# Suggested values: ext2, ext3, ext4, reiser, xfs, jfs, btrfs # Suggested values: ext2, ext3, ext4, reiser, xfs, jfs, btrfs
# If nothing is specified, Calamares defaults to "ext4". # If nothing is specified, Calamares defaults to "ext4".
#
# Names are case-sensitive and defined by KPMCore.
defaultFileSystemType: "ext4" defaultFileSystemType: "ext4"
# Show/hide LUKS related functionality in automated partitioning modes. # Show/hide LUKS related functionality in automated partitioning modes.