The Arch Way: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Nathanhi (Diskussion | Beiträge)
K ArchLinux -> Arch Linux
 
(18 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
(oder: Worum es bei Arch Linux eigentlich geht ...)
(oder: Worum es bei Arch Linux eigentlich geht ...)
__NOTOC__
=Arch Linux-Prinzipien und -Philosophie=


Diese Seite versucht, die Prinzipien und die Philosophie hinter Arch Linux zu beschreiben. Es gab mal eine Zeit, da existierte kein schriftlich niedergeledigter Text über die Art, wie man Dinge unter Arch Linux erledigt. Sehr wahrscheinlich wird das nicht mehr vorkommen. Kurz gesagt steht Arch für:
Der "Arch Way" - oder die grundlegende Philosophie von Arch Linux - umfasst die folgenden fünf Prinzipien, die sich ihrerseits wiederum am besten mit dem [[KISS-Prinzip]] zusammenfassen lassen.
*Wahlfreiheit
*"Halt-es-einfach"; [[KISS-Prinzip]]
*Lernwillen, und
*Benutzerkontrolle


=Prinzipien=
==Einfach==
Viele Linux-Distributionen bezeichnen sich selbst als "einfach". Einfachheit selbst kann jedoch sehr unterschiedlich definiert werden.


Ich (Judd Vinet) fing aus zwei Gründen an, Arch Linux aufzubauen:
'''Arch Linux definiert Einfachheit als eine leichtgewichtige Grundstruktur ohne überflüssige Zusätze, Änderungen oder Komplikationen, die es jedem Benutzer erlaubt, das System nach seinen Bedürfnissen zu formen. Kurzum: Es ist ein eleganter, minimalistischer Ansatz.
1. Ich konnte keine Distribution finden, die meinen Idealen entsprach. Einige kamen ziemlich dicht an das heran, was ich wollte, doch es gab einige irritierende Missstände, oder unnötige Komplexitäten, die eher zu schaden als zu nutzen schienen.
'''
2. Aus Spass - um der Freien Software-Gemeinschaft etwas zurückzugeben, nachdem ich soviel daraus gezogen hatte.


Seiner Grundnatur nach ist Arch:
Eine leichte Basis-Struktur bedeutet nicht, dass das Basis-System klein sei. Stattdessen enthält das Basis-System keinerlei Wirrwarr, der bedeutende Teile des Systems verdecken könnte, oder der den Zugang zu diesen schwierig oder kompliziert gestaltet. Es gibt einen gut-gewählten Satz an Konfigurations-Dateien, die für schnellen Zugriff und leichte Bearbeitung optimiert wurden - ohne umständliche grafische Konfigurations-Werkzeuge, die dazu tendieren, die bestehenden Möglichkeiten vor dem Nutzer zu verstecken. Ein Arch-Linux-System ist daher bis ins kleinste Detail konfigurierbar.


*leichtgewichtig und einfach. Beachte, dass dies nicht bedeutet, es sei für jedermann ...
Arch Linux hält die innere Komplexität eines Linux-Systems aufrecht, indem es diese Komplexität dem Nutzer gut strukturiert offen legt. Arch-Linux-Entwickler und -Nutzer glauben, dass jeder Versuch, die Komplexität des Systems zu verstecken, am Ende nur zu einem weitaus komplexeren System führt - und daher vermieden werden sollte.
*NICHT als Einsteiger-Distro konzipiert; es wendet sich an erfahrene Benutzer. Das Ziel ist es, Arch zu einer perfekten Basis zu entwickeln, soweit dies menschenmöglich ist. Eine Basis enthält keine schicken Oberflächen-Werkzeuge oder automatische Konfigurations-Mechanismen, sondern setzt auf manuelle Konfiguration und wenige Grundfunktionen, die der Benutzer weiterentwickeln, und/oder mit denen er weiter lernen kann.
*Nochmals, ein Geschenk: "um der Freien Software-Gemeinschaft etwas zurückzugeben, nachdem ich soviel daraus gezogen hatte." Wenn Du ein Geschenk bekommst, wird es normalerweise erwartet, dass Du auch etwas gibst. Nutzer von Arch Linux sind daher jederzeit eingeladen, ihre eigenen Ideen, Vorschläge und Werkzeuge beizusteuern.
*Beachte, dass es zwei Seiten gibt, die etwas zu Arch Linux beitragen: Entwickler und Benutzer. Erwarte nicht, dass diese beiden Gruppen jemals eins werden. Doch beide leben in einer gegenseitigen Abhängigkeit, in der jeder aufnehmen kann, was er auf seiner Kiste haben will. Unsere ZIELE sind:
*Dass NICHT grafische Oberflächen oder Konfigurations-Werkzeuge die Kontrolle über das System übernehmen, sondern dass diese immer vom Benutzer kontrolliert werden. Es ist nichts falsch an grafischen Oberflächen, solange sie dieses Prinzip beachten.
*Dass man NICHT durch das begrenzt wird, was ein Werkzeug zu bieten hat. Wenn man ein Werkzeug entwickelt oder auswählt, sollte dies in einer bearbeitbaren und lesbaren Programmier-Sprache geschrieben sein, so dass andere Benutzer es verändern können, wenn sie dies wünschen [[KISS-Prinzip]].
*Im Kern seiner Entwicklung wird Arch Linux zu keiner Zeit in der nahen Zukunft IRGENDWELCHE "Einsteiger-freundlichen" Oberflächen oder Dienste zur Verfügung stellen.
*Wir einfachen Entwickler werden uns weiterhin bemühen, Arch Linux als solide Basis für alle und jeden zur Verfügung zu stellen. Wenn ihr das dann aufpeppen wollt - nur zu! Freie Rede, freies Bier, und all dieses Zeug.


=Philosophie=
==Richtigkeit des Codes über Bequemlichkeit==
Das Werte-System, an dem sich die Entwicklung von Arch Linux orientiert:
''„Correctness is clearly the prime quality. If a system does not do what it is supposed to do, then everything else about it matters little“'' („Richtigkeit ist eindeutig die wichtigste Eigenschaft. Wenn ein System nicht das tut, was es tun soll, ist alles andere weniger wichtig“) – Bertrand Meyer
*Das [[KISS-Prinzip]] ist die Basis der Arch-Entwicklung.
*Innerhalb von Arch bedeutet "einfach" nicht immer dasselbe wie in anderen Distros. Wir glauben, dass es wichtiger ist, etwas über die Hintergründe zu lernen, als etwas möglichst einfach erledigt zu bekommen.
*Sich auf grafische Oberflächen-Werkzeuge zu verlassen, um ein System aufzubauen, wird dem Nutzer am Ende eher schaden: Es wird ein Punkt in der Zukunft kommen, an dem der Benutzer all das wissen muss, was die Oberflächen verbergen.
*Wenn du versuchst, die Komplexität des Systems zu verbergen, landest Du am Ende bei einem noch komplexeren System. Stattdessen sollte man versuchen, das System möglichst einfach und aus dem Innern heraus möglichst logisch zu halten.
*Früher oder später wirst Du lernen müssen, Dir Deine Informationen aus dem Internet und den Foren zu ziehen (wenn die '''man-pages''' nicht mehr ausreichen). Dies ist das Erste, was ein Einsteiger lernen sollte: Wo man was im Netz findet.
* Während einige Nutzer vielleicht behaupten, diese oder jene Distro sei nicht wie andere, erlaubt Arch Linux den Benutzern, die Distro beliebig anzupassen, solange dies nicht gegen die Ideale des Entwurfs oder der Philosophie verstösst.
*Arch Linux unterscheidet sich von anderen: Bei Arch ist der Benutzer nicht der einzige Bezugspunkt. Wir wollen die Entwicklung neuer Werkzeuge und der Dokumentation minimal halten, während wir gleichzeitig das Verständnis der inneren Operationen eines Linux-Systems maximieren möchten. Ein wachsames Auge auf das [[KISS-Prinzip]] und die generellen Prinzipien von Arch machen unter dem Strich eine andere Herangehensweise aus.
*Die tolle Sache bei Beiträgen ist, dass Du nicht erst jemanden um Erlaubnis fragen musst. (Wie zu beweisen war.) Niemand kann Dich physisch davon abhalten, etwas zu schreiben, dass Du (persönlich) für nützlich hältst - selbst wenn die momentanen Machthaber das eher als Fluch denn als Segen ansehen. Schreib es auf und poste es als "Benutzer-Beitrag". Wenn andere Leute das mögen, wirst Du Rückmeldungen bekommen. Wenn so ziemlich jeder andere da draussen es total verabscheut, wirst Du gewiss auch Rückmeldungen bekommen - doch wen kümmert das? Es hat dich 20 Minuten gekostet, das zu schreiben - und Du hast etwas dabei gelernt. In dieser Situation kannst Du nur gewinnen, was auch immer sonst geschieht.
*Arch Linux ist das, was Du daraus machst!


=Kommentare=
Arch Linux setzt die Priorität genau so auf eine elegante Konzeptionierung, wie auf sauberen, richtigen, und einfachen Code, anstatt auf unnötige Patches, Automatisierung, Eyecandy oder Einsteigerfreundlichkeit. Distributionsspezifische Patches werden weitestgehend vermieden. Die einfache Implementierungen stehen über einer einfachen Benutzerschnittstelle.
Was Benutzer über Arch Linux geschrieben haben:
*"Ich habe einen Geschmackstest mit verschiedenen Distros versucht: Zenwalk, Redhat Fedora, Redhat Enterprise, T2, freebsd, netbsd, gobolinux und SUSE. Arch gewann knapp vor FreeBSD. Warum? Es war so einfach, X aufzusetzen, die Pakete waren SEHR aktuell und einfach zu installieren. Und ich musste nicht den ganzen Tag warten, bevor etwas kompiliert wurde - doch die Anwendungen sind i686-optimiert, und daher wirklich schnell. Ein Update des ganzen Systems hat nicht gleich Anwendungen zermalmt, wie das scheinbar bei Redhat der Fall war. Als Linux-Admin versuche ich als Erstes, eine Kiste aufzusetzen, dann installiere ich X für den Heimgebrauch, und dann möchte ich Anwendungen und Bibliotheken hinzufügen, so wie ich es für richtig halte. Wenn die Kiste erstmal läuft, überlasse ich es den Entwicklern, oder baue mir selbst was. Andere Distros hatten ein lahmes Paktverwaltungs-System, veraltete Pakete, oder es gab keine Doku, nach der man ein System ohne GUI konfigurieren konnte. Arch bietet mir den kürzesten Weg von A nach B. Für nähere Gründe, warum ich bei Arch bleibe, lies einfach [[Arch im Vergleich mit anderen Distributionen]]"
*"Nachdem ich eine Menge mit anderen Distros verbracht habe (Debian, Gentoo, Mandrake, Redhat, Fedora, Slackware, und selbst FreeBSD), denke ich nun, dass ich die Distro gefunden habe, die ich so lange gesucht habe."
*"Gleiche Erfahrung mit (K)ubuntu, Mandriva, und einigen anderen. Okay, openSUSE ist nett und einfach (das, was ich meiner Schwester empfehlen würde) (AdÜ: Fünf Euro in die Chauvi-Kasse!); aber Arch ist das Einzige, was wirklich rockt!" (AdÜ: Wieso darf Deine Schwester nicht abrocken?)
*"Ich habe verschiedene Distros ausprobiert, und am Ende (erschlafft) selbst RHCE, doch irgendwo gab es bei jeder was zu meckern."
*"Meine Traum-Distro war immer die Einfachheit von Slackware, gekoppelt mit der Abhängigkeits-Kontrolle von Debian. Und jetzt rate mal - genau das ist Arch."
*"Ich habe mit Arch auch meine letzte Distro gefunden."
*"Nachdem ich fast alle verfügbaren Distributionen ausprobiert habe, muss ich am Ende zustimmen, dass Arch die beste ist."
*"Hallo an alle! Ich habe mich gerade registriert, damit von all meinen Problemen berichten und hier um Hilfe fragen kann. Das Witzige ist: ICH HAB KEINE PROBLEME! Ich kann es selbst nicht fassen, aber alles funktioniert! Ich habe Arch heute installiert, hatte ein paar kleine Probleme mit xorg und der Sound-Einrichtung - doch alles was ich brauchte, fand ich in der Doku und den Foren!"
*"Ich habe Mandrake, Yoper, FC3/4, Mepis und Ubuntu ausprobiert. Ich suchte nach der perfekten Distro - und ich bin froh, dass ich Arch gefunden habe."
*"Ich suchte immer nach einer einfach zu bedienenden Distro, die das System nicht aufbläht, und die konfigurierbar blieb, ohne dass das System zusammenbrach. Nachdem ich soviele Distros ausprobiert habe, ist Arch für mich der Weg in die Zukunft. Und was das beste ist: Es ist wie meine allererste Distro (Slackware), nur mit Zugaben wie [[Pacman]] und KDEmod."


=Vorteile und Nachteile=
'''Die Einfachheit der Implementierung, ordentlicher Code, und Minimalismus sind die Leitprinzipien der Entwicklung von Arch.'''
==Vorteile==
*i686-optimiert
*[[Pacman]]: Schafft ein System-Upgrade mit einem einzigen Befehl: '''pacman -Syu'''
*[[Pacman]]: Abhängigkeits-Kontrolle; es wird kein X oder eine GUI benötigt
*[[Arch Build System]]: Es muss nur einmal ein Paket gebaut werden - eine neuere Version zu bauen, ist extrem einfach
*[[Arch Build System]]: Du kannst alle Pakete auf deiner Maschine mit einem Kommando bauen
*Allerneuste Pakete nach Deinem Wunsch, vollständig konfigurierbar
*Die Leute hinter den Kulissen sind (gleichzeitig!) freundlich, motiviert, und fähig
*Man kann ein funktionierendes System in weniger als 20 Minuten aufsetzen
*Es ist die perfekte Umgebung, in der man Linux lernen kann
*Es ist nicht sehr beliebt, da es kaum bekannt ist (doch ist das noch relevant?)


==Nachteile==
Dies wird durch die konsequente Anwendung der Arch-Philosophie erreicht, anstatt sich externen Einflüssen zu beugen. Das Entwicklerteam von Arch handelt entschlossen und mit Hingabe nach diesem Konzept. Jeder der diese Entschlossenheit und Hingabe teilt, ist Ermutigt, Arch zu verwenden.
*[[Pacman]]: braucht eine schnelle Internet-Verbindung, um immer aktuell zu bleiben (wird im Laufe der Zeit ein immer kleineres Problem)
 
*Einige Probleme resultieren aus zu neuen Paketen ("bleeding edge")
==Offen==
*Kompletter Mangel an Einsteiger-freundlichen Merkmalen
Offenheit geht Hand in Hand mit Einfachheit, und ist ein weiteres Leitprinzip der Entwicklung von Arch Linux.
*geringe Hardware-Erkennung (doch ist das relevant?)
 
*Info-Dateien sind fast immer detaillierter als '''man-pages''' (z.B. gcc-info etc.)
'''Arch verwendet einfache Werkzeuge, die nach der Offenheit ihrer Quellen gewählt oder erstellt werden.'''
*Es ist nicht sehr bekannt
 
Während Offenheit viele neue Linux-Nutzer überwältigen mag, empfinden erfahrene Benutzer dies als positiv und praktisch. Es entfernt alle Barrieren zwischen dem Nutzer und dem System, ermöglicht strenge Kontrolle über das System, und vereinfacht dessen Pflege.
 
Die offene Natur von Arch Linux bringt zudem eine ziemlich steile Lernkurve mit sich, doch erfahrene Benutzer denken oft, dass geschlossene Systeme weitaus schwerer zu kontrollieren sind.
 
Das Prinzip der Offenheit überträgt sich auch auf die Mitglieder der Gemeinschaft. Arch Linux-Nutzer sind sehr freigiebig in Bezug auf Hilfen und Ratschläge, sowie in Bezug auf eigene Beiträge im [[AUR]].
 
==Benutzerzentriert==
Während viele andere Linux-Distributionen versuchen, "Benutzer-freundlich" zu sein, war Arch Linux immer "Benutzer-zentriert" - und wird es immer bleiben.
 
'''Arch Linux macht den Benutzer zum Zentrum des Systems, indem es ihm volle Kontrolle über das System verleiht.'''
 
Arch-Linux-Nutzer verwalten ihr System vollkommen eigenständig. Das System selbst bietet dabei wenig Hilfe, mit Ausnahme einiger Werkzeuge, die die Wünsche des Nutzers möglichst elegant an das System übermitteln sollen.
 
Der Nutzer-zentrierte Aufbau impliziert zudem einen "Mach-es-dir-selbst"-Ansatz (ohne sexuelle Konnotationen). Statt bei den Entwicklern um eine neue Funktion zu betteln, tendieren Arch-Nutzer dazu, ihre Probleme selbst zu lösen, und dann die Ergebnisse mit der Gemeinschaft und den Entwicklern zu teilen - es gilt der Grundsatz "Erst machen, dann fragen". Dies gilt besonders für die Beiträge der Nutzer-Gemeinschaft im [[AUR]].
 
==Frei==
Ein anderes Leitprinzip der Entwicklung von Arch Linux ist die Wahlfreiheit. Den Nutzern wird nicht einfach nur erlaubt, alle Entscheidungen in Bezug auf die Systemkonfiguration selbst zu treffen - sie MÜSSEN dies tun.
 
'''Indem es das System einfach hält, gewährt Arch Linux die Freiheit, jegliche Wahl selbst zu treffen.'''
 
Ein frisch-installiertes Arch Linux-System enthält lediglich Linux-Kernkomponenten ohne jegliche automatische Konfiguration. Benutzer können ihr eigenes System nach eigenen Wünschen aufbauen. Von Anfang an kann jede Komponente entfernt oder durch andere Komponenten ersetzt werden.
 
Die große Zahl von Paketen in den unterschiedlichen Repositorien unterstützt die Wahlfreiheit zusätzlich. Im Vergleich zu anderen Distributionen ist das Erstellen eines neuen Paketes zudem ein einfacher, offener, Nutzer-zentrierter und freier Prozess. Neue Pakete können mit ein wenig Kenntnis des [[Arch Build System|ABS]] sehr leicht erstellt werden.
 
Oder, wie Judd Vinet (der Gründer des Arch-Projektes) sagte: "Arch Linux ist das, was Du daraus machst."
[[Kategorie:Arch-Linux-Projekte]]
[[en:The Arch Way]]

Aktuelle Version vom 12. April 2019, 12:43 Uhr

(oder: Worum es bei Arch Linux eigentlich geht ...)

Der "Arch Way" - oder die grundlegende Philosophie von Arch Linux - umfasst die folgenden fünf Prinzipien, die sich ihrerseits wiederum am besten mit dem KISS-Prinzip zusammenfassen lassen.

Einfach

Viele Linux-Distributionen bezeichnen sich selbst als "einfach". Einfachheit selbst kann jedoch sehr unterschiedlich definiert werden.

Arch Linux definiert Einfachheit als eine leichtgewichtige Grundstruktur ohne überflüssige Zusätze, Änderungen oder Komplikationen, die es jedem Benutzer erlaubt, das System nach seinen Bedürfnissen zu formen. Kurzum: Es ist ein eleganter, minimalistischer Ansatz.

Eine leichte Basis-Struktur bedeutet nicht, dass das Basis-System klein sei. Stattdessen enthält das Basis-System keinerlei Wirrwarr, der bedeutende Teile des Systems verdecken könnte, oder der den Zugang zu diesen schwierig oder kompliziert gestaltet. Es gibt einen gut-gewählten Satz an Konfigurations-Dateien, die für schnellen Zugriff und leichte Bearbeitung optimiert wurden - ohne umständliche grafische Konfigurations-Werkzeuge, die dazu tendieren, die bestehenden Möglichkeiten vor dem Nutzer zu verstecken. Ein Arch-Linux-System ist daher bis ins kleinste Detail konfigurierbar.

Arch Linux hält die innere Komplexität eines Linux-Systems aufrecht, indem es diese Komplexität dem Nutzer gut strukturiert offen legt. Arch-Linux-Entwickler und -Nutzer glauben, dass jeder Versuch, die Komplexität des Systems zu verstecken, am Ende nur zu einem weitaus komplexeren System führt - und daher vermieden werden sollte.

Richtigkeit des Codes über Bequemlichkeit

„Correctness is clearly the prime quality. If a system does not do what it is supposed to do, then everything else about it matters little“ („Richtigkeit ist eindeutig die wichtigste Eigenschaft. Wenn ein System nicht das tut, was es tun soll, ist alles andere weniger wichtig“) – Bertrand Meyer

Arch Linux setzt die Priorität genau so auf eine elegante Konzeptionierung, wie auf sauberen, richtigen, und einfachen Code, anstatt auf unnötige Patches, Automatisierung, Eyecandy oder Einsteigerfreundlichkeit. Distributionsspezifische Patches werden weitestgehend vermieden. Die einfache Implementierungen stehen über einer einfachen Benutzerschnittstelle.

Die Einfachheit der Implementierung, ordentlicher Code, und Minimalismus sind die Leitprinzipien der Entwicklung von Arch.

Dies wird durch die konsequente Anwendung der Arch-Philosophie erreicht, anstatt sich externen Einflüssen zu beugen. Das Entwicklerteam von Arch handelt entschlossen und mit Hingabe nach diesem Konzept. Jeder der diese Entschlossenheit und Hingabe teilt, ist Ermutigt, Arch zu verwenden.

Offen

Offenheit geht Hand in Hand mit Einfachheit, und ist ein weiteres Leitprinzip der Entwicklung von Arch Linux.

Arch verwendet einfache Werkzeuge, die nach der Offenheit ihrer Quellen gewählt oder erstellt werden.

Während Offenheit viele neue Linux-Nutzer überwältigen mag, empfinden erfahrene Benutzer dies als positiv und praktisch. Es entfernt alle Barrieren zwischen dem Nutzer und dem System, ermöglicht strenge Kontrolle über das System, und vereinfacht dessen Pflege.

Die offene Natur von Arch Linux bringt zudem eine ziemlich steile Lernkurve mit sich, doch erfahrene Benutzer denken oft, dass geschlossene Systeme weitaus schwerer zu kontrollieren sind.

Das Prinzip der Offenheit überträgt sich auch auf die Mitglieder der Gemeinschaft. Arch Linux-Nutzer sind sehr freigiebig in Bezug auf Hilfen und Ratschläge, sowie in Bezug auf eigene Beiträge im AUR.

Benutzerzentriert

Während viele andere Linux-Distributionen versuchen, "Benutzer-freundlich" zu sein, war Arch Linux immer "Benutzer-zentriert" - und wird es immer bleiben.

Arch Linux macht den Benutzer zum Zentrum des Systems, indem es ihm volle Kontrolle über das System verleiht.

Arch-Linux-Nutzer verwalten ihr System vollkommen eigenständig. Das System selbst bietet dabei wenig Hilfe, mit Ausnahme einiger Werkzeuge, die die Wünsche des Nutzers möglichst elegant an das System übermitteln sollen.

Der Nutzer-zentrierte Aufbau impliziert zudem einen "Mach-es-dir-selbst"-Ansatz (ohne sexuelle Konnotationen). Statt bei den Entwicklern um eine neue Funktion zu betteln, tendieren Arch-Nutzer dazu, ihre Probleme selbst zu lösen, und dann die Ergebnisse mit der Gemeinschaft und den Entwicklern zu teilen - es gilt der Grundsatz "Erst machen, dann fragen". Dies gilt besonders für die Beiträge der Nutzer-Gemeinschaft im AUR.

Frei

Ein anderes Leitprinzip der Entwicklung von Arch Linux ist die Wahlfreiheit. Den Nutzern wird nicht einfach nur erlaubt, alle Entscheidungen in Bezug auf die Systemkonfiguration selbst zu treffen - sie MÜSSEN dies tun.

Indem es das System einfach hält, gewährt Arch Linux die Freiheit, jegliche Wahl selbst zu treffen.

Ein frisch-installiertes Arch Linux-System enthält lediglich Linux-Kernkomponenten ohne jegliche automatische Konfiguration. Benutzer können ihr eigenes System nach eigenen Wünschen aufbauen. Von Anfang an kann jede Komponente entfernt oder durch andere Komponenten ersetzt werden.

Die große Zahl von Paketen in den unterschiedlichen Repositorien unterstützt die Wahlfreiheit zusätzlich. Im Vergleich zu anderen Distributionen ist das Erstellen eines neuen Paketes zudem ein einfacher, offener, Nutzer-zentrierter und freier Prozess. Neue Pakete können mit ein wenig Kenntnis des ABS sehr leicht erstellt werden.

Oder, wie Judd Vinet (der Gründer des Arch-Projektes) sagte: "Arch Linux ist das, was Du daraus machst."