Distribution-independent installer framework
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. |
||
---|---|---|
CMakeModules | ||
lang | ||
src | ||
tests | ||
.gitignore | ||
.gitmodules | ||
AUTHORS | ||
CalamaresAddLibrary.cmake | ||
CalamaresAddPlugin.cmake | ||
CalamaresBuildTreeSettings.cmake.in | ||
CalamaresConfig.cmake.in | ||
CalamaresConfigVersion.cmake.in | ||
CalamaresUse.cmake.in | ||
cmake_uninstall.cmake.in | ||
CMakeLists.txt | ||
HACKING.md | ||
LICENSE | ||
README.md | ||
settings.conf |
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