Distribution-independent installer framework
On systems with SELinux enabled, we have to create the directories on top of which we mount another partition or virtual file system (e.g., /dev) with the correct SELinux context, BEFORE we mount the other partition. Otherwise, SELinux will get really confused when systemd tries to recreate the mount tree for a private file system namespace for a service. And unfortunately, even an autorelabel does not fix it because it runs when /dev etc. are already mounted. Without this fix, on Fedora >= 30, the system installed with Calamares would fail to start the dbus-broker system bus, leading to several important pieces of functionality not working (e.g., shutdown as non-root). On systems without SELinux enabled, chcon (which is part of coreutils) will just print a warning and do nothing, so this should always be safe. |
||
---|---|---|
.github/ISSUE_TEMPLATE | ||
.tx | ||
ci | ||
CMakeModules | ||
data | ||
lang | ||
LICENSES | ||
man | ||
src | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
AUTHORS | ||
calamares.desktop | ||
calamares.desktop.in | ||
CalamaresBuildTreeSettings.cmake.in | ||
CalamaresConfig.cmake.in | ||
CalamaresConfigVersion.cmake.in | ||
CalamaresUse.cmake.in | ||
CHANGES | ||
cmake_uninstall.cmake.in | ||
CMakeLists.txt | ||
com.github.calamares.calamares.policy | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
settings.conf |
Calamares: Distribution-Independent Installer Framework
Report a Bug | Contribute | Translate | Freenode (IRC): #calamares | Wiki |
---|
Dependencies
Main:
- Compiler with C++11 support: GCC >= 4.9.0 or Clang >= 3.5.1
- CMake >= 3.2
- Qt >= 5.7
- yaml-cpp >= 0.5.1
- Python >= 3.3 (required for some modules)
- Boost.Python >= 1.55.0 (recommended, or PythonQt; one is required for some modules)
- PythonQt (recommended, or Boost.Python; one is required for some modules)
- extra-cmake-modules >= 5.18 (recommended; required for some modules)
Modules:
- welcome:
- NetworkManager
- UPower (optional, runtime)
- partition:
- extra-cmake-modules
- KF5: KCoreAddons, KConfig, KI18n, KService, KWidgetsAddons
- KPMcore >= 3.3
- bootloader:
- systemd-boot or GRUB
- unpackfs:
- squashfs-tools
- rsync
Building
See wiki for up to date building and deployment instructions.