# DietPi

DietPi ist eine auf Debian basierende Linux-Distribution, die für Single-Board Computer, wie Raspberry Pi, ODROID, ROCK Pi, PINE64, NanoPi und ASUS Tinker Board entwickelt wurde. DietPi unterstützt ebenso PCs und Virtuelle Maschinen.

## Geschichte

Das DietPi-Projekt wurde von Daniel Knight (aka Fourdee) im Juli 2014 als Minimalimage auf Basis von Raspbian initial mit dem Ziel gegründet, unter Verwendung von Shell-Skripten Server-Setups auf dem Raspberry Pi zu vereinfachen und zu automatisieren. In der Folge wurde die Hardwareunterstützung auf weitere Einplatinencomputer und Virtualisierungssoftware erweitert. Anfang 2015 wurde der Quelltext in seinem damaligen 19. Release auf GitHub veröffentlicht. Seit 2019 wurde die Projektleitung von Daniel Knight an MichaIng übergeben, welcher seitdem die meisten Codeanteile beigetragen hat.
Das Projekt besitzt eine aktive Community und erzeugte über 200 Releases. Aktuell gibt es weltweit über ca. 120 000 laufende DietPi-Systeme.

## Eigenschaften / Hauptanwendungen
### Featureübersicht

Die Hauptfeatures von DietPi sind:
* DietPi ist eine beliebte Wahl für Server und headless Anwendungen. Es bietet Tools für die Einrichtung des Systems und die Installation und automatische Ersteinrichtung einer Reihe von Softwaretiteln, wie Nextcloud, Node-RED, OctoPrint und vielen weiteren. Es unterstützt zudem die Installation von grafischen Oberflächen auf Basis des X Window Systems.
* Das System ist auf minimale Nutzung von Hardwareressourcen fokussiert, wie (RAM Speicherverbrauch, Festplattenplatznutzung und -zugriffe).
* Es wird das komplette APT Software-Repository von Debian verwendet. Zusätzlich bietet DietPi Installationsoptionen für über 200 ausgewählte Softwaretitel und allgemeine Softwarestacks, wie den LAMP Webserver-Stack, welche mit allen Abhängigkeiten installiert und ready-to-use eingerichtet werden.
* Zusätzliche Shellskripte mit Kommandozeilen-Dialogen unterstützen das initiale Setup, die Konfiguration und Systemwartung.
* Mittels einer separaten Konfigurationsdatei kann die initiale Systeminstallation teilweise oder komplett automatisiert und ohne Benutzerinteraktion ausgeführt werden. Der erstmalige Systemstart führt dabei das automatisierte Setup aus und installiert die ausgewählten Softwarepakete.

### DietPi Tools

Die DietPi Tools vereinfachen das initiale System-Setup und die Anpassung der Systemkonfiguration. Die wichtigsten Tools sind:
* dietpi-software: Dieses Skript installiert die auswählbaren Softwarepakete im System. DietPi konfiguriert dabei alle notwendigen Einstellungen und startet entsprechende Systemdienste, sodass die Software direkt nutzbar ist.
* dietpi-services: Dieses Skript kann zum Steuern und Konfigurieren von Systemdiensten verwendet werden.
* dietpi-update: Dieses Skript prüft automatisch, ob Updates vorliegen und informiert bei deren Verfügbarkeit den Anwender. Updates werden direkt installiert, ohne ein neues Betriebssystemabbild aufspielen zu müssen.
* dietpi-config: Dieses Skript konfiguriert die hard- und softwarebezogenen Systemfunktionen, wie Audio, Netzwerkeinstellungen, Sicherheit (Security) und regionale Einstellungen (Lokalisierung).

### Unterstützte Hardware

Eine der Stärken von DietPi ist eine breitbandige Unterstützung unterschiedlicher Hardwaretypen:
* Single-Board Computer
** Raspberry Pi: Alle Versionen werden unterstützt: Raspberry Pi 400, Raspberry Pi 5/4/3/2/1, ebenso Raspberry Pi Zero/Zero W/Zero 2 W und alle Raspberry Pi Compute Module
** ODROID, PINE64, ROCK Pi, Allo Sparky SBC, ASUS Tinker Board, NanoPi und weitere
* (IBM-kompatible) PCs (x86-64, die 64-Bit-x86-Architektur)
* Virtuelle Maschinen: VMware (Player, Fusion und vSphere), VirtualBox, Hyper-V, Parallels, UTM, Proxmox
* RISC-V

## Organisation

Die DietPi-Projektleitung hält MichaIng. Daneben gibt es ein Kernteam, welches das Projekt und dessen Pflege organisiert. Als Open-Source-Software ist DietPi offen für Beiträge aus der Community.
Auf der Entwicklungsplattform GitHub wird der Open Source Softwarecode von DietPi unter den Lizenzbedingungen der GNU General Public License Version 2 bereitgestellt und entwickelt.