CutefishOS Installer.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Teo Mrnjavac 30408d34a1 Try to find a more reliable way to read new partition UUIDs. 10 years ago
.tx
CMakeModules
data/images Exclamation mark in Erase icon. 10 years ago
hacking
lang Automatic merge of Transifex translations 10 years ago
src Try to find a more reliable way to read new partition UUIDs. 10 years ago
.gitignore
.gitmodules
AUTHORS
CMakeLists.txt Add some flags for Clang. 10 years ago
CalamaresAddBrandingSubdirectory.cmake Rely on CMake if the branding component has a CMakeLists.txt. 10 years ago
CalamaresAddLibrary.cmake
CalamaresAddModuleSubdirectory.cmake
CalamaresAddPlugin.cmake
CalamaresBuildTreeSettings.cmake.in
CalamaresConfig.cmake.in
CalamaresConfigVersion.cmake.in
CalamaresUse.cmake.in
HACKING.md
LICENSE
README.md Update README.md 10 years ago
calamares.desktop
cmake_uninstall.cmake.in
com.github.calamares.calamares.policy
settings.conf Replace greeting+prepare with welcome in settings.conf. 10 years ago

README.md

Calamares: Distribution-Independent Installer Framework


Build Status Report a Bug Contribute Translate Freenode (IRC): #calamares

Dependencies

Main Partitioning Module Bootloader module
CMake >= 2.8.12 extra-cmake-modules gummiboot or GRUB2
Qt >= 5.3 kconfig (part of KF5) sgdisk
yaml-cpp >= 0.5.1 solid (part of KF5)
Python >= 3.3 kcoreaddons (part of KF5)
Boost.Python >= 1.55.0 ki18n (part of KF5)
sgdisk

Deployment

Setting up branding

Working with modules

Building

Clone Calamares from GitHub and cd into the calamares directory, then:

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

Design Notes

Calamares is currently split as follows:

  1. libcalamares - The back-end library.
  • Only depends on QtCore, yaml-cpp, Python and Boost.Python.
  • Provides a job queue and generic jobs.
  • Comes with 3 job interfaces: C++, Python and process (the latter is very limited).
  1. libcalamaresui - The front-end library.
  • Same dependencies as libcalamares, plus QtWidgets and other Qt modules.
  • Comes with a module loading system, for different kinds of plugins.
  • Supports branding components.
  • Presents a bunch of pages in a scripted order, enqueues jobs in the back-end library.
  1. calamares - The main executable.
  • A thin wrapper around libcalamaresui; starts up and plugs together all the parts.