Commit Graph

330 Commits

Author SHA1 Message Date
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
ed0fd6d207 Merge pull request #54 from calamares/wip/job-order
Queue module jobs in the order they are listed in the "install" section of settings.conf
2014-07-22 17:06:19 +02:00
Aurélien Gâteau
b5b72855c3 Queue module jobs in the order they are listed in the "install" section of settings.conf 2014-07-22 16:54:34 +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
Teo Mrnjavac
0753e6ccde New GlobalStorage map. With Python API support. 2014-07-21 17:09:23 +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
Teo Mrnjavac
d9f4c74537 Add support for config map to Python job API.
Rename PythonJobHelper ==> CalamaresPython::Helper.
Add QVariant to boost::python::object conversion functions.
Rename some constants in the libcalamares Python API.
2014-07-18 14:36:30 +02:00
Teo Mrnjavac
2f03dfa43b CalamaresPrivate ==> CalamaresPython 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
031c405c60 Let's not keep commented out code. 2014-07-18 10:39:43 +02:00
Teo Mrnjavac
e33e9de6f6 Symlink lib/calamares/libcalamares.so to lib/libcalamares.so for Python. 2014-07-17 19:42:16 +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
Teo Mrnjavac
c13179fdf0 Add debugMode bool to Calamares::Settings. 2014-07-17 19:42:16 +02:00
Teo Mrnjavac
6559197c4b Expose some more version constants in CalamaresVersion.h 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
50ba57a33a Add optional Python jobmodules support to libcalamaresui. 2014-07-16 16:09:53 +02:00
Teo Mrnjavac
b924aeef2b Add optional Python jobs support to libcalamares. 2014-07-16 16:07:32 +02:00
Teo Mrnjavac
754ef7dbbc Fix prettyName. 2014-07-16 16:02:14 +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
df9f803572 Actually load the additional config map into the ViewStep. 2014-07-15 11:29:21 +02:00
Teo Mrnjavac
b20eaaf4f8 Add setConfigurationMap to ViewStep with empty implementation.
Actual module ViewSteps can reimplement it to read their own module-
specific configuration.
2014-07-15 11:28:25 +02:00
Teo Mrnjavac
2ef5df314b Make extra configuration map protected in Module. 2014-07-15 11:27:26 +02:00
Teo Mrnjavac
c7c4e52849 Load additional module-specific configuration into a Module object. 2014-07-14 18:10:48 +02:00
Teo Mrnjavac
3879087c4a Add YAML to QVariant conversion to YamlUtils 2014-07-14 18:10:24 +02:00
Teo Mrnjavac
63a1ab07c1 Merge pull request #22 from toudi/center-mainwindow-fix
fix for issue #13
2014-07-14 16:49:05 +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
Teo Mrnjavac
2dd88344e5 Instantiate the correct type of module from module.conf. 2014-07-14 14:29:24 +02:00
Teo Mrnjavac
51e5976a99 Better error message. 2014-07-14 14:28:52 +02:00
Mateusz Mikołajczyk
91e1f8248b update for the fix, remove QStyle dependency 2014-07-14 14:04:15 +02:00
Teo Mrnjavac
1dca92947c Add already loaded check to ProcessJobModule 2014-07-14 12:08:41 +02:00
Mateusz Mikołajczyk
ea3b2e4461 fix for issue #13 2014-07-14 11:14:37 +02:00
Teo Mrnjavac
8d28a2ea5d Generalized code path for Phase switching. Also load install modules. 2014-07-12 14:38:33 +02:00
Teo Mrnjavac
84bfb2aa95 Fixes for loading modules by phase. 2014-07-12 13:13:15 +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
Teo Mrnjavac
7034985b74 Remove MM:loadModulesPrepare. 2014-07-11 14:41:53 +02:00
Teo Mrnjavac
2e47c248ac Load modules by phase, in preparation for actually using new settings. 2014-07-11 14:40:15 +02:00
Teo Mrnjavac
a09ab36386 Better settings format, rename a bit of stuff in module loading. 2014-07-11 14:21:50 +02:00
Aurélien Gâteau
22ff18f2cc Update partitionmanager submodule, fixing build without KIO 2014-07-11 14:11:51 +02:00
Aurélien Gâteau
784f07cbbc Update partitionmanager submodule: latest commits from the frameworks branch
@demm: This includes the btrfs fix
2014-07-10 20:00:53 +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
2e3f1c655c Update partitionmanager submodule, necessary for next commit 2014-07-10 19:54:23 +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
b1ce4afc8c Update partitionmanager submodule 2014-07-10 18:27:51 +02:00
Teo Mrnjavac
1b4d62ef4d Add ProcessJobModule for loading external commands. 2014-07-10 17:11:03 +02:00
Teo Mrnjavac
b3aae75bed Add working directory to ProcessJob 2014-07-10 16:45:13 +02:00
Teo Mrnjavac
8d36a13d92 Style fix. 2014-07-10 16:37:02 +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
Aurélien Gâteau
165d28fc23 Abort installation when a job fails 2014-07-10 14:47:06 +02:00
Teo Mrnjavac
7894bb9462 Module type Core ==> Job, plus const correctness. 2014-07-10 12:27:53 +02:00
Teo Mrnjavac
9c8d270ddb Add libcalamaresui to include_directories for calamares_bin and modules 2014-07-10 12:27:11 +02:00
Teo Mrnjavac
fe7a64d5ab Add ProcessJob, a wrapper for external commands. 2014-07-10 12:08:43 +02:00
Teo Mrnjavac
dbadbf69ec Const correctness. 2014-07-10 12:06:23 +02:00
Teo Mrnjavac
d1151d87cf Move implementation to cpp file. 2014-07-09 19:08:53 +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
04743eb4be Basic JobQueue implementation 2014-07-08 19:21:55 +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
4fe50d4569 Add InstallationViewStep::jobs() 2014-07-08 15:51:45 +02:00
Aurélien Gâteau
57d89175dc Merge branch 'master' into wip/install-step2 2014-07-08 15:50:03 +02:00
Aurélien Gâteau
2f774e6c46 Implement PartitionViewStep::jobs() 2014-07-08 15:46:48 +02:00
Aurélien Gâteau
b465121e26 Remove RowType enum and associated role 2014-07-08 15:30:15 +02:00
Aurélien Gâteau
a84b551ab0 Rename CategoryItem to TextTreeItem 2014-07-08 15:30:15 +02:00
Aurélien Gâteau
cb6a25c2ce Show an InstallationStep at the end of the preparation process 2014-07-08 15:30:15 +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
Teo Mrnjavac
b98c071f94 Prepare for late enqueuing of jobs to the JobQueue. 2014-07-08 14:03:06 +02:00
Teo Mrnjavac
52028d95f9 Clean up overuse of literals for GUI constants.
Add CalamaresStyle for colors and other style constants and helpers.
Add static functions for font size.
2014-07-08 13:22:09 +02:00
Aurélien Gâteau
f10f2026ad Update partitionmanager submodule 2014-07-07 14:52:25 +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