Auf der Suche nach Tools zum Erstellen eines minimalen Linux-Desktops

13

Zunehmend bin ich unzufrieden mit der Tatsache, dass das Konfigurieren meines Linux- Desktops in der Regel das Entfernen von Bloat bedeutet, anstatt Features hinzuzufügen und zu optimieren. Ich bin zu dem Schluss gekommen, dass ich lieber mit etwas sehr Minimalem beginne und dann Pakete hinzufüge, die mir bekannt sind und zusätzliche Funktionen bieten.

Daher suche ich entweder eine sehr minimale Desktop-Distribution oder noch besser ein Tool, um eine solche Distribution zu erstellen . Oder mit anderen Worten, ich möchte den Paketmanager durch ein Build-Tool vor der Laufzeit ersetzen .

Ein Paketmanager wird nicht schaden, aber ich suche nach einer Distribution, die sich auf erweiterte Vorabkonfiguration anstatt auf ein riesiges Paket-Repository konzentriert

Ich habe mir verschiedene minimale Desktop-Distributionen angesehen, aber sie scheinen alle unterschiedliche Probleme zu lösen, z. Aber ich möchte keine minimale Distribution, weil ich alte Hardware habe, sondern weil ich wissen will, welchen Zweck die verschiedenen Teile haben. Das Laufen aus dem Hauptspeicher hilft da auch nicht, ich möchte etwas Minimales und Einfaches.

Da es anscheinend keine Distributionen gibt, die für die Art von Minimalismus entwickelt wurden, würde ich offensichtlich Linux From Scratch bauen . Obwohl ich möchte, dass der Build-Prozess stark angepasst wird, muss er auch automatisiert werden, da ich ihn einige Male ausführen muss, bis ich ein zufriedenstellendes System habe.

Es gibt zwar ein Tool für lfs, mit dem der Erstellungsprozess automatisiert werden kann, es ist jedoch kein wesentlicher Bestandteil. Grundsätzlich werden die zum Erstellen des Systems erforderlichen Schritte aus der Dokumentation extrahiert und anschließend automatisch ausgeführt. Ich bin auf der Suche nach etwas Robusterem und Fortgeschrittenem und habe auch keine Lust, XML zu bearbeiten.

Nach einigem Suchen habe ich Buildroot gefunden, das eingebettete Distributionen erstellen soll, aber auch die Installation von X11 ermöglicht. Vor dem Erstellen einer Toolchain und anschließend eines Rootfs kann der Build make menuconfiggenau wie unter Linux konfiguriert werden . Das sieht genau so aus, wie ich es mir vorgestellt habe, außer dass es für das Cross-Compilieren für eingebettete Systeme gedacht ist.

Was ich derzeit im Sinn habe, ist Buildroot zu verwenden, aber zuerst alle eingebetteten spezifischen Teile herauszureißen und sie durch die entsprechenden Teile von lfs zu ersetzen. Viel Arbeit.

Außerdem gibt es einige Probleme mit Buildroot, was am wichtigsten ist (wie aus meinen begrenzenden Tests hervorgeht). Nur das Aktivieren eines zusätzlichen Pakets führt dazu, dass die gesamte Sache von Grund auf neu erstellt wird, aber bei geringfügigen Änderungen möchte ich dies vermeiden.

Bevor ich diese Zeit Investition werde ich meine Suche nach einer Desktop - Distribution mit einem weiterhin Vorinstallation Build - Tool wie buildroot, sind eine Alternative zu / Gabel von buildroot für den Aufbau von Desktop - Distributionen gedacht.

Edit: Die bisherigen Antworten verweisen auf Distributionen wie zB Gentoo, die ich gerade verwende. Aber ich suche eine Alternative zu Distributionen wie Gentoo, Arch, Debian usw., da diese Distributionen nicht minimal genug sind. Außerdem muss man diese Distributionen nach der Installation anpassen. Ich möchte etwas, das vor der Installation angepasst werden kann.

Alle genannten Distributionen sind zwar fein verteilt, aber nicht das, wonach ich suche. Was ich suche, ist "buildroot for desktop" . Wenn Sie nicht wissen, was Baumwurzel ist, werden Sie wahrscheinlich keine Antwort geben können, die mich zufriedenstellt.

Auch halte ich diese Frage nicht für subjektiv. Ich kann einfach nichts finden, was meinen Bedürfnissen nahe kommt, und bitte Sie daher, mich auf Projekte hinzuweisen, die zumindest einen Teil meiner Bedürfnisse erfüllen könnten.

Tarsius
quelle

Antworten:

5

Sie können so etwas wie Kickstart verwenden , ein Feature des anacondaInstallationsprogramms von Fedora, CentOS, RHEL und abgeleiteten Distributionen, mit dem Sie eine Installation vollständig nach Ihren Wünschen anpassen können. Sie können auswählen, welche Pakete Sie installieren möchten, das Partitionslayout, die Netzwerkkonfiguration, Paket-Repositorys, das Root-Passwort und vieles mehr. Sie können auch Skripts vor und nach der Installation erstellen, die alle gewünschten Aktionen ausführen. Sie können die Installation vollautomatisch ausführen oder auswählen, wonach Sie gefragt werden sollen. Alle Einstellungen werden in einer einfachen (nicht XML) Textdatei definiert, die Sie von Hand oder mit dem grafischen system-config-kickstartWerkzeug vornehmen können .

Sobald Sie diese zusammengestellt haben, können Sie Ihre eigene benutzerdefinierte CD rollen, wenn Sie möchten, oder einen Netzwerkspeicherort in Ihrer Kickstart-Datei festlegen, der ein lokaler oder ein Internet-Spiegel über FTP, HTTP oder NFS sein kann. Ihre Kickstart-Datei kann sich auch im Netzwerk befinden. Sie können also nur eine Stub-Installations-CD brennen, um die Installation zu booten (oder Vanilla-Installationsmedien verwenden) und so viele verschiedene Konfigurationen verwenden, wie Sie möchten. Sie können es sogar über ein Netzwerk booten, wodurch Wechselmedien komplett entfallen.

Durch die Netzwerkoptionen oder benutzerdefinierten gesponnenen Medien ist das "riesige Paket-Repository" nicht mehr erforderlich. Es ist jedoch weiterhin verfügbar, wenn Sie etwas hinzufügen möchten. Wenn Sie sich jedoch ganz auf die Frechheit begeben möchten, können Sie Ihr eigenes Repository erstellen, RPMS aus dem Upstream auswählen, SRPMS nach Ihren Wünschen anpassen, Ihr eigenes Rolling durchführen oder sogar ein make && make installoder tar -jxfin das Post-Install-Skript hacken .

Viele Distributionen haben ähnliche Funktionen, von denen einige auch Kickstart-Dateien verstehen, selbst wenn sie nicht ihren gesamten Funktionsumfang implementieren (wie Debian).

Aufnäher
quelle
Vielen Dank für den Hinweis auf Kickstart. Ich habe mir die Dokumentation nur kurz angesehen, daher weiß ich noch nicht, ob sie meinen Bedürfnissen entspricht, aber sie sieht auf jeden Fall interessant aus. Du hast verstanden, wonach ich suche, Glückwunsch :-) Ich werde deine Antwort noch nicht "akzeptieren", weil ich immer noch mehr Antworten ermutigen möchte. Ich bin immer noch auf der Suche nach einem Baumeister, der eher aus einer minimalistischen Distribution als aus einer Mainstream-Distribution stammt. Letzterer mag es auch richtig machen, aber ich habe immer noch ein wenig mehr Vertrauen in den ersteren. Danke noch einmal.
Tarsius
1

Wenn Sie der Meinung sind, dass Gentoo zu viele Abhängigkeiten hat, können Sie Slackware ausprobieren. Oder eines seiner Derivate. Standardmäßig versucht Slackware nicht, Abhängigkeiten aufzulösen. Überhaupt.

Vielleicht möchten Sie auch Lunar Linux oder CRUX erkunden.

pepoluan
quelle
Es ist nicht so, dass ich noch nie von diesen Distributionen gehört hätte, sondern dass ich sie in der Vergangenheit ausgeschlossen hätte. Ich werde es mir jedoch noch einmal überlegen. Aus einem frischen Blick scheinen sie es zumindest wert zu sein, das zu tun. Vielen Dank.
Tarsius
1

Ich weiß, das ist etwas spät im Spiel, um zu antworten, aber haben Sie versucht, http://susestudio.com/ zu verwenden ? Sie können alle Pakete auswählen, die Sie möchten, um sie so klein zu machen, wie Sie möchten, ohne aufblähen zu müssen. Sie können Ihr eigenes Repository erstellen. Sie können Ihre eigenen Pakete hochladen, die in Ihrem Repo verfügbar sind. Es wird ein paar Stunden dauern, bis Sie es so bekommen, wie Sie es wollen, aber es erspart Ihnen die Mühe, Wurzeln zu schlagen.

Bbbh
quelle
1

Sind Sie auch auf LFScript gestoßen ?

Linux From Script (oder 'LFScript') ist eine inoffizielle Alternative für 'Automated Linux From Scratch'. LFScript enthält gründlich getestete Skripts, die aus den LFS- und BLFS-Büchern generiert wurden und mit denen Sie ein vollständiges Linux-Betriebssystem von Grund auf neu erstellen können.

Einige weitere Barebones-Linux-Distributionen (zum Auschecken über Wikipedia) enthalten:

  • Winziger Linux-Kern
  • Salix OS
  • SliTaz und Tiny SliTaz
  • Verdammt kleines Linux
  • ...
Gregor
quelle
0

Mit Gentoo Linux können Sie genau das erstellen, was Sie wollen. Von praktisch nichts bis hin zu einem überfüllten Desktop. Grundsätzlich handelt es sich um ein Build-System, mit dem Sie auch die Features für die Build-Zeit anpassen können.

Keith
quelle
Ich benutze Gentoo seit vielen Jahren. Ich habe auch Katalysator, Metro und kürzlich mein eigenes Erstellungsskript verwendet, um meine eigenen angepassten Phasen vor der Installation zu erstellen. Als ich noch einige Multimedia-Apps installiert hatte, waren ungefähr 700 Pakete installiert. Nachdem ich diese entfernt hatte, waren es nur noch ~ 400. Und das nach dem Entfernen vieler useflags, die nutzlose Abhängigkeiten mit sich bringen, und dem Entfernen einiger Pakete, die zwar nützlich sind, aber mit vielen Abhängigkeiten einhergehen. Nicht minimal.
Tarsius
Erwarten Sie also auch, etwas Nützliches damit zu tun? ;-)
Keith
1
Ich würde lieber Zeit in die Installation von Dingen investieren, die noch fehlen, anstatt zu untersuchen, was bereits installierte Dinge bewirken, um zu erfahren, dass ich sie nicht benötige, aber sie trotzdem nicht entfernen kann, weil sie fest in die Distribution eingebunden sind.
Tarsius
0

Tatsächlich gibt es viele Optionen dafür, und dies wird in den Bereich des Subjektiven gelangen.

Ich persönlich verwende PLD-Linux, mit dem ich ein funktionierendes Linux-System in etwa einem Dutzend Befehlen erstellen kann (Dateisystem formatieren, einhängen, Paket installieren, Bootloader konfigurieren, Hostnamen festlegen usw.). Wenn es um Pakete geht, kann ich ein Paket auswählen, das ich benötige, und mein System enthält nur die Abhängigkeiten für diese App. Wenn ich Apache brauche, installiere ich das und das System wartet nur mit den Grundlagen auf. Wenn ich Firefox brauche, installiere ich das und bekomme eine Grundmenge an X-Abhängigkeiten und im Grunde nichts anderes. Ich habe ein paar Skripte, um dies weiter zu automatisieren und nur ein oder zwei Befehle, um ein funktionierendes virtuelles System mit einem bestimmten Zweck zu erstellen.

Einige andere Linux-Distributionen wie ArchLinux und Gentoo sind darauf spezialisiert, entweder leichtgewichtig oder auf Ihre Bedürfnisse zugeschnitten zu sein. Wenn Sie spezifischere Hilfe bei einem von ihnen wünschen ...

Caleb
quelle