Kennt jemand eine Paket-Manager-Bibliothek für PHP (z. B. Apt oder Yum für Linux-Distributionen) auseinander von PEAR? Ich arbeite an einem System, das ein Paketverwaltungssystem für die Modulverwaltung enthalten sollte. Ich habe es geschafft, eine funktionierende Lösung mit PEAR zu bekommen, aber die Verwendung des PEAR-Clients für alles andere als die Verwaltung einer PEAR-Installation ist nicht wirklich die optimale Lösung, da sie nicht dafür ausgelegt ist. Ich müsste es ändern/erweitern (z. B. um Aktionen bei der Installation/Aktualisierung zu implementieren oder PEAR-spezifische Dateien wie Lockfiles vom Systemstamm wegzubewegen) und besonders der CLI-Clientcode ist ziemlich unordentlich und PHP4. Vielleicht hat jemand einige VorschlägePHP-Paket-Manager
- für eine alternative PEAR-Client-Bibliothek, die einfach zu bedienen und zu erweitern (die Server-Seite ein paar nette Implementierungen wie Pirum hat und pearhub)
- für ganz andere Paket-Management-Systeme in PHP geschrieben (einschließlich ideal Verfolgung von Abhängigkeiten und verschiedene Kanäle)
- für einige allgemeine Ideen, wie eine solche PM-System zu implementieren (ja, ich bin bastelt immer noch mit der Idee der Einführung eines solchen Systems von Grund auf neu)
ich weiß, das große System ems wie Magento und symfony verwenden PEAR für ihre PM. Magento verwendet eine gehackte Version des ursprünglichen PEAR-Clients (was ich gerne vermeiden würde), die Implementierung von symfony scheint in das Framework integriert zu sein, wäre aber ein guter Ausgangspunkt, um den Client zumindest von Grund auf neu zu schreiben. Wie auch immer, wenn jemand Vorschläge hat: bitte :)
Ich würde dir nicht empfehlen, selbst einen Paketmanager zu schreiben, es sei denn, es ist für Lernzwecke gedacht. Zum Beispiel ist das Abhängigkeitsmanagement nicht so einfach zu bekommen. – Artefacto
Halten Sie uns auf dem Laufenden, wenn Sie etwas Interessantes finden, oder starten Sie ein neues Projekt! ;) Btw, ich habe in letzter Zeit eine Frage zu "gnope" gesehen (siehe sourceforge). Nicht getestet, aber schien ein grafischer Paketinstallationsprogramm zu sein, wahrscheinlich PEAR-bezogen, aber mit verschiebbaren Paketen. Aber habe es nicht wirklich überprüft. – mario
Abgesehen von den untenstehenden Vorschlägen, habe ich mich mit der Implementierung eines PEAR-Installers von symfony befasst, bei dem es sich um eine Reihe von Klassen handelt, die die ursprünglichen PEAR-Installer erweitern. Scheint ganz einfach, eine eigene Client-Implementierung oben auf der Bibliothek zu schreiben. – maff