Commit Graph

5820 Commits

Author SHA1 Message Date
Aurélien Gâteau
c109059eb7 Fix crash if widgets are deleted before new ones are set 2014-08-07 12:58:28 +02:00
Aurélien Gâteau
55f4231c92 EditExistingPartitionDialog: Visual resizing of partitions 2014-08-06 18:31:46 +02:00
Teo Mrnjavac
78a3f1ce57 Merge pull request #81 from calamares/config
Configuration refactor
2014-08-06 17:42:35 +02:00
Aurélien Gâteau
c3efa65668 Make sure all PM filesystem classes are initialized early enough
If FileSystemFactory::init() is not called early enough, we won't get
access to some information such as the number of used sectors.
2014-08-06 16:15:34 +02:00
Teo Mrnjavac
88d5a301c9 Update Calamares modules documentation. 2014-08-06 15:50:39 +02:00
Teo Mrnjavac
83ad1fae0e Debug output in keyboard viewmodule. 2014-08-06 15:37:21 +02:00
Aurélien Gâteau
b5c3928609 unsquashfs: Do not ignore rsync failures 2014-08-06 15:11:10 +02:00
Aurélien Gâteau
b246a95606 Coding style 2014-08-06 15:11:10 +02:00
Aurélien Gâteau
493e368bf0 update partitionmanager submodule: Build PartResizerWidget 2014-08-06 15:08:19 +02:00
Teo Mrnjavac
e9ef90990b Correctly load globalstorage fake. 2014-08-06 12:57:12 +02:00
Teo Mrnjavac
5c8fa759b0 Update testmodule.py for new config structure. 2014-08-06 12:36:10 +02:00
Teo Mrnjavac
8f10c21e5b Big configuration overhaul.
Module descriptors are now module.desc, no configuration allowed inside.
Module config files are <modulename>.conf, installed in
share/calamares/modules.
settings.conf is read from /etc/calamares, then share/calamares, and if
running with --debug also in the current dir.
Module config files are read from /etc/calamares/modules, then
share/calamares/modules, and if running with --debug also in
src/modules/<modulename> relative to the current dir.
2014-08-06 11:54:45 +02:00
Teo Mrnjavac
75e9fd6aa3 Dracut module. 2014-08-06 11:54:17 +02:00
Aurélien Gâteau
415ad2c506 Fix empty error message 2014-08-06 11:53:23 +02:00
Aurélien Gâteau
a267ef856e Check file system after the resize, like PM does 2014-08-06 11:52:27 +02:00
Aurélien Gâteau
f5ccc616b9 Check file system before resizing: necessary for testResizePartition:shrink to pass 2014-08-06 11:49:04 +02:00
Aurélien Gâteau
d48644a49c Improve prettyName of all jobs, log them in execJobList() 2014-08-06 11:48:03 +02:00
Aurélien Gâteau
e2fe559f9d testResizePartition: more reliability tests
- use bigger partition sizes
- write a file before resizing, test it is the same after resizing
2014-08-06 11:46:03 +02:00
Aurélien Gâteau
dac23c90a1 Implement MoveFileSystemJob: all testResizePartition tests pass 2014-08-05 18:27:24 +02:00
Aurélien Gâteau
4716b1c9b4 Coding style 2014-08-05 17:53:10 +02:00
Aurélien Gâteau
3db6d607ca move MoveFileSystemJob to its own file
It's going to be bigger than the others.
2014-08-05 17:38:26 +02:00
Aurélien Gâteau
1314bf944f Update partitionmanager submodule: Include CopySourceDevice and CopyTargetDevice 2014-08-05 17:35:54 +02:00
Aurélien Gâteau
f007810118 Implement SetPartGeometryJob and ResizeFileSystemJob
Now testResizePartition:grow and testResizePartition:shrink pass
2014-08-05 16:11:34 +02:00
Aurélien Gâteau
60a224e5cd 3MB is too small for ext4: set a bigger new size for shrink 2014-08-05 16:10:20 +02:00
Aurélien Gâteau
9dac375a31 Don't forget to queue the job! 2014-08-05 16:09:30 +02:00
Aurélien Gâteau
09c3240364 Scaffolding and tests for ResizePartitionJob 2014-08-05 14:57:00 +02:00
Aurélien Gâteau
fc3f3eaa3a Update partitionmanager submodule: Make it possible to set partition sectors from the outside world 2014-08-05 14:55:49 +02:00
Aurélien Gâteau
e6c80ed5bd Coding style 2014-08-05 09:54:30 +02:00
Teo Mrnjavac
1d6c41e94d A timezone is a file, not a directory. 2014-08-04 21:48:04 +02:00
Aurélien Gâteau
9ce55bfb83 Introduce PartitionSizeWidget to reduce duplication between dialogs 2014-08-04 19:26:16 +02:00
Aurélien Gâteau
e482481262 updatePartitionToCreate: avoid crash
Create the new partition before deleting the old one: otherwise the
m_partition member of dlg is dangling at the time we call createPartition()
2014-08-04 19:23:39 +02:00
Aurélien Gâteau
3d40527d29 Make it possible to "resize" (aka delete + create for now) existing partitions 2014-08-04 18:16:05 +02:00
Aurélien Gâteau
df790986ae initcpio module, very loosely based on the one from the manjaro branch 2014-08-04 17:33:59 +02:00
Aurélien Gâteau
136d83f958 Add some test file for grub module 2014-08-04 17:33:15 +02:00
Aurélien Gâteau
6131ed212a Import check_chroot_call separately 2014-08-04 17:32:52 +02:00
Aurélien Gâteau
43c88567af Use check_chroot_call 2014-08-04 17:01:05 +02:00
Aurélien Gâteau
a1b7d3639e Some test data for fstab module 2014-08-04 16:31:45 +02:00
Aurélien Gâteau
2276ce56f4 Fix fat* filesystems translation 2014-08-04 16:31:45 +02:00
Aurélien Gâteau
87367d5abd fstab: Refactor to be able to add ssd-specific options 2014-08-04 16:31:45 +02:00
Aurélien Gâteau
d175d199eb Rough chroot call failure check 2014-08-01 17:26:18 +02:00
Teo Mrnjavac
271b0945c9 Create jobs in locale viewmodule. 2014-08-01 16:29:19 +02:00
Teo Mrnjavac
34c5ac3182 Add SetTimezoneJob to locale viewmodule. 2014-08-01 16:28:29 +02:00
Teo Mrnjavac
a311770e2f Use libcalamares.utils.chroot_call in grub jobmodule. 2014-08-01 13:37:28 +02:00
Teo Mrnjavac
cc2e49c6ae Store keyboard layout information in GlobalStorage. 2014-08-01 12:42:34 +02:00
Aurélien Gâteau
7680578b61 Simplify unsquash code
- Merged UnpackEntry and UnpackStatusEntry. Created a entry_for_source dict.
- Removed dead code (update_copy_progress)
2014-08-01 11:59:44 +02:00
Aurélien Gâteau
edc70c596b unsquashfs: Fix installation dir 2014-08-01 11:46:29 +02:00
Teo Mrnjavac
57ee5ac26b Add autologinUser to GlobalStorage. 2014-08-01 11:20:20 +02:00
Aurélien Gâteau
a75b1809d8 Do not make dummypython fail 2014-08-01 09:59:23 +02:00
Teo Mrnjavac
b111027d57 Add SetPasswordJob in Users module, hook it all up. 2014-07-31 19:06:31 +02:00
Teo Mrnjavac
8e3002bfbb Add FindCrypt in the users module. 2014-07-31 19:02:50 +02:00
Teo Mrnjavac
46f5dab7fd CreateUserJob for Users viewmodule 2014-07-31 14:53:46 +02:00
Teo Mrnjavac
fb32432548 UI for users viewmodule. 2014-07-31 14:52:40 +02:00
Aurélien Gâteau
c655c99f67 Hide disk which contains /
Fixes #75
2014-07-30 23:21:06 +02:00
Aurélien Gâteau
9708669ac7 Use libcalamares.utils.mount 2014-07-30 15:37:34 +02:00
Aurélien Gâteau
0946789f9e Move mounting of special partitions from grub to mount 2014-07-30 15:37:11 +02:00
Aurélien Gâteau
8867f6bc67 Fix progress reporting 2014-07-30 15:35:51 +02:00
Aurélien Gâteau
f371ffa696 Iterate on values, not on keys 2014-07-30 15:13:34 +02:00
Aurélien Gâteau
7a0fb52c83 Damn, forgot named tuples cannot be updated. Use a class instead 2014-07-30 15:10:23 +02:00
Aurélien Gâteau
9c27add968 Use os.path.join 2014-07-30 15:06:59 +02:00
Aurélien Gâteau
22299dc585 No need for UnpackEntry.source_dir 2014-07-30 15:06:39 +02:00
Aurélien Gâteau
638a5c021c More precise error handling 2014-07-30 15:05:44 +02:00
Aurélien Gâteau
adda405f83 Do not use os.path.join with entry["destination"]
if it starts with a "/" then `destination` will be equal to entry["destination"]
2014-07-30 15:05:19 +02:00
Aurélien Gâteau
ecb16dcdca Fix line counting 2014-07-30 15:03:55 +02:00
Aurélien Gâteau
47762d3812 No more need for sourceMountPath 2014-07-30 15:02:55 +02:00
Aurélien Gâteau
75a5bdac60 Fix fuzzy edges around keys (and a warning) 2014-07-30 14:17:14 +02:00
Aurélien Gâteau
03c5a38b90 Show a summary of the partition changes on the summary page 2014-07-30 14:17:14 +02:00
Teo Mrnjavac
122a6036d5 globalStorage ==> globalstorage fix 2014-07-30 12:41:34 +02:00
Teo Mrnjavac
2232c49471 Make dummypython work with current API. 2014-07-30 12:40:09 +02:00
Teo Mrnjavac
0d3a3a0b78 Fix dummypython for recent API change. 2014-07-29 20:21:40 +02:00
Aurélien Gâteau
e3a333e6e6 Prettier PartitionPreview 2014-07-29 16:01:45 +02:00
Aurélien Gâteau
fe9e52ee0e PartitionModel: Add IsFreeSpaceRole 2014-07-29 16:01:45 +02:00
Aurélien Gâteau
0ea6f1698b First version of PartitionPreview 2014-07-29 16:01:45 +02:00
Aurélien Gâteau
93cb9fd426 New role for PartitionModel: SizeRole 2014-07-29 16:01:45 +02:00
Aurélien Gâteau
5fc07aad7c Expose colors for Qt::DecorationRole 2014-07-29 16:01:45 +02:00
Aurélien Gâteau
5c1336f2d5 Turn PartitionModel into a tree model
Fixes #12
2014-07-29 16:01:45 +02:00
Aurélien Gâteau
e3a52745fc Fix assert failure when recreating partition table 2014-07-29 16:01:45 +02:00
Teo Mrnjavac
4b1975d3e2 PEPify unsquashfs 2014-07-29 15:10:18 +02:00
Teo Mrnjavac
2b097e7f3c PEPify umount 2014-07-29 14:53:07 +02:00
Teo Mrnjavac
2ba96d3b6b PEPify mount 2014-07-29 14:45:58 +02:00
Teo Mrnjavac
585dd20a34 Update README.md 2014-07-29 14:40:56 +02:00
Teo Mrnjavac
1c984c7bf9 PEPify grub 2014-07-29 14:34:30 +02:00
Teo Mrnjavac
98b62808de PEPify fstab 2014-07-29 14:26:19 +02:00
Teo Mrnjavac
906560ffee PEPify dummypython 2014-07-29 14:06:58 +02:00
Teo Mrnjavac
637242776c PEPify testmodule.py 2014-07-29 13:52:55 +02:00
Teo Mrnjavac
b988c3ad72 PEPify API fakes in testmodule.py 2014-07-29 13:17:15 +02:00
Teo Mrnjavac
5369038ed6 Add debug test to dummypython 2014-07-28 18:56:00 +02:00
Teo Mrnjavac
cb53cc41cb Remove __init__.py from unsquashfs 2014-07-28 18:04:34 +02:00
Teo Mrnjavac
422e78236b Make fileCopy in unsquashfs a single function 2014-07-28 17:57:53 +02:00
Teo Mrnjavac
b48a66a2e5 Improve readability. 2014-07-28 17:51:35 +02:00
Teo Mrnjavac
e937782a4e Fix some lousy error handling 2014-07-28 17:46:56 +02:00
Teo Mrnjavac
4fc2efb7fa Correctly report exit status from Python modules. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
25d37b57dd Use named tuples in unsquashfs. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
1b4e56e97e Better call to rsync in unsquashfs. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
c42d021b61 Unthreadify FileCopy in unsquashfs. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
f44b8eb758 Count the files in the squashfs image without piping to wc -l. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
cb2dcf7860 Use temp dir for mounting squashfs image. 2014-07-28 17:40:57 +02:00
Teo Mrnjavac
60dda7db49 Begin unsquashfs module, port copy operation from Thus. 2014-07-28 17:40:57 +02:00
Aurélien Gâteau
64f8748c49 Spaces fixes 2014-07-28 15:00:30 +02:00
Aurélien Gâteau
0b01c76687 Coding style 2014-07-28 15:00:17 +02:00
Aurélien Gâteau
9e8c02fa33 Basic fstab module
Misses the 'options' finetunes

Bug #66
2014-07-28 14:59:22 +02:00
Aurélien Gâteau
2d9142487b FillGlobalStorageJob: Add the partition UUID to global storage 2014-07-28 14:58:06 +02:00
Aurélien Gâteau
62d706543b Do not let the user pick a partition type when creating a partition of a GPT disk
Fixes #27
2014-07-28 11:45:13 +02:00
Teo Mrnjavac
beafcd9cc4 Consistency: calamares_main ==> run; global_storage => globalStorage 2014-07-25 16:46:12 +02:00
Aurélien Gâteau
fb6d80ccb6 Bring back tree view headers 2014-07-25 13:13:04 +02:00
Aurélien Gâteau
bf72672cce Make double-clicking on a partition item in the list trigger edit/create 2014-07-25 13:07:22 +02:00
Aurélien Gâteau
cd99f64344 Add mnemonics to UI elements 2014-07-25 12:46:20 +02:00
Aurélien Gâteau
c3a91f1c8d Implement Revert
Fixes #14
2014-07-24 19:28:53 +02:00
Aurélien Gâteau
675b07799b Dead code-- 2014-07-24 19:26:57 +02:00
Aurélien Gâteau
d476f9cba8 Make sure we show info of the first device in the device combo box 2014-07-24 19:26:19 +02:00
Aurélien Gâteau
cb546d02f9 Sort device in DeviceModel by device node 2014-07-24 19:24:40 +02:00
Aurélien Gâteau
20521f278c Update doc 2014-07-24 17:51:51 +02:00
Aurélien Gâteau
0f23b8ad5c Add basic grub module. Not enabled for now because it requires a rootfs to work
Fixes #26
2014-07-24 17:17:40 +02:00
Aurélien Gâteau
545eef5761 Refactor mount module to make its code easier to reuse 2014-07-24 17:14:56 +02:00
Aurélien Gâteau
96ede98f27 Update partitionmanager submodule: fix cmake warning 2014-07-24 14:00:56 +02:00
Aurélien Gâteau
92114576ce Create umount module 2014-07-24 13:51:14 +02:00
Aurélien Gâteau
aef2b7e9e7 We can now test mount with testmodule.py: remove the test main() 2014-07-24 10:17:46 +02:00
Aurélien Gâteau
35d2a10177 Remove \t tab to avoid failure in testmodule.py 2014-07-24 10:16:51 +02:00
Aurélien Gâteau
e1877adf9c Make testmodule.py more Pythonic 2014-07-24 10:15:16 +02:00
Aurélien Gâteau
f2ab67b28b Create bootLoader.installPath in GlobalStorage 2014-07-23 18:16:55 +02:00
Aurélien Gâteau
06a13637b6 Store current boot loader install path in PartitionCoreModule 2014-07-23 18:15:46 +02:00
Aurélien Gâteau
ab4604258c Rework boot loader combo box
List MBR of all devices
Does not loose its selection when updated
2014-07-23 18:14:27 +02:00
Aurélien Gâteau
c9c1917997 log-- 2014-07-23 15:05:01 +02:00
Aurélien Gâteau
a39384eda7 Simplify 2014-07-23 15:04:40 +02:00
Aurélien Gâteau
484d7c4d15 Update partition path after partition has been created
Fixes #56
2014-07-23 14:34:06 +02:00
Teo Mrnjavac
da83ecfb13 libcalamares.job is of type libcalamares.Job 2014-07-23 13:02:42 +02:00
Teo Mrnjavac
ef28b7f2c1 Add job.setprogress to testmodule.py. 2014-07-23 13:01:30 +02:00
Aurélien Gâteau
89fd6a950b Add support for per-job progress 2014-07-23 12:04:27 +02:00
Aurélien Gâteau
e9da5cb6cb Change signature of JobQueue::progress, add finished() signal
Now uses a qreal for progress instead of current and total
Also added a finished() signal because determining whether the queue is
finished should not be done by comparing a qreal with 1.0 as this is not
precise.
2014-07-23 10:58:08 +02:00
Aurélien Gâteau
0234415976 Add "mount" module 2014-07-22 17:38:36 +02:00
Aurélien Gâteau
c8129898fc Introduce FillGlobalStorageJob 2014-07-22 17:38:36 +02:00
Aurélien Gâteau
7763587c01 Move PartitionIterator to its own file 2014-07-22 17:38:36 +02:00
Teo Mrnjavac
533cba6437 [testmodule.py] File with fake global_storage contents for testing. 2014-07-22 14:22:15 +02:00
Teo Mrnjavac
4881684e18 [testmodule.py] Simulate global storage contents from a YAML file. 2014-07-22 14:22:15 +02:00
Aurélien Gâteau
1b64917385 Use findPartitionByMountPoint in updateHasRootMountPoint 2014-07-22 10:50:16 +02:00
Aurélien Gâteau
a335c1cc04 Coding style fixes 2014-07-22 10:50:16 +02:00
Aurélien Gâteau
906019facc Add combo box to pick boot loader installation destination 2014-07-22 10:50:16 +02:00
Aurélien Gâteau
3e3329d4f2 Rework PartitionPage appearance, prior addition of boot loader UI 2014-07-22 10:50:16 +02:00
Teo Mrnjavac
81eca92418 Added testmodule.py script to test Python modules. 2014-07-21 18:34:17 +02:00
Teo Mrnjavac
73f03017fd Spaces, not tabs. 2014-07-21 18:32:10 +02:00
Aurélien Gâteau
4c88603872 Fix bug with tiny disks and mbr partition tables 2014-07-18 18:37:44 +02:00
Aurélien Gâteau
26f6943f8a Add support for formatting existing partitions
closes #24
2014-07-18 15:49:27 +02:00
Aurélien Gâteau
a5fcb9bcb9 Improve CreatePartitionJob::prettyName 2014-07-18 15:49:27 +02:00
Aurélien Gâteau
d374d8bad8 Introduce PartitionJob 2014-07-18 15:49:27 +02:00
Teo Mrnjavac
4516213b0b Add some dummy configuration to dummypython, and then show it. 2014-07-18 14:36:30 +02:00
Aurélien Gâteau
568f2abd0b Reproduce and fix bug #28 2014-07-18 12:26:12 +02:00
Aurélien Gâteau
99fe98a9cf Unbreak test. Unfortunately it did not reproduce bug #28 2014-07-18 12:11:42 +02:00
Aurélien Gâteau
7e8c5a980c Make Runner::run() returns a bool indicating success or failure 2014-07-18 11:27:03 +02:00
Aurélien Gâteau
eebc71257f Nicer error messages 2014-07-18 11:20:13 +02:00
Aurélien Gâteau
26d0b52342 Unbreak build 2014-07-18 11:20:13 +02:00
Aurélien Gâteau
6f65a4b16c Add a (failing for now) test for extended partitions
This reproduces bug #28
2014-07-18 10:51:54 +02:00
Aurélien Gâteau
43f29b8058 Start working on tests for partition jobs 2014-07-18 10:51:54 +02:00
Teo Mrnjavac
a61a36d99d We have a Python API for jobmodules!
Created a Boost.Python module interface in libcalamares.
Added a PythonJob wrapper and exposed it in the Python module.
Rename target calamareslib ==> calamares so in Python it's libcalamares.
Python-related classes in libcalamares that aren't exported as C++
symbols are now in a CalamaresPrivate namespace.
Import the libcalamares python module into every Python script before
running it.
Added Python error handling to PythonJobHelper.
Added some more testing code to dummypython module.
2014-07-17 19:42:16 +02:00
Aurélien Gâteau
9c89e68672 Get rid of partview, it's no longer useful 2014-07-17 16:09:06 +02:00
Aurélien Gâteau
0d915b4995 Always delete logical partitions first when deleting an extended partition 2014-07-17 15:01:45 +02:00
Aurélien Gâteau
d7a853ee06 Scaffolding for exiting partition reformating 2014-07-17 14:59:59 +02:00
Aurélien Gâteau
4e49f59333 Turn PartitionCoreModule::refreshPartitionModel() into refresh() and make it public 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
5c594f8dd7 Fix doc 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
8a64dcb270 Coding style fixes 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
ec6703b9cd Start creating EditExistingPartitionDialog 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
5daa1b82e8 Refactor: PartitionInfo is no longer a class 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
ff5667cb73 Turn all extra PartitionInfo fields into QObject properties of Partition 2014-07-17 14:57:16 +02:00
Aurélien Gâteau
9b57b98a93 No point doing this: editing extended partitions is not supported for now 2014-07-17 09:50:07 +02:00
Teo Mrnjavac
846812f49b Update README.md 2014-07-16 17:11:25 +02:00
Teo Mrnjavac
32beec0243 Update README.md 2014-07-16 17:08:05 +02:00
Teo Mrnjavac
2f628cd1d4 Add dummy python jobmodule. 2014-07-16 16:10:49 +02:00
Teo Mrnjavac
4712af05a0 Fix build in PartitionCoreModule. 2014-07-16 15:55:49 +02:00
Teo Mrnjavac
f2ed18ad4c Alignment fix. 2014-07-16 15:53:43 +02:00
Aurélien Gâteau
8a7e6c9348 More readable job queue 2014-07-16 11:15:22 +02:00
Aurélien Gâteau
3fa3694f90 Fix crash when trying to delete an extended partition 2014-07-16 11:14:55 +02:00
Aurélien Gâteau
568dc4db0a Init all fields when editing a partition. Disable editing of extended partitions for now. 2014-07-16 10:59:24 +02:00
Aurélien Gâteau
d500c7b480 Coding style fixes 2014-07-16 10:36:17 +02:00
Aurélien Gâteau
27b28a5bd1 Avoid potential rounding errors 2014-07-16 10:35:09 +02:00
Aurélien Gâteau
45dda6fa17 Factorize size computations 2014-07-16 10:34:56 +02:00
Aurélien Gâteau
a70ab4ad60 Refactor: move sector math from PartitionPage to CreatePartitionDialog 2014-07-16 10:15:57 +02:00
Aurélien Gâteau
7c1ecabd68 Drop now unused IsNewPartitionRole 2014-07-16 10:02:53 +02:00
Aurélien Gâteau
9216982859 Allow editing of partition mount points 2014-07-16 10:02:41 +02:00
Aurélien Gâteau
48c078acc5 Start implementing editing of newly-created partitions
This is the beginning of #19
2014-07-15 17:37:04 +02:00
Aurélien Gâteau
174114f09c Add IsNewPartition role 2014-07-15 17:33:16 +02:00
Aurélien Gâteau
fa30fe147f Add PMUtils::isPartitionNew() 2014-07-15 17:32:55 +02:00
Aurélien Gâteau
091c3c2757 Make CreatePartitionDialog.ui easier to read in Designer 2014-07-15 15:31:45 +02:00
Aurélien Gâteau
c30ed3c9c1 Let the user recreate the partition table (mbr or gpt)
Closes #20
2014-07-15 14:40:08 +02:00
Aurélien Gâteau
7096213206 Move partitionmanager code to src/modules/partition 2014-07-15 11:54:09 +02:00
Aurélien Gâteau
cbcd821943 Coding style fixes 2014-07-15 11:38:46 +02:00
Teo Mrnjavac
e3741c4d26 Make the locale viewmodule load the initial timezone from config. 2014-07-15 11:35:05 +02:00
Teo Mrnjavac
0a8aa66d58 Set initial timezone for the locale viewmodule in module.conf. 2014-07-15 11:34:36 +02:00
Teo Mrnjavac
c57d99a21c Add CalamaresAddModuleSubdirectory, a CMake function for modules that
do not require building through a CMakeLists.txt.
2014-07-14 16:26:10 +02:00
Teo Mrnjavac
25f44492e9 Add dummy process job module. 2014-07-14 16:25:13 +02:00
Aurélien Gâteau
7ac6588090 Forget pending changes when the partition table is recreated 2014-07-11 17:09:11 +02:00
Aurélien Gâteau
f0dffb7400 Refactor: Introduce PartitionInfoProvider interface, and make DeviceInfo implement it 2014-07-11 17:09:11 +02:00
Aurélien Gâteau
61b17490eb Refactor: group jobs and partitionModel for a device in a DeviceInfo struct
Makes it easier to clear all jobs for a specific device, which is necessary
when replacing a device partition table
2014-07-11 17:09:11 +02:00
Aurélien Gâteau
83a56a6bd3 Add the ability to (re)create partition tables 2014-07-10 19:55:16 +02:00
Aurélien Gâteau
5d6a80deae Factorize management of m_hasRootMountPoint 2014-07-10 19:01:55 +02:00
Aurélien Gâteau
8d3f197fde Clean up 2014-07-10 18:55:19 +02:00
Aurélien Gâteau
c11fc3a4d2 Do not crash if a device does not have a partition table 2014-07-10 18:27:51 +02:00
Aurélien Gâteau
8d01b9a6fd assert-- 2014-07-10 15:14:06 +02:00
Aurélien Gâteau
e792f4c9c5 Implement DeletePartitionJob::exec()
Closes #11
2014-07-10 15:07:02 +02:00
Aurélien Gâteau
7566221eff Nicer error messages on failure 2014-07-10 14:47:06 +02:00
Teo Mrnjavac
dbadbf69ec Const correctness. 2014-07-10 12:06:23 +02:00
Aurélien Gâteau
6881fdab6e JobResult 2014-07-09 15:50:27 +02:00
Aurélien Gâteau
d984489eea Implement CreatePartitionJob 2014-07-09 15:47:34 +02:00
Aurélien Gâteau
191f37f5fa Fake CreatePartitionJob::exec() implementation 2014-07-08 19:21:55 +02:00
Teo Mrnjavac
f1ba2e1270 Add prettyStatus to Locale module. 2014-07-08 18:28:28 +02:00
Teo Mrnjavac
e622fe4f99 Add prettyStatus to Keyboard module. 2014-07-08 18:28:28 +02:00
Teo Mrnjavac
c339ac8cfc Add status info to Summary page. Still needs work to make it nice.
Also added onActivate/onLeave to ViewStep and ViewManager.
2014-07-08 18:28:27 +02:00
Teo Mrnjavac
49b91608e3 Stub for Summary viewmodule. 2014-07-08 18:28:27 +02:00
Aurélien Gâteau
2f774e6c46 Implement PartitionViewStep::jobs() 2014-07-08 15:46:48 +02:00
Teo Mrnjavac
b98c071f94 Prepare for late enqueuing of jobs to the JobQueue. 2014-07-08 14:03:06 +02:00
Aurélien Gâteau
023ed99aca Coding style 2014-07-08 14:04:57 +02:00
Aurélien Gâteau
36b3de7107 Enable/disable Next button based on whether we have a root mount point 2014-07-08 14:04:57 +02:00
demmm
c3d40b9428 add ECM to CMakeLists,
remove obsolete CONFIG
2014-07-05 17:28:13 -04:00
Aurélien Gâteau
15c5142d09 Redo partition type UI and enable/disable mount point UI when appropriate 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
f27ff4c717 We want to format partitions we create 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
467d89f56f Remove PartitionInfo if we remove a Partition 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
3ed5704818 Refactor: Move creation of CreatePartitionJob to PartitionCoreModule 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
d54dfcfb78 Get rid of DeviceInfo 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
f3f9bfc2a3 Introduce PartitionInfo, to store Calamares-specifc info for a partition 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
1247077ccc Pass mount point to CreatePartitionJob 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
ab4e81504e wip mount point 2014-07-04 18:34:01 +02:00
Aurélien Gâteau
a62f3daf25 Adjust logical numbers 2014-07-04 18:34:01 +02:00
Teo Mrnjavac
7a99214ddb New keyboard viewmodule, based on the one from Manjaro's minst. 2014-07-04 15:33:59 +02:00
Teo Mrnjavac
ee485f9735 Remove keyboard related functionality from the locale viewmodule. 2014-07-04 15:31:12 +02:00
Teo Mrnjavac
e2e66e3cf7 Do not repeat repeat link libraries. 2014-07-03 18:07:02 +02:00
Teo Mrnjavac
4ec72f4afb Refactored calamares_bin into calamares_bin and libcalamaresui.
Now linking with -Wl,--no-undefined!
Moved find_package KF5 from the root CMakeLists.txt to the partitioning
module where it belongs. KF5 deps should be limited to plugins.
Lots of random fixage to make stuff link.
Removed CalamaresApplication reference from Settings.
Removed the use of AbstractPage, we don't need it right now.
2014-07-03 18:00:40 +02:00
Teo Mrnjavac
1efb4f1101 Added spinner widget to the loading timezone data view. 2014-07-03 15:38:55 +02:00
Teo Mrnjavac
81eafced2f Don't allow to go next if the timezone view hasn't loaded. 2014-07-03 13:19:32 +02:00
Teo Mrnjavac
f9aa532d77 Load timezone data asynchronously so we don't block the GUI thread on
startup.
2014-07-03 13:13:38 +02:00
Teo Mrnjavac
4cf6c06dda Useless linkage is useless. 2014-07-03 13:13:06 +02:00
Teo Mrnjavac
87b009cc23 Layout fixes for LocalePage + default location. 2014-07-02 18:12:53 +02:00
Teo Mrnjavac
1ac10b40e6 Initial commit for the locale viewmodule. 2014-07-02 18:12:53 +02:00
Aurélien Gâteau
3a58e2640f Show partition elements in separate column 2014-07-02 18:04:53 +02:00
Aurélien Gâteau
0446bb1079 More readable partition sizes 2014-07-02 18:04:53 +02:00
Aurélien Gâteau
a318ec49fc Enqueue all partition jobs when leaving the PartitionViewStep 2014-07-02 16:06:54 +02:00
Aurélien Gâteau
4916d0cb88 crash-- 2014-07-02 16:03:52 +02:00
Aurélien Gâteau
6f3ec0170e Argh, forgot to commit those files 2014-07-02 15:59:34 +02:00
Aurélien Gâteau
d013e663b8 Implement partition removal 2014-07-02 15:49:35 +02:00
Aurélien Gâteau
f9ca45face Mark the partition we create as "StateNew"
This way if user wants to remove it later we can remove the creation job
instead of queueing a delete job
2014-07-02 15:48:47 +02:00
Aurélien Gâteau
724780fb23 Coding style fixes 2014-07-02 14:12:56 +02:00
Teo Mrnjavac
20beae8f52 Minor nitpick in module.conf 2014-07-02 11:47:48 +02:00
Teo Mrnjavac
80789b6143 Added ProgressTreeModel/View, including different kinds of items.
Redone CalamaresWindow without UI file.
Const correctness in ViewStep and plugins.
2014-07-01 17:52:04 +02:00
Aurélien Gâteau
1421a04dd2 Support creation of extended partitions 2014-07-01 17:33:53 +02:00
Aurélien Gâteau
e3c6869fbd Let CreatePartitionDialog create the Partition object 2014-07-01 17:09:39 +02:00
Aurélien Gâteau
90d26bfd31 Safer dialog handling 2014-07-01 16:46:33 +02:00
Aurélien Gâteau
5eafb9538e Crude way to distinguish extended from primary partitions + show partition size 2014-07-01 16:29:26 +02:00
Aurélien Gâteau
cdfb890e17 Better way to detect free space 2014-07-01 16:29:00 +02:00
Aurélien Gâteau
5dc5b4ddc8 Add missing file 2014-07-01 10:58:54 +02:00
Aurélien Gâteau
b060f66456 Introduce CreatePartitionDialog and CreatePartitionJob 2014-06-30 18:08:13 +02:00
Aurélien Gâteau
c9409ba6b2 Start implementing support for creating partitions 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
3a59cdeda9 Detect free space using the FS type 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
c254fe0b2a Enable/disable partition buttons 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
2000553a10 PartitionModel: Add getter for Partition 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
4429a8fd63 Introduce PMUtils 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
6d0b3218f1 Move PartitionModel management from DeviceModel to PartitionCoreModule 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
578f2e4baa Instantiate DeviceModel in PartitionCoreModule 2014-06-30 16:17:59 +02:00
Aurélien Gâteau
4d2354fb56 Introduce PartitionCoreModule
Owner of the Qt models and PM devices
2014-06-30 16:17:59 +02:00
Aurélien Gâteau
730c3902bf PartitionViewPlugin => PartitionViewStep 2014-06-30 13:24:59 +02:00
Aurélien Gâteau
8f474fa08f Persistent partition model
This will make it possible to update the partition list on changes,
regardless of the actual device state
2014-06-30 13:15:20 +02:00
Teo Mrnjavac
c7d62300a0 Make the partition viewmodule compile with the new ViewStep interface. 2014-06-27 18:14:39 +02:00
Teo Mrnjavac
20d5a37fef Major ViewStep additions and changes.
Renamed ViewPlugin to ViewStep.
Back/Next button status management.
Subpages are now under a ViewStep's jurisdiction, we only forward back/
next signals if a ViewStep says it's got more pages to show. ViewStep
exposes a QWidget* to ViewManager, this QWidget gets added to a stack.
If a ViewStep wishes to show more than one page, it must manage more
pages on its own inside its single QWidget*.
2014-06-27 18:04:53 +02:00
Aurélien Gâteau
1d0dfa5215 Clean up 2014-06-27 17:42:15 +02:00
Aurélien Gâteau
344d7ac610 Better use QItemSelectionModel to detect selection changes 2014-06-27 17:42:13 +02:00
Aurélien Gâteau
6b164a9dcf Wrap PartitionPage building in WITH_PARTITIONMANAGER 2014-06-27 17:41:55 +02:00
Aurélien Gâteau
8d6b7672bc Start PartitionPage 2014-06-27 17:26:31 +02:00
Teo Mrnjavac
5f883556e1 Don't use QPluginLoader's JSON metadata thing, we already have our own. 2014-06-27 15:55:24 +02:00
Teo Mrnjavac
f4b1cacc03 Prefer nullptr over 0 for null pointers. 2014-06-27 15:55:24 +02:00
Teo Mrnjavac
23e91ee475 Lots of changes. Module search+load system is now working.
Moved module-related classes to src/calamares/modulesystem.
Fixes to startup code path.
Made ViewPlugins load into ViewManager.
Debug code: ViewManager currently only shows a plugin's prettyName.
Added ViewModule as a subclass of Module. Other kinds of plugins should
be supported in a similar way.
2014-06-27 14:12:10 +02:00
Teo Mrnjavac
392c8ec108 PagePlugin ==> ViewPlugin 2014-06-24 12:41:58 +02:00
Teo Mrnjavac
2693f493c9 Added load entry to plugin config. 2014-06-24 12:41:26 +02:00
Teo Mrnjavac
125b7914d5 Added module metadata file to CalamaresAddPlugin macro.
Also improved output.
2014-06-23 17:14:55 +02:00
Teo Mrnjavac
13fcf387c7 A bunch of work on loading plugins.
Also switched to C++11.
2014-06-18 18:05:04 +02:00
Teo Mrnjavac
6899b1f0fa Added CMake magic for plugin infrastructure.
Added ViewManager.
Added dummy Settings class.
Added dummy plugin interface (UI plugins only).
Added dummy greeting plugin.
Added DLLEXPORT macros for UI plugin interface and plugins.
2014-06-11 13:39:20 +02:00