Commit Graph

1162 Commits

Author SHA1 Message Date
Andrius Štikonas b35c21ed71 Fix an out of order compile warning.
Initialization should happen in the same order as variables are declared.
CC: huzaifafaruqui@gmail.com
2018-02-04 13:44:55 +00:00
Andrius Štikonas 4cae6f0632 Merge branch 'master' into kauth 2018-02-04 13:44:29 +00:00
Andrius Štikonas 8aac14ceca Actually run udev command when reading label/uuid. 2018-02-04 13:40:32 +00:00
Andrius Štikonas f426f59799 Use QFile for writing data in ExternalCommandHelper::writeData
dd works much slower when writing to files, especially files on SSD.
Thanks to Huzaifa Faruqui for suggestion.
2018-02-03 15:58:36 +00:00
Andrius Štikonas 5c307c1cc7 Use toLongLong in KAuth helper.
Otherwise all integers simply overflow.
2018-02-02 18:33:35 +00:00
Andrius Štikonas 4870587339 Set sfdisk backend as default. 2018-01-31 18:50:49 +00:00
Andrius Štikonas 7e60df68bd Do not expose libparted backend on non Linux systems. 2018-01-31 17:08:05 +00:00
Andrius Štikonas f2b7f2bd9b Use const char* instead of QString in Fstab::findBlkIdDevice
Thansk to: Adriaan de Groot
2018-01-31 17:02:59 +00:00
Andrius Štikonas f98dbcc208 Only use libblkid on Linux. 2018-01-31 16:58:00 +00:00
Andrius Štikonas 838150d439 Do not use blkid cache. 2018-01-31 16:53:34 +00:00
Andrius Štikonas c50006ed22 Fix #include issues in smart code.
CC: caiojcarvalho@gmail.com
2018-01-31 16:12:11 +00:00
Andrius Štikonas 56de5e1e06 Merge branch 'master' into kauth 2018-01-31 16:03:58 +00:00
Andrius Štikonas 67f79f42dd Add cmake option for sfdisk backend. 2018-01-31 16:03:51 +00:00
Andrius Štikonas 9ea7cab92a Merge branch 'master' into kauth 2018-01-31 15:15:25 +00:00
Andrius Štikonas ba4e443223 Move file system label and UUID read code to backends.
This allows to use different implementations on different platforms.
E.g. libblkid is not available on FreeBSD.

libparted backend still uses the same libblkid implementation
sfdisk backend reads label and UUID from udev database
2018-01-31 15:13:34 +00:00
Andrius Štikonas 7e8f64ffd7 Fix a possibly uninitialized variable. 2018-01-31 14:58:43 +00:00
Andrius Štikonas 2534608094 Use btrfs check --repair instead of btrfsck. 2018-01-29 13:30:14 +00:00
Andrius Štikonas 3a6aa4aaa0 Do not link to libatasmart. 2018-01-29 12:49:25 +00:00
Huzaifa Faruqui b143c139e5 Fix Report in copyBlocks 2018-01-29 16:45:21 +05:30
Andrius Štikonas dd709fc8a9 Remove unnecessary extra LIBKPMCORE_EXPORT macros. 2018-01-27 13:15:19 +00:00
Andrius Štikonas bf2a23dada Use copyjobs KAuth helper for other copying jobs too. 2018-01-24 15:45:19 +00:00
Andrius Štikonas 61fed73a5d Remove some debug output. 2018-01-24 15:35:11 +00:00
Huzaifa Faruqui e42a5c9289 Implement copyblocks function in KAuth helper.
Switch BackupFileSystemJob to thenew copyblocks function.

Reviewed and cleaned up by: Andrius Štikonas
2018-01-24 15:22:42 +00:00
Andrius Štikonas 4eff7d7594 Do not export CoreBackendDevice and CoreBackendPartitionTable classes. 2018-01-21 13:53:07 +00:00
Caio Carvalho a3d43e159f Removing LIBKPMCORE_EXPORT from SmartParser and adding SMART support dependencies to testsmart in cmake 2018-01-21 01:41:59 -03:00
Caio Carvalho 49c0c39f4b - Including SMART support test
- Adding export macro to SmartParser
2018-01-20 21:56:10 -03:00
l10n daemon script 098b9bc2ae SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-14 04:49:26 +01:00
l10n daemon script 85085d8eb7 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-13 04:47:56 +01:00
Andrius Štikonas d2ee0010d0 Update credits. 2018-01-12 11:32:09 +01:00
Andrius Štikonas 1c024c6b29 Fix a typo in the comment. 2018-01-11 21:59:18 +01:00
Caio Carvalho 0190d32cf6 Including doxygen comments to the new SMART support classes 2018-01-11 17:38:53 -03:00
Andrius Štikonas a135c86ba1 Use QStringLiteral instead of QString::fromLocal8Bit 2018-01-11 14:17:55 +01:00
Andrius Štikonas ed7c5b1c77 Use long command line option for smartctl. 2018-01-11 12:00:52 +01:00
Andrius Štikonas 4069e5112e Post merge fixes.
In kauth branch ExternalCommand::write should be called before start.
2018-01-11 11:45:39 +01:00
Andrius Štikonas 790553aa0b Merge branch 'smart' into kauth 2018-01-11 11:31:18 +01:00
Caio Carvalho 44fae61d4f - Removing libatasmart dependency from CMakeLists.txt
- Changing getQuirk regular expression evaluation to use QRegularExpression instead of QRegExp
2018-01-09 19:34:20 -03:00
Caio Carvalho d71731141c - Changed m_Quirk variable in SmartAttributeParsedData to SmartQuirk value instead of reference
- Changed smartctl call to use ExternalCommand class instead of QProcess
- Changed Q_FOREACH to C++11 ranged based for
- Changed quint64 json parsing
2018-01-09 01:35:59 -03:00
Caio Carvalho 8177fb9738 Adding smart JSON output support 2018-01-08 17:59:48 -03:00
l10n daemon script 5376808159 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-07 04:56:23 +01:00
l10n daemon script ba3676e165 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-04 04:49:48 +01:00
Pali Rohár 2f4aeaf851 Add support for reading capacity and changing label/uuid on UDF filesystem 2018-01-03 20:09:53 +02:00
Andrius Štikonas 8b9451c8d7 We don't need keyLocation for luks1 file system it is always dm-crypt. 2017-12-29 22:53:02 +00:00
Andrius Štikonas 1802b7ad05 Add luks2::create method. 2017-12-29 20:38:36 +00:00
Andrius Štikonas 4773f49edc Initial support for resizing LUKS2 volumes.
Does not yet work when LUKS2 is used with dm-integrity.
2017-12-29 20:01:06 +00:00
Andrius Štikonas 78a9ede36c Do not install internal backend headers. 2017-12-27 16:16:11 +00:00
Andrius Štikonas a6a69b1e31 Merge branch 'sfdisk' into kauth 2017-12-25 00:13:18 +00:00
Andrius Štikonas 590b531863 Commit partition table when closing Sfdisk backend device. 2017-12-25 00:11:13 +00:00
Andrius Štikonas 41570fde5d Set FAT12 MBR/GPT partition type. 2017-12-24 23:56:03 +00:00
Andrius Štikonas f20bea9bf8 Merge branch 'sfdisk' into kauth 2017-12-24 23:40:06 +00:00
Andrius Štikonas 97ccd8d154 Merge branch 'master' into sfdisk 2017-12-24 23:38:39 +00:00
Andrius Štikonas 5123411f1f Add support for FAT12 file system. 2017-12-24 23:24:37 +00:00
Andrius Štikonas 8de54d390e Make default LUKS2 colour different from LUKS. 2017-12-24 20:38:46 +00:00
Andrius Štikonas 3e7e9d8955 Sort partitions by first sector. 2017-12-21 23:16:12 +00:00
Andrius Štikonas f9cd824075 Add a comment about boot flags. 2017-12-20 15:03:48 +00:00
Andrius Štikonas f8cbd28238 Remove FIXME that was already fixed. 2017-12-16 12:55:34 +00:00
Andrius Štikonas 76934a0cba Add forgotten luks2 files. 2017-12-15 19:35:30 +00:00
Andrius Štikonas 3a691edb4a Do not install copy source/target device headers. 2017-12-15 19:33:11 +00:00
Andrius Štikonas 7aa77f489d Add FileSystem::Luks2 child class. 2017-12-14 02:08:32 +00:00
Andrius Štikonas 8c030baf3e Switch file system detection code to udevadm. 2017-12-14 01:14:45 +00:00
Andrius Štikonas 3f562ab0f0 Allow reading LUKS label. 2017-12-13 00:07:55 +00:00
Andrius Štikonas fdf6e19de0 Remove another workaround which hopefully is no longer necessary. 2017-12-10 19:56:04 +00:00
Andrius Štikonas 8264c87ab8 Cleanup unnecessary includes. 2017-12-10 18:44:54 +00:00
Andrius Štikonas 27462bcddb Remove workaround to access user dbus session as root. 2017-12-10 18:09:03 +00:00
Andrius Štikonas 4cc07d2366 Adapt ntfs updateBootSector changes to kauth branch. 2017-12-10 17:37:10 +00:00
Andrius Štikonas 192305c1d5 Close write channel after writing to QProcess. 2017-12-10 17:36:39 +00:00
Andrius Štikonas 906a89c16d Use ExternalCommand to copy fstab file to its final location. 2017-12-10 17:36:39 +00:00
Andrius Štikonas d2f13ff4cc QFile->QTemporaryFile. 2017-12-10 17:36:39 +00:00
Andrius Štikonas 47429dd1bf Proof of concept attempt to implement KAuth. 2017-12-10 17:36:39 +00:00
Andrius Štikonas e7b0192630 Merge branch 'master' into sfdisk 2017-12-10 17:35:35 +00:00
Andrius Štikonas e49a266922 ntfs: update backup boot sector too
When moving NTFS partition to a new location we need to update its boot sector
as well as backup boot sector. Otherwise ntfslabel --new-serial won't work.
2017-12-10 17:34:07 +00:00
Andrius Štikonas def62c975d Replace ntfs with ntfs-3g in lsblk file system detection code. 2017-12-09 23:31:31 +00:00
Andrius Štikonas c3827b0c60 Call kpartx to reread partition table. 2017-12-09 23:29:18 +00:00
Andrius Štikonas e3d01cf25f Do not attempt to set empty partition type. 2017-12-09 19:19:36 +00:00
Andrius Štikonas 4c2efe8c52 Add partition type map. 2017-12-07 23:24:03 +00:00
Andrius Štikonas 55b8cd3e6b sfdisk: store a pointer to the device in SfdiskPartitionTable class. 2017-12-07 20:50:54 +00:00
Andrius Štikonas 41473119b1 backend: provide more information about backend device.
Pass Device object, not just deviceNode string when opening Core Backend Device
2017-12-06 21:33:31 +00:00
Andrius Štikonas 0bfb7094df Merge branch 'master' into sfdisk 2017-12-06 00:41:19 +00:00
Andrius Štikonas e66fb4b95e Do not attempt to set partition flags that were not changed. 2017-12-06 00:27:02 +00:00
Andrius Štikonas d27455b6f0 Avoid unnecessary QString encoding/decoding.
CCBUG: 384321
2017-12-04 21:19:11 +00:00
Andrius Štikonas 8afe33a4a4 Allow setting label for inner LUKS file system during the initial creation. 2017-12-03 16:28:16 +00:00
Andrius Štikonas f09cb6435e Fix conversion to/from QByteArray in sfdisk backend.
CCBUG: 384321
2017-12-03 12:40:57 +00:00
Andrius Štikonas 6996687123 Merge branch 'master' into sfdisk 2017-12-03 12:38:43 +00:00
Andrius Štikonas 4bf5bb467f Fix conversion to/from QString/QByteArray
BUG: 384321
2017-12-03 12:37:21 +00:00
Andrius Štikonas f1a695bdac Add support for growing f2fs file system. 2017-11-13 19:34:52 +00:00
Andrius Štikonas be7ba11f17 Remove unnecessary semicolons. 2017-11-12 14:55:55 +00:00
Andrius Štikonas fad8a3568e Fix the previous commit.
FileSystem::create is never called if createWithLabel is available.
2017-11-12 14:45:49 +00:00
Andrius Štikonas 58f2decdf8 Support newer f2fs-tools versions.
BUG: 386771
2017-11-12 13:07:48 +00:00
Andrius Štikonas fcfd78cdc4 Add support for fatresize program. 2017-11-09 23:14:52 +00:00
Andrius Štikonas d3cde41df0 Allow setting boot, esp and bios-grub flags in sfdisk backend. 2017-11-08 00:01:24 +00:00
Andrius Štikonas 80de99fc73 Move setFlags function from CoreBackendPartition to CoreBackendPartitionTable.
setFlags function now takes additional argument const Partition& partition.
This allows us to completely remove CoreBackendPartition class.
Remove getPartitionBySector and getExtendedPartitions.
These functions were designed around libparted API and are not very convenient
with other backends.
2017-11-07 22:55:28 +00:00
Andrius Štikonas 0d88e26c8c Add an experimental sfdisk backend. 2017-11-07 22:51:29 +00:00
Andrius Štikonas a6415561ae SetPartFlagsJob should return error when it is unable to find partition. 2017-11-07 03:07:51 +00:00
Andrius Štikonas 89a5308686 btrfs: implement updateUUID. 2017-11-05 20:42:40 +00:00
Andrius Štikonas 9ea983654c Do not export symbols of CopySource(Target)Device
Calamares resize jobs was ported to ResizeOperation, so this is no longer
necessary.
2017-11-01 20:11:38 +00:00
Andrius Štikonas 87e210432d Merge branch '3.2' 2017-10-31 16:16:36 +00:00
Andrius Štikonas 8909dd87d0 Add a workaround for device not ready error.
In rare cases after moving file system to a new location file system check
fails on the first try. As a temporary workaround, wait a bit and try again.
2017-10-30 15:59:05 +00:00
Andrius Štikonas 55e445b069 More user friendly copying direction message in the log. 2017-10-30 14:24:55 +00:00
Andrius Štikonas 72dfbe480a Replace readSectors/writeSectors backend functions.
New alternatives use QByteArray to store data and use bytes, not sectors.
2017-10-28 18:07:44 +01:00
Andrius Štikonas e4c125c519 Do not over encapsulate Partition methods.
This caused more trouble than helped. There is no reason not to allow
e.g. settings new flags on partition or changing it's path.
2017-10-09 21:13:58 +01:00
Andrius Štikonas d741fe4a00 Fix a typo in a comment. 2017-10-09 17:37:16 +01:00
Andrius Štikonas 9f3b2b8fd4 Use qOverload in Qt signal/slots. 2017-10-09 13:39:34 +01:00
Andrius Štikonas 2760f02fbf Move LVM device scanning code.
Now it's the backend's responsibility to find LVM devices.
All LVM scanning code was moved into LvmDevice::scanSystemLVM helper,
so that it is very easy to plug LVM into backend.

LVM devices are now intentionally not detected in Dummy Backend.
2017-10-06 03:17:51 +01:00
Andrius Štikonas 15eabf9859 Add some comments about LVM in DeviceScanner. 2017-10-03 21:02:40 +01:00
Adriaan de Groot c4ae5d680c Docs: document Device (a description) and CoreBackendDevice (an operational class) 2017-10-03 05:56:16 -04:00
Adriaan de Groot 98caf84424 Docs: change parameter name to match intention.
Document that  means exclude-read-only and change the
name to match. It was already named excludeReadOnly in the
parted backend.
2017-10-03 05:56:16 -04:00
Andrius Štikonas 80c5cb5a1f Remove no longer used include. 2017-10-03 02:32:36 +01:00
Andrius Štikonas 40e22c94f2 Store ExternalCommand output in QByteArray.
This makes it possible to run dd with ExternalCommand.
2017-10-03 02:27:47 +01:00
Andrius Štikonas 37d3639bfe Update credits. 2017-10-02 22:44:58 +01:00
Adriaan de Groot e67b6b6a2b Docs: Add documentation about FileSystem::name() 2017-10-02 16:16:49 +02:00
Andrius Štikonas 8fd723770a Update credits. 2017-10-02 01:40:41 +01:00
Andrius Štikonas 722ef62ebb Port away from KService. 2017-10-01 22:05:50 +01:00
Andrius Štikonas 8c3ab58d84 Add a comment about FAT volume ID hack. 2017-09-28 14:24:13 +01:00
Pali Rohár e957c220bd Disallow non-ASCII and ASCII control characters in FAT label
FAT label is interpreted according to current OEM DOS codepage which is
system dependent setting. But most DOS codepages have same characters in
printable ASCII range, so this is the only safe range of characters which
are interpreted in same way by most programs and operating systems. Also
all DOS codepages are only 8bit, so characters above U+FF cannot be stored
to FAT label.
2017-09-26 22:02:02 +01:00
Pali Rohár 5a30aff288 Set FAT label in upper case
FAT label should be stored in upper case. Also Windows systems doing it.
2017-09-26 22:01:56 +01:00
Andrius Štikonas 098fdee506 fstab fixes:
* Do not output # for empty inline comments.
  * More checks to validate fstab entry.
2017-09-20 21:22:53 +01:00
Andrius Štikonas a3732c1459 Fix a typo. Remove extra trimmed(). 2017-09-17 13:52:48 +01:00
Andrius Štikonas 1713f66872 Fix reading partition label. 2017-09-17 13:06:31 +01:00
Andrius Štikonas d99b3f6eb3 Improve QFileInfo usage.
Cache QFileInfo result in a local variable.
Before repeated request often incorrectly resulted in QString()
2017-09-17 00:39:53 +01:00
Andrius Štikonas 4a64465738 Remove MountEntry class. 2017-09-16 20:56:32 +01:00
Andrius Štikonas 8dd1e70b21 Fix inline comment handling.
CCBUG: 305469
2017-09-16 20:50:57 +01:00
Andrius Štikonas baec157314 Add a function to write fstab file.
CCBUG: 305469
2017-09-16 20:40:46 +01:00
Andrius Štikonas 8719fb0bf3 Add fstab mutators. 2017-09-16 20:16:17 +01:00
Andrius Štikonas 4257021857 Use QStringList to store fstab options. 2017-09-16 19:09:03 +01:00
Andrius Štikonas 687e3fc7d4 Do not store more than 10M characters in ExternalCommand output.
BUG: 368674
2017-09-15 14:59:59 +01:00
Andrius Štikonas ec89795326 Allow accessing untranslated partition roles. 2017-09-15 13:09:01 +01:00
Andrius Štikonas dff6086e64 Copy paste typo. 2017-09-15 12:59:10 +01:00
Andrius Štikonas 0d16e945c1 Add a partition role name for LVM logical volume. 2017-09-15 12:50:05 +01:00
Andrius Štikonas f1888f0d1c Change a way untranslated file system name is accessed. 2017-09-15 12:47:01 +01:00
Andrius Štikonas 0c33a7b001 Move showColumnsContextMenu function from kpmcore to partitionmanager. 2017-09-14 20:43:08 +01:00
Andrius Štikonas 95a74c63d1 Do not report wrong mountpoint for closed LUKS file systems.
When libparted scans luks partitions it calls detectFileSystem
regardless of whether luks is open or closed. This results in
mapperNode being empty, so we need to prevent detectFileSystem
from reporting anything in this case.
2017-09-14 17:50:21 +01:00
Andrius Štikonas f29534e7c7 Use untranslated file system name when exporting partition table.
CCBUG: 364648
2017-09-14 14:47:00 +01:00
Andrius Štikonas 5d65d83990 Add functions to access untranslated name of file system.
CCBUG: 364648
2017-09-14 14:23:07 +01:00
Andrius Štikonas 50ba46a693 Fix a typo where declarared variable was not used. 2017-09-14 01:27:38 +01:00
Andrius Štikonas 6b4185cff1 Do not crash when partition has no mount points. 2017-09-13 23:28:37 +01:00
Andrius Štikonas 268a68a318 Split fstab lines with both spaces and tabs. 2017-09-13 23:05:32 +01:00
Andrius Štikonas 8f7e0beb0f Sort files in CMakeLists.txt alphabetically. 2017-09-13 18:52:43 +01:00
Andrius Štikonas 34712dd2ed Add fstab file parser.
Remove dependency on KMountPoint and hence KIO.
2017-09-13 18:46:33 +01:00
Andrius Štikonas 6b6ddbdcef Use int for maxLabelLength. 2017-09-11 16:52:20 +01:00
Andrius Štikonas 17e6c32633 Fix more implicit type conversion warnings. 2017-09-11 13:41:03 +01:00
Andrius Štikonas 6c433c264c Port FileSystem::luks away from KDiskFreeSpaceInfo. 2017-09-11 12:19:49 +01:00
Andrius Štikonas a041090168 Port LvmDevice away from KDiskFreeSpaceInfo. 2017-09-11 12:15:37 +01:00
Andrius Štikonas 8a477e689e Minor clang warnings++ 2017-09-11 12:01:39 +01:00
Andrius Štikonas 5433294a5b Fix more minor clang issues. 2017-09-11 00:29:30 +01:00
Andrius Štikonas f7e5f7c7bf Rename KPMcore include guards.
clang in -Weverything mode does not like double underscore.
2017-09-10 20:12:52 +01:00
Andrius Štikonas 0f2ab468eb Disable some characters in FAT label input. 2017-09-10 19:19:08 +01:00
Andrius Štikonas fbf7e78efe Update credits: Pali Rohár 2017-09-10 18:03:41 +01:00
Andrius Štikonas f1654486dc Remove unnecessary semicolon. 2017-09-10 17:26:12 +01:00
Andrius Štikonas 2404689dd0 Port away from KDiskFreeSpaceInfo to QStorageInfo. 2017-09-08 18:35:30 +01:00
Andrius Štikonas 1889b9e8fa Port unmount code away from KMountPoints (KIO). 2017-09-08 17:58:27 +01:00
Andrius Štikonas f1accd1e0d Remove IconThemes dependency from kpmcore. 2017-09-08 15:05:55 +01:00
Andrius Štikonas 5a83e741cb Add support for detecting ISO9660 file systems.
BUG: 364476
2017-09-08 11:42:12 +01:00
Andrius Štikonas 2cfcefd9c9 nilfs2: pass -f to mkfs.nilfs2 to overwrite existing file system 2017-09-08 00:20:35 +01:00
Andrius Štikonas 3866bf6fef Only include <linux/fs.h> on GNU/Linux 2017-09-07 21:34:45 +01:00
Andrius Štikonas 2b52ec492b Only create QRegularExpressionValidator when needed and destroy it afterwards. 2017-09-05 16:20:50 +01:00
Pali Rohár 9cc6596cb4 Implement udf::labelValidator() for validating UDF label
This would rapidly simplify UDF code if all checks are done by caller.

Also checks for MIN_UDF_BLOCKS/MAX_UDF_BLOCKS are removed as they should be
covered by udf::minCapacity() and udf::maxCapacity().
2017-09-05 15:53:24 +01:00
Andrius Štikonas 58f3d09d71 Port away from QRegExp. 2017-09-05 12:57:45 +01:00
Andrius Štikonas 447ae7fc90 Use QValidator to validate label input. 2017-09-05 12:52:34 +01:00
Andrius Štikonas 0badfebcb1 lvm: disable error channel for vgs/pvs commands.
Having an error channel can result in unwanted devices, e.g.:
"/dev//dev/mapper/test: read failed after 0 of 4096 at 0: Input/output error"
2017-09-04 19:55:08 +01:00
Andrius Štikonas 4a39e453dc Add a function for validating labels. 2017-09-04 17:39:29 +01:00
Andrius Štikonas 6ad873223e udf: set MBR partition id to 0x07. 2017-09-03 21:24:15 +01:00
Andrius Štikonas 703270b64c udf: do not hardcode min/max sector size. 2017-09-03 18:40:19 +01:00
Andrius Štikonas c4628ad715 Use block size provided by the backend in UDF file system. 2017-09-03 18:27:57 +01:00
Andrius Štikonas 7dba4b8245 Record sector size in FileSystem class. 2017-09-03 15:37:14 +01:00
Andrius Štikonas d797a47229 QList->QVector. 2017-08-31 10:48:10 +01:00
Andrius Štikonas 756c5b5beb Use QHash instead of QMap for storing LVM LV sizes. 2017-08-31 10:16:16 +01:00
Pali Rohár db13a4bab9 Process UDF label correctly when creating new UDF file system
Mkudffs from udftools prior to version 1.1 damages the label if it contains
non-ASCII characters.

The Volume Identifier (--vid) can only contain 30 bytes, either 30
ISO-8859-1 (Latin 1) characters or 15 UCS-2BE characters. Store the most
characters possible in the Volume Identifier.
2017-08-31 10:13:32 +01:00
Andrius Štikonas 2a118753ae Allow selecting different channels in ExternalCommand output. 2017-08-31 10:13:24 +01:00
Andrius Štikonas fd68f9334c Add createWithLabel support for F2FS. 2017-08-31 10:13:07 +01:00
Andrius Štikonas 6a78a74515 Add support for creating file systems with label.
Some file systems such as UDF or F2FS only support writing labels when creating
them.

At the moment this only works in new partition dialog and not in the partition
properties dialog.
2017-08-31 10:13:01 +01:00
Andrius Štikonas 684a1ce073 Add colour for UDF file system. 2017-08-31 10:12:54 +01:00
Pali Rohár feec00f4e7 Add basic support for UDF filesystem
For reading UDF label and UUID is needed blkid >= 2.30. For creating new
UDF filesystem is needed mkudffs binary from the udftools package.

When creating new UDF fileystem, revision 2.01 for hard disk media is used.
Therefore it is not possible to use it for optical (or other) medias.

Problems:
* Check for min and max capacity is incorrect as it depends on logical
  (sector) size of the disk.
* Check for max label length is incorrect too as it depends on characters
  itself in label.
* Specifying label is not working yet as FileSystem::create() does not get
  label parameter.
* UDF filesystem should be used on unpartitioned disk, without MBR or GPT
  and spanning whole disk, but KDE Partition Manager does not support it.
* When MBR is used, MBR partition id should be 0x07, but currently it is
  incorrect 0x83. See: https://serverfault.com/a/829172 (same for GPT)
2017-08-31 10:12:44 +01:00
Andrius Štikonas 13c063a150 Fix a possible null pointer dereference.
On some systems getlogin() function might fail to obtain user name.
For now just check whether pointer is nullptr. In that case suspending
plasma device automounter would not work but at least we will not crash.

In future it might make sense to try to use other methods of obtaining login
name, such as running "who am i".

BUG: 381987
2017-07-04 21:07:54 +01:00
Andrius Štikonas 037380228d QRegularExpression->QJson
lsblk LUKS mapping point parsing now uses json.
2017-07-04 14:42:39 +01:00
Andrius Štikonas 311a171307 Use QtJson to parse lsblk output. 2017-06-28 14:11:43 +01:00
Harald Sitter 984a4e9ace fix device RO check
Summary:
- mark deviceNode const
- copy it as deviceName
- mutate deviceName by removing `/dev/`
- use the new deviceName for the read-only check

this makes sure we emit the unmodified deviceNode (e.g. /dev/vda) rather
than the name (e.g. vda). unbreaks for example calamares which doesn't
know what to do with "vda".

CCBUG: 378607

Test Plan:
- without fix clamares fails to list devices
- with the fix calamares lists devices

Reviewers: stikonas

Reviewed By: stikonas

Differential Revision: https://phabricator.kde.org/D6414
2017-06-28 13:51:27 +02:00
Andrius Štikonas a35702e911 Use lsblk's TYPE=disk when scanning for devices.
The previous way relied on kernel device numbers but this gets ugly, especially
in cases when device number is not assigned such as virtio disks.

BUG: 378607
2017-06-22 03:11:58 +01:00
Andrius Štikonas fda1e219de Add more major device numbers for virtio.
BUG: 378607
2017-06-20 15:51:13 +01:00
Andrius Štikonas 6b31dd0e85 Remove accidentally commited debug code. 2017-06-14 15:26:02 +02:00
Andrius Štikonas b98dcc90d8 Bump version to 3.1.1. 2017-06-14 00:20:13 +02:00
Andrius Štikonas 9252bc6156 seteuid has to be used instead of setuid.
According to setuid manual, seteuid has to be used to be able to
regain root privileges later.
2017-06-12 22:00:36 +02:00
Andrius Štikonas 63ddb4e472 QList<QString> -> QStringList. 2017-06-12 12:47:17 +02:00
l10n daemon script cb1f76d018 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2017-06-11 04:31:47 +02:00
Andrius Štikonas 63b5c8c34c Suspend Plasma removable device automounting.
Before doing operations, we connect to DBus session of the original user
and stop kded module for device automounting.

BUG: 368175
2017-06-07 19:21:59 +02:00
Andrius Štikonas 3228fa081a Use qAsConst in ranged based for loops. 2017-06-04 22:26:24 +01:00
Andrius Štikonas d2ce014589 Use range based for instead of Q_FOREACH.
Bump Qt version requirements to 5.7.0
2017-06-01 11:16:09 +01:00
Andrius Štikonas e43d6645e4 Replace VLA with new[]. 2017-06-01 01:36:38 +01:00
Andrius Štikonas 5f0d1cd72b Port qSort. 2017-05-03 19:24:20 +01:00
Christian Morlok b10577e1c7 Fix creation of encrypted volumes
We can't rely on the order of lsblk. Check for the type=crypt instead.

BUG: 379205
2017-04-25 19:08:14 +01:00
Andrius Štikonas ff714f2f0e Fix online label support.
Some filesystems require mountpoint while some deviceNode to change file system
label only. So split writeLabel action into online and offline actions.
2017-04-09 17:49:55 +01:00
Alexander Schlarb 427e37a047 Prevent the libparted backend from exposing "null devices"
REVIEW: 129968
BUG: 375394
2017-02-25 13:45:22 +00:00
Teo Mrnjavac 876a3932fd Do not filter out KVM virtual disks in LibPartedBackend::scanDevices. 2017-02-17 11:55:15 +01:00
Andrius Štikonas 7c901593b2 Use slightly more descriptive variable names. 2017-02-05 15:50:56 +00:00
l10n daemon script 610710e7f4 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2017-02-05 06:03:02 +01:00
l10n daemon script 0f41f40b1f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2017-02-04 06:20:00 +01:00
Andrius Štikonas 16c12ddb9e Both swap and LVM PV should not use KDiskFreeSpaceInfo. 2017-01-26 18:07:28 +00:00
Andrius Štikonas b5b3af4b22 Use qCeil to set used sectors for luks file systems.
When using LUKS encrypted LVM logical volumes sector size is large and
we cannot assume that result of division is integer. Without this, number of
used extents can be underestimated by one.
2017-01-26 17:40:41 +00:00
Andrius Štikonas 901d01185f Do not set LUKS logical sector size to 512.
This breaks used space reporting for LUKS encrypted LVM LV.
2017-01-25 18:21:25 +01:00
Andrius Štikonas f8ba25fdfa Improve used space detection to use fs utils when not mounted. 2017-01-05 17:27:17 +00:00
Andrius Štikonas 0bb267830d Fix a bug (that could result in data loss) where left handle of partition resize widget was not actually disabled. 2016-12-31 12:34:38 +02:00
l10n daemon script 2fcc37dfb6 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-12-20 12:47:43 +01:00
Andrius Štikonas d899de94c3 Do not link to KAuth. 2016-12-18 19:44:57 +00:00
l10n daemon script c63567b524 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-12-15 06:24:36 +01:00
Teo Mrnjavac 30ac4bb6ab [Coverity] Initialize all members.
CID 147251
2016-12-13 16:46:36 +01:00
Teo Mrnjavac dcf972b779 [Coverity] Initialize all members.
CID 154913
2016-12-13 16:40:47 +01:00
Teo Mrnjavac a20d81c345 [Coverity] Initialize all members.
CID 154914
2016-12-13 16:36:36 +01:00
Andrius Štikonas cbe21e7ef9 Fix online resize of encrypted volumes. 2016-12-06 21:42:44 +00:00
Andrius Štikonas cc8a2558eb Fix one forgotten instance of fsck.msdos -> fsck.fat. 2016-12-06 01:45:22 +00:00
Teo Mrnjavac a749d1c84d Handle parent change in Partition copy constructor. 2016-12-01 19:00:39 +01:00
Andrius Štikonas 2e960d5c00 Make initLUKS function non-static. 2016-11-30 17:18:51 +00:00
Teo Mrnjavac 52b356e45f Make sure to always also read outerUuid. 2016-11-30 17:44:03 +01:00
Teo Mrnjavac 39ec355b70 Remove obsolete headers. 2016-11-30 16:42:03 +01:00
Teo Mrnjavac 5e40017238 Add FS::luks::outerUuid(). 2016-11-30 16:42:03 +01:00
Andrius Štikonas e42020dc9b Disable loop devices for now.
BUG: https://calamares.io/bugs/browse/CAL-416

After the release we can break API and add option to include/exclude them.
2016-11-25 15:31:09 +00:00
Andrius Štikonas e0afdeb6cb Move sorting comparison function to lambda. 2016-11-19 01:39:10 +00:00
Andrius Štikonas 6926046edb Sort LVM LV volumes alphabetically. 2016-11-19 01:36:15 +00:00
Friedrich W. H. Kossebau da0b939bf6 Use generic commits.kde.org for homepage instead of now outdated quickgit.kde.org 2016-11-16 18:36:51 +01:00
Teo Mrnjavac eb3b90ec9e Handle cryptsetup luksUUID failure. 2016-11-16 15:20:54 +01:00
Andrius Štikonas 3c58349561 Make sure KDiskFreeSpaceInfo is never used for swap. 2016-11-15 17:00:59 +00:00
Andrius Štikonas a78e6f986e Disable pasting into LVM VG. It does not yet work. 2016-11-10 14:52:02 +00:00
Andrius Štikonas 0c8035f667 Improve wording in comments a bit. 2016-11-10 14:37:48 +00:00
Andrius Štikonas f9d9d8912b Disable copying LVM LVs. It does not yet work. 2016-11-10 14:29:38 +00:00
Andrius Štikonas ee49c05d60 Remove ResizeVolumeGroup operation from operation stack if it has no jobs. 2016-11-07 18:56:26 +00:00
Andrius Štikonas ca0def38f7 Add a comment. 2016-11-07 17:49:30 +00:00
Andrius Štikonas 4ed3ce6267 Check if fileSystem pointer is nullptr before trying to read used space
Hopefully it fixes the following crashes as well:
BUG: 364863
BUG: 365872
2016-11-07 17:45:22 +00:00
Andrius Štikonas f948569fef Pass --force to vgremove in order to allow removing deactivated volume groups. 2016-11-05 21:48:30 +00:00
Andrius Štikonas d0ed72fd20 Fix a typo in LVM VG Operation description. 2016-11-05 20:34:52 +00:00
Andrius Štikonas e3214a1b48 Do not call KDiskFreeSpaceInfo::freeSpaceInfo without a non-empty mount point. 2016-11-05 20:29:31 +00:00
Andrius Štikonas eb0c32e9dc Improve checking whether LVM VG can be removed.
E.g. if we remove all LVM LVs without applying operations then LVM VG removal
should be possible.

This still does not take into account inactive LVM volumes.
2016-11-05 15:33:20 +00:00
Andrius Štikonas 5c2d485b32 Delete partition table in LVM VG remove operation. 2016-11-05 13:10:30 +00:00
Andrius Štikonas d6c375f959 Update copyrights. 2016-11-04 14:20:11 +00:00
Andrius Štikonas 6ebe0acf56 Spelling fix. 2016-11-04 00:49:42 +00:00
Andrius Štikonas 6717ea913d Fix resize volume group job description. 2016-11-03 22:15:43 +00:00
Andrius Štikonas 58cec6040f Fix create volume group job description. 2016-11-03 22:08:32 +00:00
Andrius Štikonas bb8514e859 Fix handling of encrypted LVM physical volumes. 2016-11-03 14:21:18 +00:00
Andrius Štikonas e47dd74635 Convert Partition*->QPointer<Partition> in LvmPV class. 2016-11-03 13:39:16 +00:00
Andrius Štikonas 5d2bb2f8af Store list of physical volumes in a global variable. 2016-11-03 13:26:14 +00:00
Andrius Štikonas 36202cc1ad Replace complicated QPair type with custom LvmPV class. 2016-11-02 23:06:55 +00:00
Andrius Štikonas 5182c037db Fix resizing of LVM VGs when LVM PV is encrypted. 2016-10-30 13:36:01 +00:00
Andrius Štikonas 724574e436 Fix creation of LVM VGs when LVM PV is encrypted. 2016-10-30 03:24:01 +00:00
Andrius Štikonas 0827eda687 Do not run the same check twice.
Spotted by Kevin_Kofler.
2016-10-30 02:54:10 +00:00
Andrius Štikonas e103c65b73 Always force LUKS password (in case crypsetup is compiled with libpwquality). 2016-10-30 02:41:24 +00:00
Andrius Štikonas 98d0ea309b Fix include header: QDebug->QTextStream. 2016-10-30 02:37:48 +00:00
Andrius Štikonas 3272cd3f5f Do not allow deactivating LUKS containers containing active LVM physical volumes. 2016-10-30 02:31:46 +00:00
Andrius Štikonas 2414b69be1 mkfs.fat exists with code 1 when it is run without any arguments. 2016-10-30 01:15:08 +00:00
Andrius Štikonas e765316f9e Mark LVM PV as mounted if it is part of Volume Group.
* Add support for online LVM PV resize and check actions.
* Fix support for online actions inside LUKS container.
2016-10-30 01:47:29 +01:00
Andrius Štikonas b539f835b1 Revert KAuth support. At the moment it causes more problems than helps. 2016-10-29 19:45:33 +01:00
Andrius Štikonas 898c9a7333 mkfs.msdos->mkfs.fat 2016-10-28 22:07:52 +01:00
l10n daemon script 1e1bee501f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-10-07 09:29:49 +00:00
Andrius Štikonas 559fad9803 Show mount point for swap as "none".
This also silences QFileInfo warning from KMountPoint.
2016-10-03 00:14:46 +01:00
Andrius Štikonas ee6e4469ca Remove unused function. 2016-09-24 23:05:15 +01:00
Andrius Štikonas 28fa6ac5a4 Add support for GTP partition labels. 2016-09-24 22:15:15 +01:00
Andrius Štikonas 9c7db501bf Use cached values for resizing volume groups. 2016-09-24 21:09:11 +01:00
Andrius Štikonas aa5daf0378 Use symlinks to hfsplus (diskdev_cmds) commands.
Some distributions rename those commands to mkfs.hfsplus and fsck.hfsplus.

BUG: 369288
2016-09-24 17:10:16 +01:00
Andrius Štikonas 07ed3d97cf Add a template to easily access inner filesystem inside LUKS. 2016-09-22 13:15:20 +01:00
Andrius Štikonas 23bf7585ed Small typo in a comment. 2016-09-20 22:56:48 +01:00
Andrius Štikonas 5e4b16b7fe Add a context to UI string. 2016-09-18 11:55:35 +01:00
Andrius Štikonas fce53d2392 Use more cached values in ResizeVolumeGroupOperation. 2016-09-18 02:47:24 +01:00
Andrius Štikonas ef7680030c Remove some no longer necessary functions. 2016-09-18 02:40:30 +01:00
Andrius Štikonas 28478ee0ad More conversion from QStringList to QList<const Partition*>. 2016-09-18 01:53:42 +01:00
Andrius Štikonas c41b008dc1 Remove obsolete note. 2016-09-17 01:23:04 +01:00
Andrius Štikonas 5592c05ef3 Mark luks sector size to be constexpr. 2016-09-12 19:43:58 +01:00
Chantara Tith 874900fe72 Move initLUKS from helpers to FS::luks. 2016-09-12 23:49:20 +07:00
Chantara Tith c70945b116 Change LUKS default logicalSectorSize to 512 2016-09-12 23:44:17 +07:00
Chantara Tith bcd6156628 Reduce code duplication in handling mountPoint/mount/diskSpace. 2016-09-12 17:23:19 +07:00
Andrius Štikonas 123369f78b Store the list of LVM Physical Volumes in operationStack.
This is necessary in order to make LVM LV formatted as LVM PV work.
2016-09-10 22:10:25 +01:00
l10n daemon script 1995a8de84 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-09-10 10:01:41 +00:00
Teo Mrnjavac 05e6ea82a3 Make copy constructor public. 2016-09-08 18:13:05 +02:00
Andrius Štikonas 70a9a0dd9a More optimizations for LVM. 2016-09-08 01:42:04 +01:00
Teo Mrnjavac 882886c1d4 Copy constructor for PartitionTable. 2016-09-07 17:36:53 +02:00
Teo Mrnjavac 25b8cc0a42 core/smartattribute.h must be included in smartstatus.h for deep copy. 2016-09-07 17:36:20 +02:00
Teo Mrnjavac ea9e079ee8 Add copy constructor to Device. 2016-09-07 17:35:35 +02:00
Andrius Štikonas 7c0a32758e Do not check for cryptsetup executable so often. 2016-09-07 15:14:25 +01:00
Andrius Štikonas 8f77c6d679 Construct list of LVM PVs from our own device list instead of using pvs. 2016-09-07 14:36:25 +01:00
Andrius Štikonas d197b9b06e Optimize LUKS scanning. 2016-09-06 18:21:17 +01:00
Andrius Štikonas b95fe45d66 Fix a bug when creating a luks encrypted partition. 2016-09-06 00:25:59 +01:00
Andrius Štikonas 4b9f34b109 Do not allow mounting/umounting LVM PVs. 2016-09-06 00:14:44 +01:00
Andrius Štikonas c480d80273 Make LvmDevice::LVPathList public. 2016-09-05 17:28:54 +01:00
Andrius Štikonas 5e5178b3af Initial work on storing LVM variables during initial scan. 2016-09-05 14:48:36 +01:00
Andrius Štikonas ec05aa36da Remove accidentally comitted debug code. 2016-09-05 12:56:12 +01:00
Andrius Štikonas d83ec394b1 Make Filesystem::create non-const. 2016-09-05 12:10:56 +01:00
Andrius Štikonas b3e82d7c75 Cache LUKS specific variables during initial scan. 2016-09-04 23:32:00 +01:00
Andrius Štikonas b5b5ac9cb4 getPESize does not have to be static. 2016-09-04 11:55:49 +01:00
Andrius Štikonas 68539ad97a Remove some comments about data loss.
lvresize --force should not cause data loss when reducing because we reduce file system first.
vgextend --yes is about overwriting number of metadata copies, so it shouldn't cause data loss either.
2016-09-01 22:22:46 +01:00
Andrius Štikonas cd4a6314e7 Simplify QStringList->QString conversion. 2016-09-01 22:05:35 +01:00
Andrius Štikonas 4889a0ef34 Remove some TODO comments. 2016-08-31 20:37:32 +01:00
Andrius Štikonas 56533022cb Simplify if-return code a bit. 2016-08-31 20:14:21 +01:00
Andrius Štikonas a1ebb5205b Round used sectors up in lvm device scanner. 2016-08-29 13:03:26 +01:00
Andrius Štikonas 5ab60c6dfa Enable used space reporting for swap.
BUG: 367473
2016-08-29 12:12:57 +01:00
Andrius Štikonas 742905ef7f Support setting labels online. 2016-08-26 21:16:14 +01:00
Andrius Štikonas c84ff5b957 Use swaplabel for swap labels. 2016-08-26 18:31:14 +01:00
Andrius Štikonas a598ad9fd1 Fix shown license. 2016-08-26 18:18:01 +01:00
Andrius Štikonas 6ec0215205 Improve LVM job wording. 2016-08-26 13:29:24 +01:00
Andrius Štikonas c2cf7c4845 Add more KUIT string contexts. 2016-08-25 00:22:15 +01:00
Andrius Štikonas 3b9cc6b0a4 Add aboutData for KPMcore. 2016-08-25 00:14:51 +01:00
Andrius Štikonas ef2c85e60f Silence clang warning + some other small changes.
Fix a typo in a comment
2016-08-24 23:01:36 +01:00
Andrius Štikonas 84488896ab Silence kcoreaddons cmake warnings. 2016-08-22 20:51:33 +02:00
Anthony Fieroni ac16bd6185 [smart] SSD attribute names
REVIEW: 128710

Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2016-08-21 07:44:31 +03:00
Andrius Štikonas 90e40af590 @dev -> @param. 2016-08-15 17:20:50 +01:00
Chantara Tith 28dd42839d More documentations. 2016-08-15 17:20:50 +01:00
Chantara Tith a8139278db Add deactivatable check to deactivate VG operation. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 3eda1d79c6 Make sure to activate all LVM LVs on start. 2016-08-15 17:20:50 +01:00
Chantara Tith eb3910679c Add all LVM devices to the bottom of the devices list. 2016-08-15 17:20:50 +01:00
Chantara Tith fabde86139 Remove device's partitionTable when deactivated. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 8a3c11774c Make variable names slightly more consistent thruoght kmpcore.
Add more doxygen comments.
2016-08-15 17:20:50 +01:00
Andrius Štikonas 69647e816e Simplify QStringList->QString conversion. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 47837843c5 Simplify construction of PV list. 2016-08-15 17:20:50 +01:00
Chantara Tith 426a9385cd Remove unused includes. 2016-08-15 17:20:50 +01:00
Chantara Tith 69536b1129 Remove unused parameters from LvmDevice. 2016-08-15 17:20:50 +01:00
Chantara Tith 6fd0c7a0db API changes, Refactor and Raname to a consistant interface. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 4de925735e Convert some for loops into for ranged based loops. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 40ff0861a8 Convert most of the remaining foreach cases. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 9c524c40fe Fix a compilation error in KPM. 2016-08-15 17:20:50 +01:00
Andrius Štikonas ca2e46a6e0 More work on C++11 for loops. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 16a2d063e3 More work on C++11 for loops. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 799d213530 Make getFreePV const. 2016-08-15 17:20:50 +01:00
Andrius Štikonas a10c8d3aaa Convert to C++11 for loop where it is safe (avoid detaching Qt objects). 2016-08-15 17:20:50 +01:00
Andrius Štikonas 9ed640084d Fix broken include guard. 2016-08-15 17:20:50 +01:00
Andrius Štikonas cadb80e264 Show the describtion of resize LVM VG as one line. 2016-08-15 17:20:50 +01:00
Andrius Štikonas da081d2f29 Add --force to lvm pvcreate in case there are some old file system signatures. 2016-08-15 17:20:50 +01:00
Chantara Tith 25bbce4975 A small dirty hack to keep track of all the PVs that to be added to any VG. 2016-08-15 17:20:50 +01:00
Chantara Tith 6915187fb2 Add activating LVM LV and VG. 2016-08-15 17:20:50 +01:00
Chantara Tith 3b26d39d3c Add deactivating VG operation. 2016-08-15 17:20:50 +01:00
Chantara Tith d033dc9827 Add deactivating VG and LV jobs. 2016-08-15 17:20:50 +01:00
Chantara Tith ca2bbb27d7 Add deactivating LVM LV and VG. 2016-08-15 17:20:50 +01:00
Chantara Tith 5befd7484e Decouple VG scan and system scan. 2016-08-15 17:20:50 +01:00
Chantara Tith 77ff25e160 Move LVM deviceNodeList and LvPathList to public. 2016-08-15 17:20:50 +01:00
Chantara Tith 4b7289fa0d Add UUID for LV filesystem. 2016-08-15 17:20:50 +01:00
Chantara Tith 67ca8f7d63 Store device pointer for RemoveVolumeGroupOperation for preview uses. 2016-08-15 17:20:50 +01:00
Chantara Tith f115383d8c Resizing Volume Group preview. 2016-08-15 17:20:50 +01:00
Chantara Tith 467759d0a9 Set partitionTable Last/First sector setter as public. 2016-08-15 17:20:50 +01:00
Chantara Tith 53b154fe16 Add internal storage to LVM Device to keep track of its LVs and PVs. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 81a35f0ffd Improve resizing of LVM PVs. 2016-08-15 17:20:50 +01:00
Chantara Tith 8c58ffe60f Fix ResizeVolumeGroupJob Type. This fixes the build warnings. 2016-08-15 17:20:50 +01:00
Chantara Tith 5447768a76 LUKS static cast here should be sufficient. 2016-08-15 17:20:50 +01:00
Chantara Tith 61d5e874d8 FIX LVM2 PV resize FIXME. 2016-08-15 17:20:50 +01:00
Chantara Tith 0d09853bd4 Remove hardcoded 4096 payloadOffset. 2016-08-15 17:20:50 +01:00
Chantara Tith bc0cd8c411 Enable smartStatus for Disk Device only. 2016-08-15 17:20:50 +01:00
Chantara Tith 20c79023c8 Micro optimization. calling one external function instead of two. 2016-08-15 17:20:50 +01:00
Chantara Tith c3c718615d Add LVM snapshotting functionality. 2016-08-15 17:20:50 +01:00
Chantara Tith 484c1765ed Reduce the calls of external functions to speed up scanning time. 2016-08-15 17:20:50 +01:00
Chantara Tith 87e9bf9cb5 House-cleaning, removing finished TODO and FIXME tasks. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 510feefc55 Various small cleanups. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 8a3ba0a4a6 Remove unused header. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 2a62bc4b14 Fix crashes in LVM scanner when external device is unplugged without deactivating LVM partitions.
This commit removes stderror channel from output of external commands.
2016-08-15 17:20:50 +01:00
Andrius Štikonas 432e59ac67 Add support for lvm pvmove before doing pvresize. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 54a78b150d Do not limit number of partitions in Volume Manager Devices. 2016-08-15 17:20:50 +01:00
Andrius Štikonas fd8c81921e Get rid of unused LVM flag for LVM LV. 2016-08-15 17:20:50 +01:00
Chantara Tith 1c7dd64e68 Move LVM scanning logic from DeviceScanner to LvmDevice. 2016-08-15 17:20:50 +01:00
Chantara Tith 12a74b4a2b Use VG as PV mount point. 2016-08-15 17:20:50 +01:00
Chantara Tith 97c20ef236 Fix Luks over LVM resizing. Hardcode 512 as the sector instead of LVM PE size. 2016-08-15 17:20:50 +01:00
Chantara Tith cbb077ffbd House-cleaning and removing irrelevant TODO. 2016-08-15 17:20:50 +01:00
Chantara Tith 4d78cad920 Deactivate VG before removing it. 2016-08-15 17:20:50 +01:00
Chantara Tith 0952ffb11f Hardcode LUKS payload offset return value in byte size instead of sector number. 2016-08-15 17:20:50 +01:00
Chantara Tith 27290f04f3 Handle LUKS inside LVM. still need to fix incorrect sectorUsed. 2016-08-15 17:20:50 +01:00
Chantara Tith 0feb7a7330 Display preview for LV operation. 2016-08-15 17:20:50 +01:00
Chantara Tith 52ee15f3c0 Rephrashing comment. 2016-08-15 17:20:50 +01:00
Andrius Štikonas da0dabc50d Fix displaying resize widget with small number of sectors. 2016-08-15 17:20:50 +01:00
Chantara Tith 254ac012af Add functionality to specify PE size when creating VG group. 2016-08-15 17:20:50 +01:00
Chantara Tith bef1085ce7 Fix LVM volume showing incorrect preview when creating new LV. 2016-08-15 17:20:50 +01:00
Chantara Tith 85c7106ab9 Move LvmDevice member variables from 32 bits to 64 bits. 2016-08-15 17:20:50 +01:00
Chantara Tith 042878b66f Add optional destination partitions to LVM movePV. This also helps preventing moving data back and forth when resizing. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 5edebbc32b Fix integer overflow. 2016-08-15 17:20:50 +01:00
Chantara Tith 3d0df854b5 Handle case when the to-be-moved PV is not used. 2016-08-15 17:20:50 +01:00
Chantara Tith 7e9889bce6 Initial work on Resize operation and move/resize jobs. 2016-08-15 17:20:50 +01:00
Chantara Tith b211dc03e3 Remove canRemove. 2016-08-15 17:20:50 +01:00
Chantara Tith 17d3d9305a Refactor functions for getting list of PV and LV. 2016-08-15 17:20:50 +01:00
Chantara Tith 38b324036e Overload getPVSize for QStringList. 2016-08-15 17:20:50 +01:00
Chantara Tith c26e094ca1 Move lvm2_pv functions to static. 2016-08-15 17:20:50 +01:00
Chantara Tith e8bff59040 It makes more sense to have logic for getting list of used PVs in the LvmDevice. 2016-08-15 17:20:50 +01:00
Chantara Tith c5472f2162 Handle LvmDevice's getField case when VG name is not supplied. 2016-08-15 17:20:50 +01:00
Chantara Tith 0cfc323f84 Add LVM PV move. 2016-08-15 17:20:50 +01:00
Chantara Tith c74a61e513 Initial work on removeVolume Operation and Job. 2016-08-15 17:20:50 +01:00
Chantara Tith ef7b4003b7 Move LVM removeVG parameter to LvmDevice instead of QString of VG name. 2016-08-15 17:20:50 +01:00
Chantara Tith 0476f9df83 Move createvolumegroup operation and job parameter to QStringList 2016-08-15 17:20:50 +01:00
Chantara Tith ad23d6cbce Fix createVG PV list white space problem. 2016-08-15 17:20:50 +01:00
Chantara Tith 036ed02b29 Add used and free PV scan for lvm2_pv. 2016-08-15 17:20:50 +01:00
Chantara Tith 167432844e Add removeVG lvmdevice. And, Change createVG to accpeting QStringList instead. 2016-08-15 17:20:50 +01:00
Chantara Tith e5fa4cc465 Initial work on create volume operation and job. 2016-08-15 17:20:50 +01:00
Chantara Tith 32b978074f Add LvmDevice createVG. 2016-08-15 17:20:50 +01:00
Chantara Tith 3c229f8a5a Add freeSetors for partitionTable 2016-08-15 17:20:50 +01:00
Chantara Tith e9ff3c874a Remove else clause 2016-08-15 17:20:50 +01:00
Chantara Tith 818ab34ce9 Move LVM totalPE to 64 bits 2016-08-15 17:20:50 +01:00
Chantara Tith e50f7e65bf Disable createPartitionTable action for LVM device. 2016-08-15 17:20:50 +01:00
Chantara Tith fd3580e62f LVM LV resize Operation 2016-08-15 17:20:50 +01:00
Chantara Tith ff2bf7b022 Fix LV used space. 2016-08-15 17:20:50 +01:00
Chantara Tith 49e2462919 Use partionPath for new LV partition 2016-08-15 17:20:50 +01:00
Chantara Tith 41d6a21bf2 Better LVM operations report 2016-08-15 17:20:50 +01:00
Chantara Tith ab6df5ff86 Move from creating unallocated LVM partitio manually to PartitionTable 2016-08-15 17:20:50 +01:00
Chantara Tith a91d65aa47 Move lvm2_pv from regex to field options. Add read used space to lvm pv 2016-08-15 17:20:50 +01:00
Chantara Tith 3b7eda5933 Add LVM operations 2016-08-15 17:20:50 +01:00
Chantara Tith 933ecc9cce Add Label for LVM partition's filesystem 2016-08-15 17:20:50 +01:00
Chantara Tith a07e57cbb5 Add LVM delete partition job 2016-08-15 17:20:50 +01:00
Chantara Tith fedfc0d440 Fix PartitionTable sector representation and used space for LVM partition 2016-08-15 17:20:50 +01:00
Chantara Tith 713c26ded0 Use KMountPoint for LvmDevice's Partition 2016-08-15 17:20:50 +01:00
Chantara Tith 0e54626355 Move scanPartitions to LVM Field 2016-08-15 17:20:50 +01:00
Chantara Tith aeaecad6fb Move from regex to LVM Field options 2016-08-15 17:20:50 +01:00
Chantara Tith 3170e0a6a9 Refactor and add UUID to LvmDevice 2016-08-15 17:20:50 +01:00
Chantara Tith bd892fd2d6 Construct PartitionTable and Partition in LvmDevice 2016-08-15 17:20:50 +01:00
Chantara Tith 103b5343d6 Initial work on LvmDevice 2016-08-15 17:20:50 +01:00
Chantara Tith fcc8a7c992 Initial Device separation 2016-08-15 17:20:50 +01:00
Chantara Tith f53cc1b55c Cache lvm2_pv and luks result in finding external tool 2016-08-15 17:20:50 +01:00
Chantara Tith 6360260fae Add support for reading LVM PV info 2016-08-15 17:20:50 +01:00
Chantara Tith 0af98556ac Implement lvm PV resizing 2016-08-15 17:20:50 +01:00
Chantara Tith 0a6de0c2f0 Set VG name as PV mount point 2016-08-15 17:20:50 +01:00
Andrius Štikonas c96682d022 Do not exclude read only devices by default. 2016-08-12 16:47:52 +01:00
Andrius Štikonas b0dccc1c36 Also enable LUKS for F2FS and nilfs2 filesystems. 2016-08-08 02:03:45 +01:00
Andrius Štikonas 4d25524e91 Add support for resizing online. 2016-08-08 02:01:35 +01:00
l10n daemon script 4bb370bffc SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-08-06 09:57:16 +00:00
Andrius Štikonas 0f33fe07c9 Fix coverity issues and some other minor simplifications. 2016-08-05 13:55:56 +01:00
Andrius Štikonas ea99bcc76f Correctly report used space of FAT partitions whose dirty bit is set.
BUG: 366313
2016-08-02 21:41:09 +01:00
l10n daemon script 465aec251d SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-08-01 09:52:41 +00:00
l10n daemon script 63881893e1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-07-31 09:28:45 +00:00
Andrius Štikonas 0e9298baf8 Revert "Add KAuth helper to detectFileSystem."
This reverts commit 71921cf500.
2016-07-29 18:15:28 +01:00
Andrius Štikonas 918cf2ffa4 Use more compact syntax for passing and returning kauth helper arguments. 2016-07-29 14:19:12 +01:00
l10n daemon script c30a83a5b9 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-07-29 09:28:55 +00:00
Andrius Štikonas a8b35c56a3 Fix btrfs support. 2016-07-27 20:55:35 +01:00
l10n daemon script e18dc61196 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-07-27 09:27:38 +00:00
l10n daemon script 0b39056431 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-07-26 10:44:10 +00:00
Andrius Štikonas 71921cf500 Add KAuth helper to detectFileSystem. 2016-07-25 16:33:49 +01:00
l10n daemon script cb7a3d26c5 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-07-25 09:52:46 +00:00
Andrius Štikonas c4b28aa91f Revert "Use udevadm for detecting file system type."
udevadm seems to suffer from race conditions and sometimes returns exit code 4.

This reverts commit 5ea32b446c.
2016-07-24 21:36:56 +01:00
Andrius Štikonas 5ea32b446c Use udevadm for detecting file system type. 2016-07-24 15:18:27 +01:00
Andrius Štikonas 78df451ea0 Add forgotten file. 2016-07-24 10:08:05 +01:00
Andrius Štikonas 2e9166d2d4 Improve comment of major device numbers.
Exclude read-only block devices.
2016-07-23 22:01:38 +01:00
Andrius Štikonas c8e9c72d88 Look for more type of block devices. 2016-07-22 15:53:15 +01:00
Andrius Štikonas b5d1529370 excludeReadOnly->excludeLoop. 2016-07-22 13:18:34 +01:00
Andrius Štikonas 4a0b8f8efb Use lsblk to detect devices. 2016-07-22 12:56:59 +01:00
Andrius Štikonas e64a82ff19 Use KAuth to get privileges needed for detecting partitions. 2016-07-22 12:00:01 +01:00
Andrius Štikonas 99886f32fc Add more warning tags. 2016-07-18 12:50:52 +01:00
Andrius Štikonas 39e419a36e Use <warning> KUIT tags. 2016-07-18 12:21:06 +01:00
Andrius Štikonas 3a2b78e143 Improve semantic markup of translations. 2016-07-17 23:41:00 +01:00
Andrius Štikonas 9d040e6081 Use reverse iterator. 2016-07-08 00:57:16 +01:00
Andrius Štikonas 4ba9971de9 Do not use obsolete type. 2016-07-06 20:44:32 +01:00
Andrius Štikonas e437da6091 Also check whether HFS+ shrink support is available. 2016-06-12 16:15:18 +01:00
Andrius Štikonas 2514f7d8f4 Use diskdev_cmds instead of obsolete hfsplusutils for HFS+ file systems. 2016-06-12 13:33:04 +01:00
Andrius Štikonas b6911285dc Adjust maximum capacity for fat32, jfs and reiserfs. 2016-06-09 22:07:23 +01:00
Andrius Štikonas 35c7f9749e Also reduce max capacity for ext2 and ext3 file systems. 2016-06-09 19:46:21 +01:00
Andrius Štikonas 3756ec45da Reduce maximum capacity of FAT16 file systems by 1 MiB. 2016-06-09 19:22:56 +01:00
Andrius Štikonas 5e982b5b1e Fix memory leaks. 2016-06-02 13:46:16 +01:00
Andrius Štikonas 09711cdf1d Whitespace fixes. 2016-06-01 21:00:31 +01:00
Andrius Štikonas 8ae2ea3006 Make sure file system is not mounted before deleting it.
Sometimes user might try to mount manually and then delete partition
without refreshing state in KPM.
2016-05-26 18:47:34 +01:00
Andrius Štikonas 0c70c66aae Disable MountPointDialog for swap, lvm pv and unknown partitions. 2016-05-24 17:26:12 +01:00
Andrius Štikonas 3d57b3211a Convert remaining signals to the new syntax. 2016-05-24 01:37:15 +01:00
Andrius Štikonas 9de7341985 Use lsblk --list instead of lsblk --raw. Makes unicode mapper names work. 2016-05-23 12:00:33 +01:00
Andrius Štikonas 6e4c330410 Do not run moc on classes where it is not necessary. 2016-05-22 23:53:17 +01:00
Andrius Štikonas b4a13599aa Libpartedbackend can also use KDiskFreeSpaceInfo for mounted luks partitions. 2016-05-22 00:52:07 +01:00
Andrius Štikonas 35a4798672 Add some support to get used space info for mounted LUKS partitions using KDiskFreeSpaceInfo. 2016-05-22 00:48:55 +01:00
Andrius Štikonas f820c8d764 Adjust minimal filesystem size for luks partitions. 2016-05-20 20:13:11 +01:00
Andrius Štikonas 7e8ee77edf Make luks helper functions non-static. 2016-05-20 19:38:12 +01:00
Andrius Štikonas 12bc2329a2 Used space is larger for luks volumes due to payload. 2016-05-20 19:17:52 +01:00
Andrius Štikonas 4278172f35 Iterate over operation stack backwards.
BUG: 363216
2016-05-19 16:40:20 +01:00
Andrius Štikonas 96eaf6abae Fix overwriting partitions.
BUG: 362956
2016-05-19 12:11:58 +01:00
Andrius Štikonas da550fb534 Fix null pointer dereference. 2016-05-19 01:53:30 +01:00
Andrius Štikonas 349b59574f Q_OBJECT macro is not necessary for ExternalCommand. 2016-05-18 22:32:33 +01:00
Andrius Štikonas 45654e5e83 Convert to new syntax and slots syntax. 2016-05-18 19:54:36 +01:00
Andrius Štikonas 8d178a2a86 Update doxygen variable. 2016-05-18 19:35:37 +01:00
Andrius Štikonas fdfc47cf8f Leave LUKS cmdSupport variables static for now. 2016-05-18 17:39:28 +01:00
Andrius Štikonas 6f8a2c7016 Also disable decryption of luks partition if it is copied in the operation stack. 2016-05-18 15:45:00 +01:00
Andrius Štikonas 063c50aec6 Add a method to check whether partition is part of operationStack. 2016-05-18 14:56:13 +01:00
Andrius Štikonas ffa24e4451 Revert "Disable OperationStack merging of operations for luks partitions."
This is no longer necessary now that copying/resizing of new luks partitions is
forbidden.
This reverts commit aec564f1a2.
2016-05-18 13:58:08 +01:00
Andrius Štikonas 9c2f187ed9 Disable copying newly created Luks partitions. 2016-05-18 13:51:38 +01:00
Andrius Štikonas b896a2abf3 Do not allow to resize/mode newly created luks partitions. 2016-05-18 13:46:59 +01:00
Andrius Štikonas aec564f1a2 Disable OperationStack merging of operations for luks partitions. 2016-05-18 13:13:51 +01:00
Andrius Štikonas 541e89a476 Fix moving unmovable partitions bug in partition resize widget. 2016-05-18 12:30:44 +01:00
Andrius Štikonas 7914e0aa98 Improve luks::supportCopy and luks::supportSetLabel. 2016-05-18 02:04:33 +01:00
Andrius Štikonas ecbbdb3b1d Do not allow moving open luks volumes. 2016-05-18 00:46:08 +01:00
Andrius Štikonas 47cb6752ba Use batch mode of cryptsetup to format luks volume. 2016-05-18 00:44:15 +01:00
Andrius Štikonas e5d72b7d11 Set miinimal capacity for btrfs filesystems back to 256 MiB.
mkfs.btrfs can make smaller filesystems but other tools, e.g.
btrfs filesystem resize do not work well on small partitions.
2016-05-17 22:02:21 +01:00
Andrius Štikonas a610e24686 Move luks init code to constructor. 2016-05-17 19:05:17 +01:00
Andrius Štikonas 142ff07938 Remove reduntant virtual keywords. 2016-05-17 18:01:31 +01:00
Andrius Štikonas 094042cc75 Fix luks operations. 2016-05-17 17:38:17 +01:00
Andrius Štikonas 5d28790152 Simplify Luks support tool (and do not init Luks filesystem). 2016-05-17 17:35:49 +01:00
Andrius Štikonas 927a6421fe Make FileSystem::init virtual instead of static. 2016-05-17 16:33:52 +01:00
Andrius Štikonas e64e536797 Revert "Remove Luks from FileSystemFactory."
This reverts commit 98d515e826.
2016-05-17 15:30:40 +01:00
Andrius Štikonas 98d515e826 Remove Luks from FileSystemFactory. 2016-05-17 15:04:50 +01:00
Teo Mrnjavac 677bae18e5 Unbreak build fix. 2016-05-16 15:57:27 +02:00
Teo Mrnjavac 9d6438f0af Fix build on clang. 2016-05-16 15:54:29 +02:00
Andrius Štikonas 6d82fc0964 Document new function variables. 2016-05-13 23:18:24 +01:00
Andrius Štikonas c6c31dc5c0 Use long options for mount. 2016-05-13 23:13:22 +01:00
Andrius Štikonas 1dfe304fd2 Restore back functionality of unmounting all mount points. 2016-05-13 23:08:58 +01:00
Chantara Tith b653b5b6e3 move mount logic from Partition to FileSystem 2016-05-13 23:00:27 +01:00
Chantara Tith 2a12571d44 move unmount logic from Partition to FileSystem 2016-05-13 23:00:27 +01:00
Andrius Štikonas 3bfb0b4b5b Restore optimized luks::mapperName function.
It seems that crashes are not our fault but rather of frameworkintegration.
2016-05-13 00:58:00 +01:00
Andrius Štikonas 9b5c33696c Show error message if shrinking innerFS inside luks fails. 2016-05-12 16:48:32 +01:00
Andrius Štikonas 7e8cfaf25c Convert QRegExp->QRegularExpression in Partition class. 2016-05-12 16:46:25 +01:00
Andrius Štikonas 1ea4f4976d Revert "Revert "Port away from QRegExp to QRegularExpression.""
This reverts commit c291af2c83.
2016-05-12 16:45:13 +01:00
Andrius Štikonas 82243234e3 We no longer need to fill partition sizes. KPMCore now tracks max fs size (including inside luks). 2016-05-11 23:00:37 +01:00
Andrius Štikonas c291af2c83 Revert "Port away from QRegExp to QRegularExpression."
This reverts commit bb2de6cd56.

This was causing a crash when restoring partitions.
2016-05-11 22:31:33 +01:00
Andrius Štikonas 4fc3f321dd Revert "Better to use deleteLater with QObjects."
This reverts commit 3ec80be2a1.

This was causing a crash when changing filesystem (reformatting).
2016-05-11 22:17:38 +01:00
Andrius Štikonas 24ae2bf079 Do not allow restoring to the partition containing open luks volume. 2016-05-11 19:36:06 +01:00
Andrius Štikonas 513bbdac4c Convert FS::luks static cmdSupport members to non-static. 2016-05-11 18:01:21 +01:00
Andrius Štikonas 7c137c36c6 Disable copying open luks volumes. 2016-05-11 15:19:51 +01:00
Andrius Štikonas 4aeea8b143 Remove accidentally committed debug code. 2016-05-11 14:58:06 +01:00
Andrius Štikonas a7c9acd518 Move luks label handlingfrom libpartedbackend to FS::luks. 2016-05-11 11:53:15 +01:00
Andrius Štikonas 19f5ce0b28 Remove curly braces when generating a new LUKS UUID. 2016-05-11 02:16:24 +01:00
Burkhard Lück ea69f4b8af load translation catalog for thje library 2016-05-10 15:20:11 +02:00
Andrius Štikonas 0031f84315 Do not allow setting LUKS labels when crypt is closed. 2016-05-10 02:20:37 +01:00
Andrius Štikonas 64b0cf4c77 Unbreak non ASCII passphrases. 2016-05-09 11:07:31 +01:00
Andrius Štikonas 785aa7edf4 Avoid piping LUKS passphrase.
Also remove piping support from ExternalCommand.
It's unlikely that it will be useful enough. There were no more users of this
after luks open was migrated to QProcess::write.
2016-05-09 00:42:01 +01:00
Andrius Štikonas bb2de6cd56 Port away from QRegExp to QRegularExpression. 2016-05-08 00:22:22 +01:00
Andrius Štikonas 29c6578351 Fix nilfs reporting missing tools. 2016-05-08 00:21:22 +01:00
Andrius Štikonas 5c32921fcd Make log message more user friendly. 2016-05-07 01:11:59 +01:00
Andrius Štikonas 7e7d9e2a9a Use long style command line parameters. 2016-05-06 22:47:56 +01:00
Andrius Štikonas d7f941af58 Silence a warning. 2016-05-06 22:42:01 +01:00
Andrius Štikonas 464b3060fb Remove remaining ../ from #includes. 2016-05-06 22:36:24 +01:00
Andrius Štikonas dc421db5c3 Move FS detection code back to backends. 2016-05-06 19:14:01 +01:00
Andrius Štikonas 0ec83e4e32 Merge branch 'luks-decorator' 2016-05-06 18:16:36 +01:00
Teo Mrnjavac d584c70696 Passphrase accessor. 2016-05-06 16:50:23 +02:00
Andrius Štikonas 3ede101167 Fix a typo: mount->umount. 2016-05-06 14:34:40 +01:00
Teo Mrnjavac 6013b5887c Always use outer UUID for mapper name. 2016-05-05 14:15:57 +02:00
Andrius Štikonas 0bd44b94dc Use trimmed() instead of simplified(). 2016-05-05 12:46:27 +01:00
Andrius Štikonas 57e0b03438 Remove unused parameter. 2016-05-04 23:02:20 +01:00
Andrius Štikonas 440aa74dcf List .cpp files for cmake instead of globbing them. 2016-05-04 22:14:38 +01:00
Andrius Štikonas 27af037bb4 Use lsblk to determine mounted status. 2016-05-04 21:51:04 +01:00
Teo Mrnjavac 1cb464c6b0 Use the detected FS type directly. 2016-05-04 18:27:59 +02:00
Andrius Štikonas d7413b7708 Remove workaround for ancient parted 2.1. 2016-05-01 14:32:00 +01:00
Andrius Štikonas a1026d20be Use KPasswordDialog to open LUKS containers. 2016-05-01 14:17:06 +01:00
Andrius Štikonas f1210d0aa7 Pass LUKS payload length to cryptsetup --size.
Before we were passing the length of the whole LUKS partition. After shrinking
LUKS partitions blkid would not recognize them.
2016-04-30 13:48:09 +01:00
Andrius Štikonas a115961f04 Calculate the size of innerFS when growing LUKS volumes. 2016-04-29 20:25:14 +01:00
Andrius Štikonas 314742f40a Use long options for cryptstup. 2016-04-29 19:49:06 +01:00
Andrius Štikonas 4ff7ada40b Fix size vs sector number when resizing LUKS. 2016-04-29 18:12:34 +01:00
Andrius Štikonas 7cd1fd6eb7 Initial LUKS shrink support. 2016-04-29 17:56:39 +01:00
Andrius Štikonas 91c36c3d20 Adjust minCapacity for btrfs and luks. After all, it seems 40 MiB doesn't work. 2016-04-29 17:09:41 +01:00
Andrius Štikonas 47a1594705 Slightly improve setting used sectors. 2016-04-29 15:33:26 +01:00
Andrius Štikonas e2f21360bb Add support for reading used capacity of innerFS.
Also make sure labels, used capacity and UUID are properly updated when
opening or closing luks volumes."
2016-04-29 14:27:01 +01:00
Andrius Štikonas 85aca763a2 Pass a pointer to the parent widget to decrypt dialog. 2016-04-29 12:36:24 +01:00
Andrius Štikonas 4df97ec3e7 Fix detection of closed luks volumes (broken by new mapperName function). 2016-04-28 23:25:01 +01:00
Andrius Štikonas aa02ae7b1c When cryptsetup is missing complain about it, not support tools of innerFS. 2016-04-28 22:47:58 +01:00
Andrius Štikonas 6b772f3332 Optimize luks::mapperName function.
Now it uses lsblk to find out mapper node.
It also makes opened luks volumes to be properly detected when no cryptsetup
is found, e.g. crypt is opened in initramfs.
2016-04-28 22:38:38 +01:00
Andrius Štikonas 25e28a0e16 Only enable deactivation of LUKS volume if cryptsetup is found. 2016-04-28 21:56:03 +01:00
Andrius Štikonas ea4b945ebb Add override keyword to virtual functions. 2016-04-27 21:54:02 +01:00
Andrius Štikonas f7e62d93f9 Merge branch 'master' into luks-decorator 2016-04-27 16:34:02 +01:00
Andrius Štikonas e5641bf7f5 Minimal capacity of F2FS filesystems is 30MiB. 2016-04-27 16:09:14 +01:00
Teo Mrnjavac 83787cbdfc Make the parent in Partition a QPointer.
This also reverts commit dc9e9651ac.
2016-04-27 16:58:17 +02:00
Teo Mrnjavac dc9e9651ac Use a QPointer for Partition in DeleteOperation to avoid double-delete. 2016-04-27 16:41:34 +02:00
Teo Mrnjavac 3ec80be2a1 Better to use deleteLater with QObjects. 2016-04-27 15:36:07 +02:00
Andrius Štikonas e96c13b2bb Disable opening crypt if cryptsetup is not found. 2016-04-27 14:29:48 +01:00
Andrius Štikonas 51ef8013b1 Fix luks supportToolFound logic. 2016-04-27 14:22:00 +01:00
Andrius Štikonas 6bcbe14169 Add support for detecting support tools of innerFS. 2016-04-27 13:52:23 +01:00
Andrius Štikonas e3bb8a335c Return error if creating innerFS fails. 2016-04-27 00:50:51 +01:00
Andrius Štikonas 9920828f81 Reduce minimal btrfs partition capacity. 2016-04-27 00:32:27 +01:00
Andrius Štikonas 9c31d45229 Slightly reorder functions in luks.cpp to match other filesystems. 2016-04-27 00:29:01 +01:00
Andrius Štikonas 26047b35ef Fix copy-paste typo. 2016-04-27 00:10:28 +01:00
Andrius Štikonas 16757048c5 Fix whitespace. 2016-04-26 14:46:02 +01:00
Andrius Štikonas f787af70fc btrfs-debug-tree is not used anymore. 2016-04-26 13:54:16 +01:00
Andrius Štikonas 1ee315303c Do not use QStringLiteral for empty strings. 2016-04-26 13:53:25 +01:00
Andrius Štikonas dff128264c Revert "Optimize QString->QStringLiteral."
This reverts commit df33b21b0d.
2016-04-26 13:50:44 +01:00
Andrius Štikonas df33b21b0d Optimize QString->QStringLiteral. 2016-04-26 13:46:02 +01:00
Andrius Štikonas d87ac7dc20 Add support for checking innerFS. 2016-04-26 13:26:40 +01:00
Teo Mrnjavac d5438ba007 Make LUKS grow/shrink support depend on open/closed state and inner FS. 2016-04-26 13:36:07 +02:00