wie wird eine library im FHEM/lib-Verzeichnis beim update mitgeliefert?

Begonnen von ntruchsess, 17 Februar 2013, 17:01:07

Vorheriges Thema - Nächstes Thema

ntruchsess

Ich habe die perl-firmata library Device::Firmata für mein 10_FRM.pm-modul ins FHEM/lib Verzeichnis abgelegt und ins svn geladen. Leider wird die Library beim update von fhem nicht mit runtergeladen.

Wenn ich das ganze richtig verstehe wird von contrib/fhemupdate.pl alles was in %filelist2 aufgeführt ist auf den Server hochgeladen. Darf ich meine Library einfach mal da hinzufügen? Wie kann ich testen, ob ich das richtig gemacht habe (ich nehme an, dass ich nicht berechtigt bin irgendwas auf den fhem-server hochzuladen) und wer führt eigentlich regelmäßig den upload zum Server aus?

Gruß,

Norbert
while (!asleep()) {sheep++};

rudolfkoenig

fhemupdate.pm pflege ich, da es taeglich auf meinem Server ausgefuehrt wird, und testen fuer andere kompliziert ist. Es zu erweitern reicht nicht, da die UPD Kommandos fuer Updatefhem z.Zt noch keine Verzeichnisse anlegen, deswegen muss auch fhemupdate.control.fhem ergaenzt werden.
Habs gemacht, alles hochgeladen, und mit update getestet: es scheint zu tun.

Das ist aber nur eine kurzfristige Loesung. Letzte Woche haben sich noch weitere Kandidaten gemeldet, die darauf warten die im engeren Sinne nicht zu fhem gehoerende Pakete mit update auszuliefern:
- das Charting Frontend hat etwa 2MB (oder mehr?) an JavaScript Bibliotheken
- das SONOS Modul hat "diverse Open Source Libraries", weiterhin benoetigt es SOAP::Lite, LWP, etc. Evtl. werden auch OS/CPU-Abhaengige Bibliotheken benoetigt.

Ich will diese Entwicklung moeglichst am Anfang in geordnete Bahnen lenken. Da es in FHEMs Natur liegt, mit den unterschiedlichsten Systemen zu kommunizieren, wird es nur natuerlich sein, dass immer mehr fremd-Pakete in FHEM abgelegt werden wollen.
Ich will zwar einerseits den Anwendern das Leben einfach machen, will aber mit fhem weder den Paketmanager des Systems ersetzen, noch als Repository fuer "Fremdsoftware" dienen.

-> Wir hatten mit Martin (update.pm Autor) eine kurze Diskussion gehabt, wie mit update.pm auch "externe" Daten abgeholt werden koennten, aber da er daran arbeitet, kann ich keine Details dazu sagen.

ntruchsess

danke, dass das so schnell ging, funktioniert einwandfrei :-)

ich denke alles was es als CPAN-Modul gibt braucht man nicht mit ausliefern. Device::Firmata ist leider noch nicht soweit, da muss ich mich mal kundig machen, wie man das da reinbekommt.

Gruß,

Norbert
while (!asleep()) {sheep++};

Martin Fischer

> ich denke alles was es als CPAN-Modul gibt braucht man nicht mit ausliefern.

Ganz so einfach ist es leider nicht. Beispiele dafür sind u.a. die FRITZ!Box und NAS Systeme.

Will man die Philosophie von FHEM bei behalten, das FHEM auf möglichst vielen Systemen "Out of the Box" laufen soll, dann kann man die Verantwortung fehlende Module nachzuinstallieren nicht auf den Anwender verlagern.

Hier sollte also der Modul-Maintainer möglichst darauf achten, das FHEM nicht zu stark fragmentiert wird. Oder aber es muß ein Umdenken stattfinden, das man sich mit FHEM nur auf bestimmte Systeme konzentriert und diese dann aber zu 100% unterstützt. Wenn man FHEM dann auf anderen Systemen installieren will, dann bleibt es dem Zufall überlassen ob es läuft (oder eben nicht, weil keine Module installiert werden können).

Dies soll jetzt nicht als Grundlage für eine "endlos" Diskussion dienen, sondern spiegelt meine Meinung wieder. Letztlich ist es Rudis Entscheidung.

Gruß Martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.