Efter fem och ett halvt Är sedan lanseringen av version 3.2.x har slÀppt verktyget för att skapa installatörer Calamares 3.3.0, som inte Àr beroende av specifika Linux-distributioner. Utvecklare av distributioner har tillgÄng till ett tiotal fÀrdiga moduler som implementerar olika funktioner som efterfrÄgas i installatörer. Koden Àr skriven i C++, det grafiska grÀnssnittet Àr baserat pÄ Qt-biblioteket (anvÀnder QML), och för modulutveckling kan bÄde C++ och Python anvÀndas.
Calamares erbjuder funktioner som manuell och automatisk partitionering av diskar, ett flexibelt system för anpassning av utseendet, modulerad arkitektur och ett stort urval av fĂ€rdiga moduler (frĂ„n hantering av bootloaders till hantering av anvĂ€ndare). Till exempel finns det moduler för att anvĂ€nda NetworkManager, UPower, systemd-boot, GRUB, sgdisk, squashfs-tools och rsync. Installationen kan organiseras genom att ersĂ€tta en partition â data kopieras till en ny partition som görs aktiv istĂ€llet för den tidigare anvĂ€nda, vilket Ă€r praktiskt för test av nya installationer, vilket lĂ€mnar möjlighet att Ă„tergĂ„ till en tidigare version.
För att skapa en egen installatör baserad pÄ Calamares, behöver man bara vÀlja fÀrdiga moduler eller skriva egna, definiera installationslogiken för distributionen och anpassa utseendet. För att förenkla och pÄskynda utvecklingen kan moduler och komponenter i Calamares skapas med Python. All konfigurationsdata lagras i YAML-format. Calamares anvÀnds redan för installation av distributionerna Manjaro, Lubuntu, Asahi, EndeavourOS, wattOS, Rhino, Nitrux, Siduction, Peppermint OS, GeckoLinux, Chakra, NetRunner, KaOS, OpenMandriva och KDE neon. Projektet utvecklas med hjÀlp av KDE-, Fedora-, Kubuntu- och Maui-gemenskaperna.
I den nya utgÄvan:
- FullstÀndig kompatibilitet mellan grundramverket och de flesta moduler med Qt 6 och KDE Frameworks 6-biblioteken Àr sÀkerstÀlld. För alla QML-moduler tillhandahÄlls en uppsÀttning som Àr kompatibel med Qt6-filer. Möjligheten att bygga med Qt5 och KDE Frameworks 5 har bevarats.
- I paketvalgrÀnssnittet "packagechooser" har stöd för AppStream 1.0 metadata lagts till.
- I modulen "keyboard" har möjligheten att vÀlja mellan att anvÀnda instÀllningar för X11 eller DBus-tjÀnsten FreeDesktop locale1 implementerats. InstÀllningar för tangentbordslayouten för alla icke-ASCII-layouts bevaras.
- I modulen "dracut" har stöd för konfiguration av kÀrnnamn lagts till.
- Modulerna "keyboardq" och "localeq" har översatts frÄn ComboBox till widgeten Drawer.
- I avsnittsredigeraren (modul "partition") har möjligheten att vÀlja mellan formaten LUKS och LUKS2 lagts till. Möjlighet till att hoppa över installationen av bootloader Àr ocksÄ tillgÀnglig. Funktionaliteten i biblioteket KPMCore 21.12 (KDE Partition Manager) har aktiverats.
- Modulen "zfshostid" har lagts till för att generera /etc/hostid för ZFS.
- I modulen "bootloader" har alternativen för anvÀndning i kommandoraden för kÀrnan utökats.
- I modulen "displaymanager" har stödet för displayhanteraren kdm upphört.
- I modulen "fstab" har arbetet med konfigurationen /etc/fstab helt omarbetats. MÄnga instÀllningar har flyttats till modulen "mount".
- Krav pĂ„ kodstil har uppdaterats â kodformateringen överensstĂ€mmer nu med clang-format 15 eller 16.
- Namnrymderna som anvÀnds för C++-kod har omarbetats (alla anrop har flyttats till namnrymden Calamares, kopplingar till namnrymden CalamaresUtils har tagits bort).
- Som mask för substitution har ${var} anvÀnts istÀllet för @{var}.
- Biblioteket Boost::Python har tagits bort frĂ„n beroenden â för utveckling i Python anvĂ€nds nu den inbyggda uppsĂ€ttningen av bindings pybind11. För att Ă„terfĂ„ en byggnad med Boost::Python kan variabeln WITH_PYBIND11 sĂ€ttas till OFF.
KĂ€lla: opennet.ru
