Distribution-independent installer framework
Go to file
Teo Mrnjavac 698cff45c8 Lots of model/view/delegate changes.
Created delegate for ProgressTreeView.
No more columns, only roles throughout the model.
Added row types and some user roles to the model.
Look and feel changes to ProgressTreeView.
2014-07-01 17:52:05 +02:00
CMakeModules Added module metadata file to CalamaresAddPlugin macro. 2014-06-23 17:14:55 +02:00
lang Added Utils, Logger, Translations, QCommandLineParser, init boilerplate 2014-06-06 17:19:59 +02:00
src Lots of model/view/delegate changes. 2014-07-01 17:52:05 +02:00
tests To build with partitionmanager: cmake -DWITH_PARTITIONMANAGER=1 2014-06-27 15:55:25 +02:00
.gitignore .gitignore update 2014-06-04 18:21:25 +02:00
.gitmodules Introduce libcalapm 2014-06-26 16:46:06 +02:00
AUTHORS AUTHORS file. 2014-06-11 13:39:44 +02:00
CalamaresAddLibrary.cmake Fix plugin install libdir. 2014-07-01 11:16:03 +02:00
CalamaresAddPlugin.cmake Better CalamaresAddPlugin output 2014-06-25 16:25:56 +02:00
CalamaresBuildTreeSettings.cmake.in CMake skeleton. 2014-06-04 16:35:26 +02:00
CalamaresConfig.cmake.in Added CMake magic for plugin infrastructure. 2014-06-11 13:39:20 +02:00
CalamaresConfigVersion.cmake.in CMake skeleton. 2014-06-04 16:35:26 +02:00
CalamaresUse.cmake.in Added CMake magic for plugin infrastructure. 2014-06-11 13:39:20 +02:00
cmake_uninstall.cmake.in CMake skeleton. 2014-06-04 16:35:26 +02:00
CMakeLists.txt Install settings.conf 2014-07-01 10:38:08 +02:00
HACKING.md Update HACKING.md 2014-06-30 13:45:43 +02:00
LICENSE Update LICENSE 2014-06-03 22:32:42 +02:00
README.md Introduce libcalapm 2014-06-26 16:46:06 +02:00
settings.conf Add the partition viewmodule to the modules-prepare roster. 2014-06-27 18:15:28 +02:00

Calamares

Distribution-independent installer framework

Dependencies

  • CMake >= 2.8.12
  • Qt >= 5.3

Building

$ git submodule init
$ git submodule update
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Debug ..
$ make

Design notes

  • Backend
  • lib should only depend on QtCore >=5.3, possibly boost::python
  • common functions like partitioning
  • works as job queue and executor
  • plugin based to let distro-specific tasks be done in a distro-specific order
  • Frontend
  • QtWidgets >=5.3, other deps as needed
  • themeable so branding can be done easily (plugin-based)
  • presents a bunch of pages in a scripted order, enqueues jobs in the backend lib