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