Linux als Entwicklungssystem

Notebook mit Debian 12 und dem Window Manager i3wm

Heute möchte ich etwas über meine Erfahrungen über den Einsatz von Linux als Entwicklungssystem berichten. Linux bietet Entwicklern viele Vorteile gegenüber dem Einsatz von z.B. Windows. Es gibt zwar Wege und Workarounds auf Windows-Systemen das Arbeiten erträglicher zu gestalten, doch oft merkt man, dass man mit Windows echt eingeschränkt arbeitet.

Debian 12 als Distribution

Linux-Betriebssysteme gibt es in verschiedenen „Geschmacksrichtungen“. Das beginnt bei der Distribution (also die Basis des Betriebssystems) und geht weiter über die individuell einrichtbare Benutzeroberfläche. Ich nutze auf meinen Entwicklungsrechnern (PC-Workstation und Notebook) jeweils Debian als Distribution und als Benutzeroberfläche (auch Window-Manager genannt, kurz: WIM) das Projekt i3wm. Diese Wahl ist nicht ganz zufällig gewählt, sondern ergibt sich aus meinen Anforderungen. Die Entwickler und Community hinter Debian wird aktiv gepflegt, es werden stabile Systeme bereitgestellt und vor allem gibt es einen guten Support. Außerdem ist Debian eine freie und quelloffene Distribution (das heißt, dass sie komplett kostenlos ist und jeder mitentwickeln darf).

i3wm als Desktop

Mit meinem Window-Manager „i3wm“ habe ich gute Erfahrungen gemacht, denn es ist für die produktive Nutzung vorgesehen und alle Fenster lassen sich über Tastaturbefehle verschieben, in der Größe ändern, schließen usw. Zwar geht es auch mit der Maus, aber nach einer kurzen Eingewöhnung möchte man die Maus nur noch in bestimmten Fällen, z.B. für Web-Browsing nutzen. Der besondere Vorteil von i3wm ist allerdings, dass die Fenster so angeordnet werden, dass möglichst wenig Platz verloren geht und den gesamten Bildschirm ausfüllen.

Gängige Tastaturbefehle

Programme starten
⊞ Win + eingabeTerminal / Befehlszeile öffnen
⊞ Win + DProgramme suchen und öffnen
Fensteroperationen
⊞ Win + umschalt ⇧ + QAktuelles Fenster mit Fokus beenden
⊞ Win + SFenster ineinander stapeln
⊞ Win + EFenster nebeneinander darstellen
⊞ Win + FFenster-Vollbildmodus umschalten
Verschieben von Fenstern
⊞ Win + umschalt ⇧ + linksFenster nach links verschieben
⊞ Win + umschalt ⇧ + rechtsFenster nach rechts verschieben
⊞ Win + umschalt ⇧ + obenFenster nach oben verschieben
⊞ Win + umschalt ⇧ + untenFenster nach unten verschieben
Arbeiten mit Workspaces
⊞ Win + umschalt ⇧ + 1/2/3...Fenster auf Workspace verschieben
⊞ Win + 1/2/3...Auf das Workspace wechseln

Dies trifft auf die Standard-Tastaturbelegung für i3wm zu, welche aber auch nach eigenem Belieben frei geändert werden können. Außerdem bietet i3wm noch mehr Befehle mit, die man in der Dokumentation einsehen kann.

Sinnvolle Tools

Zum Schluss möchte ich noch einige Empfehlungen aussprechen, mit denen ich durch den täglichen Einsatz viel Zeit und Nerven gespart habe. Jeder kann ja für sich selbst entscheiden, ob ihm das Tool zusagt oder eben nicht. Über Empfehlungen über Werkzeuge, die ihr hier vermissen würdet, würde ich mich riesig freuen.

Tool / WerkzeugBeschreibung
tldrZeigt einem die wichtigsten Argumente für einen beliebigen Befehl an. Es sozusagen wie eine Schnellstartanleitung um einen Befehl zu verstehen.
lazydockerFür die Personen die Docker nutzen könnte lazydocker gefallen. Es ist eine Möglichkeit um laufende Docker-Container auf einem System auf der Kommandozeile zu steuern – ohne Befehle eingeben zu müssen.
ddevKinderleichter Entwicklungsserver auf Basis von Docker. Dies sorgt dafür, dass man Projekte schnell mit anderen Entwicklern teilen kann, da Docker für seine portierbarkeit bekannt ist.
dogEine Verbesserung zum Systembefehl ‚dig‘, mit dem man DNS-Einträge abfragen kann.
fishEine smarte und benutzerfreundliche Alternative zur klassishen Bash-Shell.
zioxideMit dem Kurzbefehl ‚z‘ kann man schnell global zwischen Verzeichnissen wechseln, ohne den kompletten Pfad eingeben zu müssen. Es baut sich einen Suchindex auf und öffnet den Ordner, der am ehesten in Betracht kommen könnte.
microEine Verbesserung zum Dateieditor ’nano‘, welcher Syntax-Highlighting und benutzerfreundliche Tastaturbefehle nutzt.
batcatDateien ausgeben mit Syntax-Highlighting.

Weitere Beiträge