Installer-Framework Calamares im Überblick

Aus LinuxUser 06/2017

Installer-Framework Calamares im Überblick

© Maxim Kazmin, 123RF

Baukasten

Mit Calamares erstellen Sie vereinfachte Routinen für die Installation einer Distribution. Einige Fallstricke gibt es dabei aber dennoch.

Falls Sie Linux bereits länger einsetzen und rund 15 Jahre zurückdenken, so brauchte es damals einiges Wissen und viel Zeit, um etwa Debian zu installieren. Das Nürnberger Unternehmen Suse begann Kartons zu verkaufen, die neben der Software ein Handbuch enthielten, das durch die Installation und die ersten Schritte führte.

Im Vergleich dazu lässt sich Linux heute recht einfach installieren. Trotzdem stellen noch heute viele Installer blutige Anfänger vor Probleme – etwa beim Partitionieren, das einer Operation am offenen Herzen gleicht, bei der leicht etwas schiefgeht. Die Installation von Arch Linux bleibt in diesem Zusammenhang außen vor, denn für dieses System existiert kein offizieller Installer. Sehen Sie aber auf Debian, Fedora (Abbildung 1) oder OpenSuse, so bieten deren Setups eine Fülle an Möglichkeiten, bis hin zu LVM/RAID auf verschlüsselten Systemen.

Abbildung 1: Fedoras Installer <span class="ui-element">Anaconda</span> bietet so viele M&ouml;glichkeiten, dass es Einsteiger mitunter &uuml;berfordert, die f&uuml;r sie wichtigen Schalter und Einstellungen zu identifizieren.

Abbildung 1: Fedoras Installer Anaconda bietet so viele Möglichkeiten, dass es Einsteiger mitunter überfordert, die für sie wichtigen Schalter und Einstellungen zu identifizieren.

Diese Vielfalt wirkt auf Einsteiger schnell verwirrend. Zudem sind diese Anwender es von Windows oder MacOS X her gewohnt, stets den gleichen Installer vor sich zu haben, den Sie mit der Zeit immer besser verstehen. Wer dagegen unter Linux häufig die Distribution wechselt, sieht sich aber immer wieder mit anderen Oberflächen konfrontiert.

Mit dem Auftauchen von Ubuntu besserte sich die Situation. Mit Version 6.06 haben dessen Entwickler Ubiquity [1] als Assistent für die Installation aus einem Live-System vorgestellt. Im Hintergrund kommen dabei Funktionen des Debian-Installers zum Einsatz. Die Wurzeln der Software lagen in der spanischen Distribution Guadalinex, die von der Regierung Gelder erhielt.

Fast alle Ubuntu-Ableger setzten in der Folge auf Ubiquity und vereinheitlichten so das Bild von Distributionen auf der Basis von Debian. Im Reich der RPM-Distributionen und bei Derivaten von Arch Linux herrschte und herrscht nach wie vor aber wilde Vielfalt.

Eine zündende Idee

Vor rund drei Jahren setzte dann der KDE-Entwickler Teo Mrnjavac (siehe Kasten “Interview”) eine Idee um, die Distributoren mittlerweile viel Arbeit abnimmt: Mit dem distributionsunabhängigen Installer-Framework Calamares [2] fügen Sie Module zu einem Installer mit speziellem Aussehen zusammen oder erstellen diese Module selbst. Dabei helfen rudimentäre Kenntnisse in Python, um den Code der Module zu verstehen – Bedingung ist das jedoch nicht.

Mrnjavac, der zuvor bereits die Audio-Anwendungen Amarok und Tomahawk mitentwickelt hat, arbeitet für Blue Systems [3]. Dieses Unternehmen beschäftigt rund ein Dutzend bekannter KDE-Entwickler und unterstützt derzeit die Distributionen KDE Neon, Netrunner, Maui sowie andere Linux-Projekte finanziell und bei der Entwicklung.

Nach einem Dreivierteljahr Entwicklungsarbeit war Calamares im Februar 2015 bereit für Version 1.0. Das Ergebnis umfasste 25 Module, die von der Bootloader-Unterstützung über das Partitionieren bis zur Benutzerverwaltung und der Installation selbst alles Grundsätzliche abdeckten. Eine Schnittstelle für von Distributoren selbst erstellte Module gab es ebenfalls. Davon macht unter anderem KaOS Gebrauch, indem es die Release Notes direkt im Installer anzeigt (Abbildung 2).

Abbildung 2: Die Distribution KaOS nutzt die Schnittstelle zu Calamares und zeigt dar&uuml;ber mit einem eigenen Modul die Release Notes im Installer an.

Abbildung 2: Die Distribution KaOS nutzt die Schnittstelle zu Calamares und zeigt darüber mit einem eigenen Modul die Release Notes im Installer an.

Interview

LinuxUser: Teo, vor rund drei Jahren hattest du die Idee eines distributionsneutralen Installer-Frameworks, das dann etwas später als Calamares erschien. Wie kamst du auf diese Idee?

Teo Mrnjavac: Vor Calamares war es bei neuen Distributionen oft üblich, den Installer einer anderen Distribution zu nehmen und diesen an die eigenen Bedürfnisse anzupassen. Dadurch entstanden im Endeffekt Forks von Forks, jeder mit seinen eigenen Fehlern und Unzulänglichkeiten. Ich erkannte, dass hier viel Arbeitszeit verschwendet wurde, und dass es für Distributoren sinnvoller wäre, zusammen an einem Produkt zu arbeiten, das sich alle teilen.

LU: Rund 20**Distributionen greifen bereits auf Calamares zurück, viele haben im Lauf der Entwicklung am Framework mitgearbeitet. Es sieht aus, als ob weitere Distributionen folgen. Wie sehen deine Zukunftspläne für das Projekt aus?

TM: Calamares ist ein modulares Werkzeug, das es Distributionen erlaubt, den Installer selbst zusammenzustellen, statt auf ein fertiges Produkt zu setzen. Das Schicksal von Calamares hängt also von den Zielen und Prioritäten und nicht zuletzt von den Bedürfnissen der jeweiligen Anwender ab. Mein wichtigstes Ziel bei diesem Projekt ist es, Distributoren zu befähigen, ihre eigenen Ideen in Sachen Installer umzusetzen und für eine reibungslose Installation zu sorgen.

LU: Was für Fähigkeiten braucht ein Distributor, um mit Calamares einen einsatzbereiten Installer zu erstellen?

TM: Calamares ist darauf ausgerichtet, einen simplen Einsatz zu ermöglichen. In den meisten Fällen passt der Distributor lediglich einige Dateien für die Konfiguration an. Darüber hinaus besteht die Möglichkeit, das Framework mit eigenen Modulen in Python oder C++ zu erweitern – das kann man machen, muss man aber keineswegs.

LU: Teo, vielen Dank für dieses Interview!

Stetige Entwicklung

Rund ein Jahr später erschien Calamares 2.0. Neu war der Einsatz des KDE-Partition Manager (Abbildung 3), der nach jahrelangem Schlummer wieder zum Leben erwachte. Das vereinfachte einerseits das Partitionieren und bot auf der anderen Seite erweiterte Optionen für den Vorgang. Calamares unterstützte darüber hinaus Operationen direkt nach der Installation. Das erlaubt es, Befehle auszuführen, wie etwa das Entfernen nicht mehr benötigter Bestandteile der Live-Session.

Abbildung 3: Der Partitionsmanager aus KDE erstrahlt seit Kurzem in neuem Glanz und kommt bei Calamares zum Einsatz.

Abbildung 3: Der Partitionsmanager aus KDE erstrahlt seit Kurzem in neuem Glanz und kommt bei Calamares zum Einsatz.

Seit Calamares 2.2 versteht sich die Software auf moderne NVME-Laufwerke, seit Version 2.3 gehört eine vollständige Verschlüsselung des zu installierenden Systems inklusive Bootloader und wahlweise Swap-Partition per LUKS-Spezifikation (“Linux Unified Key Setup”) zum Repertoire. Das gilt selbst für Dual-Boot-Umgebungen, etwa mit Windows 10.

Zudem haben die Entwickler die Funktion Replace Partition eingeführt, die es erlaubt, mit nur einem Mausklick eine Partition ohne Änderungen in Bezug auf die Größe oder den Typ wiederzuverwenden (Abbildung 4).

Abbildung 4: Die Option <span class="ui-element">Ersetze eine Partition</span> erlaubt das Installieren ohne &Auml;ndern des Typs oder der Gr&ouml;&szlig;e des Dateisystems.

Abbildung 4: Die Option Ersetze eine Partition erlaubt das Installieren ohne Ändern des Typs oder der Größe des Dateisystems.

Immer öfter

Aktuell ist seit Ende Januar 2016 Calamares 3.0.1, das bereits bei rund 20 Distributionen zum Einsatz kommt. Geschrieben ist es größtenteils in C++, für die Oberfläche verwenden die Entwickler das Qt-Framework. Das Scripting in den Modulen erledigt Python 3, zur Konfiguration der Software dient die Markup-Sprache YAML [4]. Einige der Module bekommen Anwender nie zu Gesicht; jene, die die Interaktion regeln, tauchen am linken Fensterrand als Reiter auf.

Im ersten Reiter (Abbildung 5), der den Titel Welcome trägt, wählen Sie unten die gewünschte Sprache. Entsprechend stellt Calamares dann im zweiten Reiter den Standort, die Zeitzone und die Sprache entsprechend ein. Das Modell der Tastatur und die genaue Tastenbelegung legen Sie dann im dritten Reiter fest und testen dort auch bei Bedarf die Parameter.

Abbildung 5: Calamares bietet die M&ouml;glichkeit, den Willkommensbildschirm individuell zu gestalten. Lediglich die Auswahl der verwendeten Sprache ist Standard.

Abbildung 5: Calamares bietet die Möglichkeit, den Willkommensbildschirm individuell zu gestalten. Lediglich die Auswahl der verwendeten Sprache ist Standard.

Reiter abarbeiten

Im nächsten Reiter geht es dann ans Eingemachte, sprich: ans Partitionieren. In der obersten Zeile zeigt die Software an, ob Sie das Medium per BIOS oder UEFI gebootet haben, und ob dabei MBR oder GPT zum Einsatz kam. Daneben wählen Sie das Speichermedium aus.

Im einfachsten Fall benutzen Sie die schon erwähnte Option Ersetze eine Partition, um einen Bereich ohne Ändern der Größe oder des Dateisystems für die Installation zu nutzen. Daneben gibt es die Option, die gesamte Platte zu löschen und im freigewordenen Platz zu installieren.

Die dritte Möglichkeit führt zur manuellen Partitionierung. Hier ändern Sie Partitionen in Sachen Größe, Dateisystem, Einhängepunkt und Markierung oder schreiben eine neue Partitionstabelle. Zudem bestimmen Sie, wo der Bootloader – wahlweise Systemd-boot oder Grub – landet.

Lass mich rein

Der Reiter Benutzer erweist sich als weniger kritisch, umfasst aber dennoch kleinere Fallstricke. Neben den Eingabefeldern für Namen und Passwörter finden sich auf der Seite zwei Checkboxen. Dabei geht es einmal um das automatische Einloggen ohne Abfrage des Passworts. Das hilft bei Rechnern, die Sie alleine und immer mit derselben Sitzung nutzen.

Die zweite Option, die bei Calamares Standard ist und bei einigen Distributionen ebenso bleibt, sieht nur je ein Passwort für den Hauptbenutzer und Root vor. Hier entscheiden Sie sich bewusst, ob Sie das möchten. Entfernen Sie den Haken, öffnet sich eine weitere Abfrage für ein eigenes Administrator-Passwort (Abbildung 6). Möchten Sie diese Voreinstellung für eine zu erstellende Distribution ändern, finden Sie den Parameter in /etc/calamares/modules/users.conf. Dort konfigurieren Sie bei Bedarf auch den Sudo-Mechanismus.

Abbildung 6: Bei Apricity, einem auf Calamares basierenden Installer, f&uuml;hrt die Grundeinstellung zum selben Passwort f&uuml;r Root und User.

Abbildung 6: Bei Apricity, einem auf Calamares basierenden Installer, führt die Grundeinstellung zum selben Passwort für Root und User.

Auf einen Blick

Unter Zusammenfassung sehen Sie noch einmal alle von Ihnen vorgenommenen Einstellungen und deren Auswirkungen (Abbildung 7). Der Reiter Installieren fragt vor Beginn sicherheitshalber ein letztes Mal ab, ob Sie den Prozess starten möchten. Bestätigen Sie das, visualisiert ein Balken den Fortschritt bei der Installation.

Abbildung 7: Die Zusammenfassung der gew&auml;hlten Parameter (hier: Manjaro) zeigt, was der Installer mit dem System macht, sobald Sie das Setup ansto&szlig;en.

Abbildung 7: Die Zusammenfassung der gewählten Parameter (hier: Manjaro) zeigt, was der Installer mit dem System macht, sobald Sie das Setup anstoßen.

Während der Installation besteht die Möglichkeit, eine Art Diashow mit Informationen über die Distribution und Konfiguration zu zeigen. Der Vorgang ist üblicherweise in wenigen Minuten erledigt. Der letzte Reiter informiert über den Abschluss der Installation und fordert zum Neustart auf.

Sollten Sie sich dafür interessieren, Calamares selbst zu bauen oder die Konfiguration nachzuvollziehen, so hilft das Wiki auf GitHub weiter [5]. Die entsprechenden Dateien finden Sie unterhalb von /etc/calamares/ auf mit Calamares ausgestatteten Live-Medien.

Fazit

Gängige Distributionen wie Debian, OpenSuse oder Fedora tauschen ihre über lange Jahre gepflegten Installer sicher nicht so bald gegen Calamares ein. Das liegt vor allem an distributionsspezifischen Funktionen, die Calamares nicht mitbringt. Fedora liefert Calamares immerhin als Paket aus, was den Entwicklern von Derivaten vermutlich gelegen kommt. Möglich wäre aber, dass Distributionen mit eigenem Installer Calamares zusätzlich als Alternative für Einsteiger anbieten.

Calamares hat bereits knapp zwei Dutzend Distributionen überzeugt, die nun auf das Baukasten-Modell setzen. Darunter finden sich Apricity, Chakra, KaOS, Manjaro, Siduction, Tanglu und – seit wenigen Wochen – KDE Neon. Calamares bietet vorgefertigte Module für die entsprechenden Schritte, eröffnet aber genügend Freiraum, eigene Module einzubringen und das Aussehen anzupassen.

Damit haben Einsteiger in Zukunft eine vermutlich weiter wachsende Zahl an Distributionen mit einem einheitlichen Installer an der Hand. So macht Vereinheitlichung unter Linux Sinn und Spaß.

Glossar

NVME
NVM Express. Schnittstelle, um nichtflüchtigen Speicher wie SSDs an den PCI-Express-Bus anzubinden.
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 06/2017 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben