[libcalamares] Move FS-related code to partition service

- only moves one function right now, providing user-visible
   name for filesystem name.
This commit is contained in:
Adriaan de Groot 2019-06-13 14:55:43 +02:00
parent a7a3c4f2d8
commit 8eb04a082e
6 changed files with 111 additions and 47 deletions

View File

@ -116,6 +116,7 @@ if ( KPMcore_FOUND )
include_directories( ${KPMCORE_INCLUDE_DIR} ) include_directories( ${KPMCORE_INCLUDE_DIR} )
list( APPEND libSources list( APPEND libSources
partition/FileSystem.cpp
partition/PartitionIterator.cpp partition/PartitionIterator.cpp
partition/PartitionQuery.cpp partition/PartitionQuery.cpp
) )

View File

@ -0,0 +1,74 @@
/* === This file is part of Calamares - <https://github.com/calamares> ===
*
* Copyright 2014, Aurélien Gâteau <agateau@kde.org>
* Copyright 2015-2016, Teo Mrnjavac <teo@kde.org>
* Copyright 2018-2019 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
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#include "FileSystem.h"
#include <QObject>
namespace CalamaresUtils
{
namespace Partition
{
QString
prettyNameForFileSystemType( FileSystem::Type t )
{
switch ( t )
{
case FileSystem::Unknown:
return QObject::tr( "unknown" );
case FileSystem::Extended:
return QObject::tr( "extended" );
case FileSystem::Unformatted:
return QObject::tr( "unformatted" );
case FileSystem::LinuxSwap:
return QObject::tr( "swap" );
case FileSystem::Fat16:
case FileSystem::Fat32:
case FileSystem::Ntfs:
case FileSystem::Xfs:
case FileSystem::Jfs:
case FileSystem::Hfs:
case FileSystem::Ufs:
case FileSystem::Hpfs:
case FileSystem::Luks:
case FileSystem::Ocfs2:
case FileSystem::Zfs:
case FileSystem::Nilfs2:
return FileSystem::nameForType( t ).toUpper();
case FileSystem::ReiserFS:
return "ReiserFS";
case FileSystem::Reiser4:
return "Reiser4";
case FileSystem::HfsPlus:
return "HFS+";
case FileSystem::Btrfs:
return "Btrfs";
case FileSystem::Exfat:
return "exFAT";
case FileSystem::Lvm2_PV:
return "LVM PV";
default:
return FileSystem::nameForType( t );
}
}
} // namespace Partition
} // namespace CalamaresUtils

View File

@ -0,0 +1,33 @@
/* === This file is part of Calamares - <https://github.com/calamares> ===
*
* Copyright 2014, Aurélien Gâteau <agateau@kde.org>
* Copyright 2015-2016, Teo Mrnjavac <teo@kde.org>
* Copyright 2019, 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
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef PARTITION_FILESYSTEM_H
#define PARTITION_FILESYSTEM_H
#include <kpmcore/fs/filesystem.h>
namespace CalamaresUtils
{
namespace Partition
{
QString prettyNameForFileSystemType( FileSystem::Type t );
} // namespace Partition
} // namespace CalamaresUtils
#endif // PARTITION_PARTITIONQUERY_H

View File

@ -155,48 +155,4 @@ clonePartition( Device* device, Partition* partition )
partition->activeFlags() ); partition->activeFlags() );
} }
QString
prettyNameForFileSystemType( FileSystem::Type t )
{
switch ( t )
{
case FileSystem::Unknown:
return QObject::tr( "unknown" );
case FileSystem::Extended:
return QObject::tr( "extended" );
case FileSystem::Unformatted:
return QObject::tr( "unformatted" );
case FileSystem::LinuxSwap:
return QObject::tr( "swap" );
case FileSystem::Fat16:
case FileSystem::Fat32:
case FileSystem::Ntfs:
case FileSystem::Xfs:
case FileSystem::Jfs:
case FileSystem::Hfs:
case FileSystem::Ufs:
case FileSystem::Hpfs:
case FileSystem::Luks:
case FileSystem::Ocfs2:
case FileSystem::Zfs:
case FileSystem::Nilfs2:
return FileSystem::nameForType( t ).toUpper();
case FileSystem::ReiserFS:
return "ReiserFS";
case FileSystem::Reiser4:
return "Reiser4";
case FileSystem::HfsPlus:
return "HFS+";
case FileSystem::Btrfs:
return "Btrfs";
case FileSystem::Exfat:
return "exFAT";
case FileSystem::Lvm2_PV:
return "LVM PV";
default:
return FileSystem::nameForType( t );
}
}
} // namespace } // namespace

View File

@ -92,7 +92,6 @@ Partition* createNewEncryptedPartition( PartitionNode* parent,
Partition* clonePartition( Device* device, Partition* partition ); Partition* clonePartition( Device* device, Partition* partition );
QString prettyNameForFileSystemType( FileSystem::Type t );
} }
#endif /* KPMHELPERS_H */ #endif /* KPMHELPERS_H */

View File

@ -23,6 +23,7 @@
#include "core/PartitionInfo.h" #include "core/PartitionInfo.h"
#include "core/KPMHelpers.h" #include "core/KPMHelpers.h"
#include "partition/FileSystem.h"
#include "partition/PartitionQuery.h" #include "partition/PartitionQuery.h"
#include "utils/Logger.h" #include "utils/Logger.h"
@ -155,7 +156,7 @@ PartitionModel::data( const QModelIndex& index, int role ) const
} }
} }
if ( col == FileSystemColumn ) if ( col == FileSystemColumn )
return KPMHelpers::prettyNameForFileSystemType( partition->fileSystem().type() ); return CalamaresUtils::Partition::prettyNameForFileSystemType( partition->fileSystem().type() );
if ( col == MountPointColumn ) if ( col == MountPointColumn )
return PartitionInfo::mountPoint( partition ); return PartitionInfo::mountPoint( partition );
if ( col == SizeColumn ) if ( col == SizeColumn )
@ -186,7 +187,7 @@ PartitionModel::data( const QModelIndex& index, int role ) const
: partition->partitionPath(); : partition->partitionPath();
} }
} }
QString prettyFileSystem = KPMHelpers::prettyNameForFileSystemType( partition->fileSystem().type() ); QString prettyFileSystem = CalamaresUtils::Partition::prettyNameForFileSystemType( partition->fileSystem().type() );
qint64 size = ( partition->lastSector() - partition->firstSector() + 1 ) * m_device->logicalSize(); qint64 size = ( partition->lastSector() - partition->firstSector() + 1 ) * m_device->logicalSize();
QString prettySize = KFormat().formatByteSize( size ); QString prettySize = KFormat().formatByteSize( size );
return QVariant(name + " " + prettyFileSystem + " " + prettySize); return QVariant(name + " " + prettyFileSystem + " " + prettySize);