Development:Pakfire
Aus IPFireWiki
Hier werde ich einmal meine geistige Planung für den Paketmanager ausbreiten. Das Dingen trägt den schönen Namen Pakfire. Perl wird die Sprache sein.
Inhaltsverzeichnis |
Binary
Das SUID-Binary wird wie alle anderen natürlich unter /usr/local/bin/pakfire zu finden sein, wobei sich die eigentlichen Programmdaten in /opt/pakfire befinden.
/usr/local/bin/pakfire callt also nur ein weiteres Script namens /opt/pakfire/pakfire, dass sich an den Routinen in /opt/pakfire/lib bedient.
Die Aufrufe sollen an die gängigen Paketmanager wie yum oder apt-get angelehnt werden und werden dann wie untenstehend von mir definiert.
Calls
update
Holt eine aktuelle Liste der Updates und Addons von einem unserer Update-Server, prüft alle installierten Addons auf eine Aktualisierung und spielt diese automatisch ein. Mit upgrade $* können auch vorher definierte Addons aktualisiert werden.
Wie wird das Basissystem auf dem aktuellen Stand gehalten? Extra-Befehl?
install $*
Installiert ein oder mehrere Pakete inklusiv Abhängigkeiten.
remove $*
Deinstalliert ein oder mehrere Pakete ohne Abhängigkeiten.
help
Gibt eine Kurzhilfe aus.
Funktionen
Die Funktionen liegen alle in /opt/pakfire/lib/functions.pl und werden auch in die pakfire.cgi mit einbezogen.
Shell-Funktionen für die (install.sh,uninstall.sh,update.sh)-Skripte liegen unter /opt/pakfire/lib/functions.sh und sollten auch in die Skripte einbezogen werden. Folgende sind verfügbar:
pakfire_extractall
Entpackt alle Dateien aus dem files.tbz2-Archiv nach /.

