Metainformationen zur Seite

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:start [2023/03/07 05:41] – [Unterverzeichnis: dpkg    OPTIONAL] Michael Schlenstedtentwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:start [2024/04/22 09:26] (aktuell) – [Unterverzeichnis: dpkg    OPTIONAL] Michael Schlenstedt
Zeile 1: Zeile 1:
-====== Plugin für den Loxberry entwickeln (ab Version 1.x) ======+====== Plugin für den Loxberry entwickeln ======
  
 <do Prof.Mobilux>HELP-Link in der plugin.cfg ergänzen</do> <do Prof.Mobilux>HELP-Link in der plugin.cfg ergänzen</do>
- 
-<do Prof.Mobilux>Mögichkeit apt-Dateien abhängig von der LB Major-Version zu verwenden, ergänzen. Erst ab LB3.0</do> 
- 
-<do Prof.Mobilux>Mögichkeit dpkg-Dateien abhängig von der Architektur zu verwenden (neue Architekturen nach uname -m) ergänzen. Erst ab LB3.0</do> 
- 
-<do Prof.Mobilux>Neue Möglichkeiten für Skripte (verschiedene Dateiendungen, ohne Endung, mehrere Skripte pro Typ) ergänzen</do> 
- 
-<WRAP center round tip 100%> 
- 
-== Plugin-Interface V2 == 
- 
-Diese Beschreibung erklärt die Erstellung eines Plugins mit dem **Plugin-Interface V2**, welches erst ab //LoxBerry V1.x// zur Verfügung steht. Plugins mit **Plugin-Interface V2** sind //nicht// kompatibel mit //LoxBerry V0.2.x//. 
- 
-</WRAP> 
  
 Der LoxBerry kann über Plugins erweitert werden. Plugins bestehen aus einer Reihe von Dateien in einem Standard-ZIP-Archiv, die bei der Installation an die notwendigen Orte im Dateisystem des LoxBerry kopiert werden. Bei diesen Dateien kann es sich z. B. um PHP- oder CGI-Skriptdateien handeln. Des weiteren kann durch das Plugin Software aus dem Software-Repository der Linuxdistribution  auf dem LoxBerry nachinstalliert werden. Der LoxBerry kann über Plugins erweitert werden. Plugins bestehen aus einer Reihe von Dateien in einem Standard-ZIP-Archiv, die bei der Installation an die notwendigen Orte im Dateisystem des LoxBerry kopiert werden. Bei diesen Dateien kann es sich z. B. um PHP- oder CGI-Skriptdateien handeln. Des weiteren kann durch das Plugin Software aus dem Software-Repository der Linuxdistribution  auf dem LoxBerry nachinstalliert werden.
Zeile 73: Zeile 59:
   - Installation der Datei "sudoers/sudoers" nach LBHOMEDIR/system/sudoers   - Installation der Datei "sudoers/sudoers" nach LBHOMEDIR/system/sudoers
   - Installation zusätzlicher Pakete aus dem Distributions-Repository mit apt-get aus der Datei dpkg/apt   - Installation zusätzlicher Pakete aus dem Distributions-Repository mit apt-get aus der Datei dpkg/apt
-  - Nur Raspberry-Architektur: Installation zusätzlicher mitgelieferter DEB-Pakete aus dem Verzeichnis dpkg/raspberry +  - Installation zusätzlicher mitgelieferter DEB-Pakete aus dem Verzeichnis dpkg/<arch>
-  - Nur X86-Architektur: Installation zusätzlicher mitgelieferter DEB-Pakete aus dem Verzeichnis dpkg/x86 +
-  - Nur X64-Architektur: Installation zusätzlicher mitgelieferter DEB-Pakete aus dem Verzeichnis dpkg/x64+
   - Ausführen der Datei "postinstall.sh" mit Userrechten (loxberry)   - Ausführen der Datei "postinstall.sh" mit Userrechten (loxberry)
   - Nur bei Update: Ausführen der Datei "postupgrade.sh" mit Userrechten (loxberry)   - Nur bei Update: Ausführen der Datei "postupgrade.sh" mit Userrechten (loxberry)
Zeile 97: Zeile 81:
 </code> </code>
  
- | Key  | Value  |+  | Key  | Value  |
 | 1 | NAME | Legt den Namen des Autors oder der Projektgruppe fest. | | 1 | NAME | Legt den Namen des Autors oder der Projektgruppe fest. |
 | 2 | EMAIL | Email-Adresse des Autors oder der Projektgruppe  | | 2 | EMAIL | Email-Adresse des Autors oder der Projektgruppe  |
Zeile 137: Zeile 121:
 </code> </code>
  
- | Key  | Value  |+  | Key  | Value  |
 | 1 | VERSION | Version des Plugins. Kann verwendet werden um spezielle Aktionen bei einem Update auszuführen (siehe unten). Wird zudem in der Plugin-Verwatung des LoxBerry angezeigt.\\ \\ Die Version muss eine [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:versionsnummern_von_plugins|korrekte Versionssyntax]] verwenden, andernfalls wird das Plugin bei automatischen Plugin-Updates ausgelassen!  | | 1 | VERSION | Version des Plugins. Kann verwendet werden um spezielle Aktionen bei einem Update auszuführen (siehe unten). Wird zudem in der Plugin-Verwatung des LoxBerry angezeigt.\\ \\ Die Version muss eine [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:versionsnummern_von_plugins|korrekte Versionssyntax]] verwenden, andernfalls wird das Plugin bei automatischen Plugin-Updates ausgelassen!  |
 | 2 | NAME  | Kurzer Plugin-Name. Keine Leerzeichen, keine Sonderzeichen, nur Kleinbuchstaben! Dieser Name wird als Dateiname verwendet, wenn z. B. in zentralen Ordnern (Cron, Daemon, siehe unten) Skripte für das Plugin angelegt werden sollen. Dieser Name muss im System einzigartig sein. Wenn festgestellt wird, dass bereits ein Plugin installiert ist, welches den gleichen Namen verwendet, wird bei der Installation automatisch "01", "02" usw. angehängt. //Wir empfehlen, NAME und FOLDER gleich zu setzen.// | | 2 | NAME  | Kurzer Plugin-Name. Keine Leerzeichen, keine Sonderzeichen, nur Kleinbuchstaben! Dieser Name wird als Dateiname verwendet, wenn z. B. in zentralen Ordnern (Cron, Daemon, siehe unten) Skripte für das Plugin angelegt werden sollen. Dieser Name muss im System einzigartig sein. Wenn festgestellt wird, dass bereits ein Plugin installiert ist, welches den gleichen Namen verwendet, wird bei der Installation automatisch "01", "02" usw. angehängt. //Wir empfehlen, NAME und FOLDER gleich zu setzen.// |
Zeile 172: Zeile 156:
 # plugin do not use any special features of an architecture. # plugin do not use any special features of an architecture.
 # PUT in QUOTES ""!!! # PUT in QUOTES ""!!!
-# Please check http://www.loxwiki.eu:80/x/VoU_AQ section 5.1 for supported +ARCHITECTURE="aarch64,x86_64"
-# architectures and strings you should use here. +
-ARCHITECTURE="raspberry,x86"+
  
 # If you are using the LoxBerry::Log Modul in PHP or Perl and you would like to use User-defined loglevels, # If you are using the LoxBerry::Log Modul in PHP or Perl and you would like to use User-defined loglevels,
Zeile 185: Zeile 167:
 </code> </code>
  
- | Key  | Value  |  |+  | Key  | Value  |   |
 | 1 | REBOOT  | Wenn true, wird nach der Plugin-Installation zum Reboot aufgefordert. Mögliche Werte: true | false  | | 1 | REBOOT  | Wenn true, wird nach der Plugin-Installation zum Reboot aufgefordert. Mögliche Werte: true | false  |
 | 2 | LB_MINIMUM  | Minimalversion des LoxBerry, ab der das Plugin lauffähig ist, z. B. 1.0.1. Mögliche Werte: Versionstring | false  | | 2 | LB_MINIMUM  | Minimalversion des LoxBerry, ab der das Plugin lauffähig ist, z. B. 1.0.1. Mögliche Werte: Versionstring | false  |
 | 3 | LB_MAXIMUM  | Maximalversion des LoxBerry, bis zu der das Plugin lauffähig ist, z. B. 1.0.1. Mögliche Werte: Versionstring | false  | | 3 | LB_MAXIMUM  | Maximalversion des LoxBerry, bis zu der das Plugin lauffähig ist, z. B. 1.0.1. Mögliche Werte: Versionstring | false  |
-| 4 | ARCHITECTURE  | Falls das Plugin nur auf bestimmten Hardware-Plattformen lauffähig ist (z. B. weil es die GPIOs des Raspberry voraussetzt), kann das hier angegeben werden. Mehrere Plattformen können durch Kommata getrennt werden. Aktuell unterstützt: raspberryx86 und x64 |  |+| 4 | ARCHITECTURE  | Falls das Plugin nur auf bestimmten Hardware-Plattformen lauffähig ist (z. B. weil es die GPIOs des Raspberry voraussetzt), kann das hier angegeben werden. Mehrere Plattformen können durch Kommata getrennt werden. Aktuell unterstützt: %%armv6larmv7l, aarch64, x86_64, riscv64Es wird das Kürzel erwartet, welches der Befehl "uname -m" zurückliefert. Siehe auch: %%[[https://github.com/MichaIng/DietPi/blob/master/dietpi/func/dietpi-obtain_hw_model|https://github.com/MichaIng/DietPi/blob/master/dietpi/func/dietpi-obtain_hw_model]]  |   |
 | 5 | CUSTOM_LOGLEVELS | Wenn true, wird im Plugin Management Widget dem User eine Auswahl an verschiedenen Loglevels angezeigt. Kann in Verbindung mit den LoxBerry Libraries LoxBerry::Log verwendet werden, siehe [[entwickler:perl_develop_plugins_with_perl:perl_loxberry_sdk_dokumentation:perlmodul_loxberrylog:start|Perl-Modul LoxBerry::Log]] bzw. [[entwickler:php_develop_plugins_with_php:php_loxberry_sdk_documentation:php_module_loxberry_logphp:start|PHP Module loxberry_log.php]]. Es kann auch als Ersatz einer eigenen Loglevel-Einstellung im Plugin verwendet werden, siehe [[entwickler:perl_develop_plugins_with_perl:perl_loxberry_sdk_dokumentation:perlmodul_loxberrysystem:loxberrysystempluginloglevel|LoxBerry::System::pluginloglevel]] bzw. [[entwickler:php_develop_plugins_with_php:php_loxberry_sdk_documentation:php_module_loxberry_systemphp:lbsystempluginloglevel|LBSystem::pluginloglevel]]. Mögliche Werte: true | false | | 5 | CUSTOM_LOGLEVELS | Wenn true, wird im Plugin Management Widget dem User eine Auswahl an verschiedenen Loglevels angezeigt. Kann in Verbindung mit den LoxBerry Libraries LoxBerry::Log verwendet werden, siehe [[entwickler:perl_develop_plugins_with_perl:perl_loxberry_sdk_dokumentation:perlmodul_loxberrylog:start|Perl-Modul LoxBerry::Log]] bzw. [[entwickler:php_develop_plugins_with_php:php_loxberry_sdk_documentation:php_module_loxberry_logphp:start|PHP Module loxberry_log.php]]. Es kann auch als Ersatz einer eigenen Loglevel-Einstellung im Plugin verwendet werden, siehe [[entwickler:perl_develop_plugins_with_perl:perl_loxberry_sdk_dokumentation:perlmodul_loxberrysystem:loxberrysystempluginloglevel|LoxBerry::System::pluginloglevel]] bzw. [[entwickler:php_develop_plugins_with_php:php_loxberry_sdk_documentation:php_module_loxberry_systemphp:lbsystempluginloglevel|LBSystem::pluginloglevel]]. Mögliche Werte: true | false |
-| 6 | INTERFACE  | Die Interface-Version, für die das Plugin entwickelt wurde. Wenn Du die Features aus dieser anleitung verwenden möchtest, muss hier 2.0 eingetragen werden.  |+| 6 | INTERFACE  | Die Interface-Version, für die das Plugin entwickelt wurde. Wenn Du die Features aus dieser anleitung verwenden möchtest, muss hier 2.0 eingetragen werden.   |
  
 **4. Block: AUTOUPDATE** **4. Block: AUTOUPDATE**
Zeile 216: Zeile 198:
 </code> </code>
  
- | Key  | Value  |  |+  | Key  | Value  |   |
 | 1 | AUTOMATIC_UPDATES | Legt fest, ob das Plugin die AutoUpdate-Funktion zur Verfügung stellt oder nicht. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]] Mögliche Werte: true | false | | 1 | AUTOMATIC_UPDATES | Legt fest, ob das Plugin die AutoUpdate-Funktion zur Verfügung stellt oder nicht. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]] Mögliche Werte: true | false |
-| 2 | RELEASECFG  | Eine URL, unter der die Datei mit den Einstellungen zum Release vom System heruntergeladen werden kann. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]]  +| 2 | RELEASECFG  | Eine URL, unter der die Datei mit den Einstellungen zum Release vom System heruntergeladen werden kann. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]]   
-| 3 | PRERELEASECFG  | Eine URL, unter der die Datei mit den Einstellungen zum PreRelease vom System heruntergeladen werden kann. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]]  |+| 3 | PRERELEASECFG  | Eine URL, unter der die Datei mit den Einstellungen zum PreRelease vom System heruntergeladen werden kann. Details hier: [[entwickler:plugin_fur_den_loxberry_entwickeln_ab_version_1x:plugin_autoupdate_function_for_plugins|AutoUpdate Funktion für Plugins]]   |
  
 ====== Rootverzeichnis - Datei: preroot.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: preroot.sh    OPTIONAL ======
  
-Bei der Datei //preroot.sh// handelt es sich um ein Shell-Skript, welches vor der Installation ausgeführt wird. Die Datei wird mit Root-Rechten ausgeführt, hat also umfangreiche Rechte im System. Sie sollte nur verwendet werden, wenn unbedingt Kommandos als User root ausgeführt werden müssen. Ansonsten sollte man das Skript "preinstall.sh" verwenden (siehe unten). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor der Installation als Benutzer "root" ausgeführt. Es kann verwendet werden um Dinge für die Installation vorzubereiten oder Kommandos auf dem System auszuführen.+Bei der Datei //preroot.sh// handelt es sich um ein Shell-Skript, welches vor der Installation ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein). Die Datei wird mit Root-Rechten ausgeführt, hat also umfangreiche Rechte im System. Sie sollte nur verwendet werden, wenn unbedingt Kommandos als User root ausgeführt werden müssen. Ansonsten sollte man das Skript "preinstall.sh" verwenden (siehe unten). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor der Installation als Benutzer "root" ausgeführt. Es kann verwendet werden um Dinge für die Installation vorzubereiten oder Kommandos auf dem System auszuführen.
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 347: Zeile 329:
 ====== Rootverzeichnis - Datei: preupgrade.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: preupgrade.sh    OPTIONAL ======
  
-Bei der Datei //preupgrade.sh// handelt es sich um ein Shell-Skript, welches vor der Installation und nur im Falle eines Plugin-Updates ausgeführt wird. D. h. das Plugin muss schon auf dem System existieren, damit dieses Skript bei der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor einem Update als Benutzer "loxberry" ausgeführt. Es kann verwendet werden, um im Falle eines Updates Konfigurationsdateien des Plugins zu sichern. +Bei der Datei //preupgrade.sh// handelt es sich um ein Shell-Skript, welches vor der Installation und nur im Falle eines Plugin-Updates ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein).  D. h. das Plugin muss schon auf dem System existieren, damit dieses Skript bei der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor einem Update als Benutzer "loxberry" ausgeführt. Es kann verwendet werden, um im Falle eines Updates Konfigurationsdateien des Plugins zu sichern. 
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 471: Zeile 453:
 ====== Rootverzeichnis - Datei: preinstall.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: preinstall.sh    OPTIONAL ======
  
-Bei der Datei //preinstall.sh// handelt es sich um ein Shell-Skript, welches vor der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor der Installation als Benutzer "loxberry" ausgeführt. Es kann verwendet werden um Dinge für die Installation vorzubereiten oder Kommandos auf dem System auszuführen.+Bei der Datei //preinstall.sh// handelt es sich um ein Shell-Skript, welches vor der Installation ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird vor der Installation als Benutzer "loxberry" ausgeführt. Es kann verwendet werden um Dinge für die Installation vorzubereiten oder Kommandos auf dem System auszuführen.
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 593: Zeile 575:
 ====== Rootverzeichnis - Datei: postinstall.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: postinstall.sh    OPTIONAL ======
  
-Bei der Datei //postinstall.sh// handelt es sich um ein Shell-Skript, welches nach der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach der Installation als Benutzer "loxberry" ausgeführt. Es kann verwendet werden um Dinge nach der Installation aufzubereiten oder Kommandos auf dem System auszuführen.+Bei der Datei //postinstall.sh// handelt es sich um ein Shell-Skript, welches nach der Installation ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach der Installation als Benutzer "loxberry" ausgeführt. Es kann verwendet werden um Dinge nach der Installation aufzubereiten oder Kommandos auf dem System auszuführen.
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 716: Zeile 698:
 ====== Rootverzeichnis - Datei: postupgrade.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: postupgrade.sh    OPTIONAL ======
  
-Bei der Datei //postupgrade.sh// handelt es sich um ein Shell-Skript, welches nach der Installation und nur im Falle eines Plugin-Updates ausgeführt wird. D. h. das Plugin muss schon auf dem System existieren, damit dieses Skript nach der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach einem Update als Benutzer "loxberry" ausgeführt. Es kann verwendet werden, um im Falle eines Updates Konfigurationsdateien des Plugins nach der Installation wieder zurückzuspielen. +Bei der Datei //postupgrade.sh// handelt es sich um ein Shell-Skript, welches nach der Installation und nur im Falle eines Plugin-Updates ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein). D. h. das Plugin muss schon auf dem System existieren, damit dieses Skript nach der Installation ausgeführt wird. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach einem Update als Benutzer "loxberry" ausgeführt. Es kann verwendet werden, um im Falle eines Updates Konfigurationsdateien des Plugins nach der Installation wieder zurückzuspielen. 
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 840: Zeile 822:
 ====== Rootverzeichnis - Datei: postroot.sh    OPTIONAL ====== ====== Rootverzeichnis - Datei: postroot.sh    OPTIONAL ======
  
-Bei der Datei //postroot.sh// handelt es sich um ein Shell-Skript, welches nach der Installation ausgeführt wird. Die Datei wird mit Root-Rechten ausgeführt, hat also umfangreiche Rechte im System. Sie sollte nur verwendet werden, wenn unbedingt Kommandos als User root ausgeführt werden müssen. Ansonsten sollte man das Skript "postinstall.sh" verwenden (siehe oben). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach der Installation als Benutzer "root" ausgeführt. Es kann verwendet werden um Dinge nach der Installation aufzubereiten oder Kommandos auf dem System auszuführen.+Bei der Datei //postroot.sh// handelt es sich um ein Shell-Skript, welches nach der Installation ausgeführt wird. Ab LoxBerry 3.0 sind auch andere Dateiendungen erlaubt (zum Beispiel .pl oder .py - in diesem Fall muss der Shebang im Skript korrekt gesetzt sein). Die Datei wird mit Root-Rechten ausgeführt, hat also umfangreiche Rechte im System. Sie sollte nur verwendet werden, wenn unbedingt Kommandos als User root ausgeführt werden müssen. Ansonsten sollte man das Skript "postinstall.sh" verwenden (siehe oben). Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Das Skript wird nach der Installation als Benutzer "root" ausgeführt. Es kann verwendet werden um Dinge nach der Installation aufzubereiten oder Kommandos auf dem System auszuführen.
  
 Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können: Dem Skript werden auf der Kommandozeile folgende Parameter übergeben, die innerhalb des Bashskripts verwendet werden können:
Zeile 1124: Zeile 1106:
 Hierzu muss im Verzeichnis die Datei "''%%apt%%''" existieren. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Kommentare werden durch eine vorangestellte Raute eingeleitet und bei der Interpretation der Datei ignoriert. Jedes zu installierende Paket muss in einer separaten Zeile eingetragen werden. Hierzu muss im Verzeichnis die Datei "''%%apt%%''" existieren. Es handelt sich um eine ASCII-Datei im Unix-Dateiformat (Zeilenende: Linefeed, LF). Kommentare werden durch eine vorangestellte Raute eingeleitet und bei der Interpretation der Datei ignoriert. Jedes zu installierende Paket muss in einer separaten Zeile eingetragen werden.
  
-Es ist auch möglich, abhängig von der LoxBerry Major-Versionsnummer unterschiedliche Pakete zu installieren. Sinnvoll, falls sich Pakete zwischen Debian-Releases geändert haben. Eine LoxBerry Major-Version steht auch immer für ein Releasewechsel bei Debian. Dazu wird die Major Versionsnummer an den Dateinamen der apt-Datei angehängt, also z. B.  "''%%apt3%%''" für LoxBerry 3.x, "''%%apt2%%''" für LoxBerry 2.x usw.+Es ist auch möglich, abhängig von der **LoxBerry** Major-Versionsnummer unterschiedliche Pakete zu installieren. Dazu wird die Major Versionsnummer an den Dateinamen der apt-Datei angehängt, also z. B.  "''%%apt3%%''" für LoxBerry 3.x, "''%%apt2%%''" für LoxBerry 2.x usw. //Dieser Weg ist mittlerweile obsolete - siehe nächsten Abschnitt.// 
 + 
 +Zusätzlich ist es auch möglich, abhängig von der **Debian** Major-Versionsnummer unterschiedliche Pakete zu installieren. Diese Änderung war notwendig, weil nicht mehr zwingend anhand der LoxBerry Major-Versionsnummer auf die darunter liegende Debian-Versionsnummer geschlossen werden kann (seit DietPi kann z. B. LoxBerry 3.0 auf unterschiedlichen Distributionsversionen laufen). Dazu wird die Debian Major Versionsnummer an den Dateinamen der apt-Datei angehängt, also z. B.  "''%%apt11%%''" für Debian 11 (Bullseye), "''%%apt12%%''" für Debian 12 (Bookworm) usw.
  
 Vor Installation der Pakete wird der Befehl  ''%%apt-get -q -y update%%'' sowie der Befehl ''dpkg --configure -a'' ausgeführt, um die Paketquellen zu aktualisieren. Anschließend werden alle Pakete gemeinsam an den Befehl ''%%apt-get -q -y install%%'' weitergeleitet und somit die Pakete installiert. Vor Installation der Pakete wird der Befehl  ''%%apt-get -q -y update%%'' sowie der Befehl ''dpkg --configure -a'' ausgeführt, um die Paketquellen zu aktualisieren. Anschließend werden alle Pakete gemeinsam an den Befehl ''%%apt-get -q -y install%%'' weitergeleitet und somit die Pakete installiert.
Zeile 1150: Zeile 1134:
 | %%Aarch64 bzw. Arm64%%  | ''%%aarch64%%''  | Raspberry 2-4 und Zero2 | | %%Aarch64 bzw. Arm64%%  | ''%%aarch64%%''  | Raspberry 2-4 und Zero2 |
 | %%x86_64%% | ''%%x86_64%%'' | Virtual Box VM (u. a.) | | %%x86_64%% | ''%%x86_64%%'' | Virtual Box VM (u. a.) |
-| %%Riscv64%% | ''%%riscv64%%'' |+| %%Riscv64%% | ''%%riscv64%%''  |
  
 In die Unterverzeichnisse werden dann die DEB-Pakete direkt abgelegt. Diese werden auf der jeweiligen Hardware-Plattform in alphabetischer Reihenfolge per ''%%dpkg -i%%'' installiert. In die Unterverzeichnisse werden dann die DEB-Pakete direkt abgelegt. Diese werden auf der jeweiligen Hardware-Plattform in alphabetischer Reihenfolge per ''%%dpkg -i%%'' installiert.