Distribution-independent installer framework
Go to file
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
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 Refactored calamares_bin into calamares_bin and libcalamaresui. 2014-07-03 18:00:40 +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 Refactored calamares_bin into calamares_bin and libcalamaresui. 2014-07-03 18:00:40 +02:00
CalamaresAddPlugin.cmake CalamaresAddPlugin more relevant output. 2014-07-02 11:59:55 +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 Refactored calamares_bin into calamares_bin and libcalamaresui. 2014-07-03 18:00:40 +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 Initial commit for the locale viewmodule. 2014-07-02 18:12:53 +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