Optionale Neutrino-Komponenten
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Re: Optionale Neutrino-Komponenten
Und jetzt ontopic:
Eigentlich möchte ich lieber zukünftig Lirc (sowie einige andere Teilen) als nachinstallierbare "Packages" sehen. Dann soll neutrino während Runtime (eventuell mit Kommandzeilenarg, oder existenz eines Files checken) entdecken, falls es Lirc-en soll oder nicht. Viel Platz kann es nicht kosten, falls richtig gemacht (vgl Posting oben). Lirc-Bezogene Teile können in shared libraries rausgelagert werden, die nur zusammen mit dem "Lirc-Package" installiert wird.
Aber dies ist Zukunftsmusik, und betrifft nicht das Patch. Checke es ruhig ein, eine gute und zukunftsträchtige Lösung ist es nicht.
Eigentlich möchte ich lieber zukünftig Lirc (sowie einige andere Teilen) als nachinstallierbare "Packages" sehen. Dann soll neutrino während Runtime (eventuell mit Kommandzeilenarg, oder existenz eines Files checken) entdecken, falls es Lirc-en soll oder nicht. Viel Platz kann es nicht kosten, falls richtig gemacht (vgl Posting oben). Lirc-Bezogene Teile können in shared libraries rausgelagert werden, die nur zusammen mit dem "Lirc-Package" installiert wird.
Aber dies ist Zukunftsmusik, und betrifft nicht das Patch. Checke es ruhig ein, eine gute und zukunftsträchtige Lösung ist es nicht.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
rhabarber1848 hat geschrieben:Neutrino, in einem Image ohne --enable-lirc kompiliert,
braucht weder libirsend.so noch liblircdclient.so.
erledigtBarf hat geschrieben:Checke es ruhig ein
-
- Einsteiger
- Beiträge: 216
- Registriert: Dienstag 1. Juni 2004, 12:24
Re: Optionale Neutrino-Komponenten
Ist nichts wildes, mir ist aufgefallen das es da noch einen kleinen schönheitsfehler gibt.rhabarber1848 hat geschrieben:Hier der Patch, um den Pictureviewer optional zu machen:
EDIT: Patch ist im CVS
Dieser Patch ist abhängig vom disable-audioplayer-Patch,
welcher vorher einzuspielen ist.
Als default wird der Pictureviewer kompiliert, um ihn zu deaktivieren:
cdk/configure --disable-pictureviewer
Ein Squashfs/LZMA-Image wird 304kb kleiner, wenn
Audioplayer und Pictureviewer deaktiviert wurden.
/bin/neutrino wird dabei unkomprimiert 200kb kleiner.
wenn man den pictureviewer deaktiviert, erscheint unter Einstellungen noch
"Audioplayer/Bildbetrachter" obwohl ja nur noch audioplayereinstellungen drin sind.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
Bitte testen: EDIT: Patch ist im CVSGrabber66 hat geschrieben:wenn man den pictureviewer deaktiviert, erscheint unter Einstellungen noch
"Audioplayer/Bildbetrachter" obwohl ja nur noch audioplayereinstellungen drin sind.
Zuletzt geändert von rhabarber1848 am Samstag 3. Oktober 2009, 21:40, insgesamt 1-mal geändert.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Optionale Neutrino-Komponenten
Finde ich unschön.
Kann man nicht irgendwo ganz am Anfang für diese "Variablen" locales ein
#if foo
#define FOOBAR1_LOCALE LOCALE_1
#else
#define FOOBAR1_LOCALE LOCALE_2
#endif
so dass man nicht den tatsächlichen Code damit unleserlich macht?
Kann man nicht irgendwo ganz am Anfang für diese "Variablen" locales ein
#if foo
#define FOOBAR1_LOCALE LOCALE_1
#else
#define FOOBAR1_LOCALE LOCALE_2
#endif
so dass man nicht den tatsächlichen Code damit unleserlich macht?
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
Patch aktualisiert, ein "#else" am Ende habe ich absichtlichseife hat geschrieben:Kann man nicht irgendwo ganz am Anfang für diese "Variablen" locales ein
nicht eingefügt, damit Kombinationen, die ich vergessen habe,
zu einem Kompilierfehler führen werden. Ich denke aber nicht,
dass dies geschehen wird.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
Mir sind kürzlich die vielen
im Neutrino-Sourcecode aufgefallen, für die es keine
configure-Option zu geben scheint.
Wenn dieser optionale Code, der per default aktiv ist,
deaktiviert wird, ist Neutrino nicht mehr gegen libtuxtxt.so
gelinkt und der optionale Tuxtxt-thread zum Einlesen
der Teletext-Daten ist nicht mehr verfügbar.
Mit diesem Patch EDIT: Patch ist im CVS,
der neuen cdk/configure-Option --disable-internal-tuxtxt
und einigen customisation-Befehlen
in root-neutrino-squashfs-local.sh kann ein Tuxtxt-loses
Image erstellt werden, für den, der es braucht.
Code: Alles auswählen
#ifndef TUXTXT_CFG_STANDALONE
configure-Option zu geben scheint.
Wenn dieser optionale Code, der per default aktiv ist,
deaktiviert wird, ist Neutrino nicht mehr gegen libtuxtxt.so
gelinkt und der optionale Tuxtxt-thread zum Einlesen
der Teletext-Daten ist nicht mehr verfügbar.
Mit diesem Patch EDIT: Patch ist im CVS,
der neuen cdk/configure-Option --disable-internal-tuxtxt
und einigen customisation-Befehlen
Code: Alles auswählen
newroot=$1/`basename $0 | sed "s/-local.sh//"`
rm -v $newroot/lib/libtuxtxt*
rm -v $newroot/lib/tuxbox/plugins/tuxtxt*
rm -v $newroot/share/fonts/tuxtxt*
Image erstellt werden, für den, der es braucht.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
committed:rhabarber1848 hat geschrieben:Mit diesem Patch EDIT: Patch ist im CVS,
der neuen cdk/configure-Option --disable-internal-tuxtxt
http://article.gmane.org/gmane.comp.vid ... x.scm/1302
http://article.gmane.org/gmane.comp.vid ... x.scm/1303
http://article.gmane.org/gmane.comp.vid ... x.scm/1304
http://article.gmane.org/gmane.comp.vid ... x.scm/1305
http://article.gmane.org/gmane.comp.vid ... x.scm/1306
http://article.gmane.org/gmane.comp.vid ... x.scm/1307
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: Optionale Neutrino-Komponenten
Kannst du nochmal draufschauen, ob das mit --disable-movieplayer, --disable-audioplayer auch wirklich greift?
Scheinbar klappt nur --disable-pictureviewer.
Scheinbar klappt nur --disable-pictureviewer.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Optionale Neutrino-Komponenten
committed:rhabarber1848 hat geschrieben:Sehe ich das richtig, dass innerhalb von Neutrino nur
EPGplus den Font md_khmurabi_10.ttf benutzt?
Wenn ja, wäre --disable-epgplus ein weiterer Kandidat,
um Neutrino zu reduzieren.
http://article.gmane.org/gmane.comp.vid ... x.scm/2120
http://article.gmane.org/gmane.comp.vid ... x.scm/2121
http://article.gmane.org/gmane.comp.vid ... x.scm/2122
http://article.gmane.org/gmane.comp.vid ... x.scm/2123
http://article.gmane.org/gmane.comp.vid ... x.scm/2124
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Optionale Neutrino-Komponenten
aber doch nicht mit noch mehr #ifdefs <heul/>
Wer soll denn den Code jemals maintainen?
Wer soll denn den Code jemals maintainen?
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Re: Optionale Neutrino-Komponenten
Ich teile seifes Bedenken gegen #ifdefs-verseuchten Code.
Ich habe einige Beiträge oben vorgeschlagen, optionale Komponente statt #ifdef-en in optionale shared objects (*.so, für Windowsiten: entspricht dlls) auszulagern. Das Programm soll dann funktionieren sowohl mit aus auch ohne die optionale "Plugins". Stichwort: dlopen. Damit gewinnt man sowohl maintainability (jeder developer kompiliert es bei jedem (vollständigen) Build, auch wenn er es nicht installiert) als auch die Nachinstallierbarkeit in laufenden Images (schreibbare Dateisysteme vorausgesetzt).
Vgl. Linuxkernel: In der 90-er Jahren hat man (mehr oder wenig) einen neunen Kernel kompilieren mussen für jeden Mauswechsel. Jetzt Kernelmodules, und der Bedarf Kerneln zu Bauen ist für normale Users nicht mehr da.
Ich habe einige Beiträge oben vorgeschlagen, optionale Komponente statt #ifdef-en in optionale shared objects (*.so, für Windowsiten: entspricht dlls) auszulagern. Das Programm soll dann funktionieren sowohl mit aus auch ohne die optionale "Plugins". Stichwort: dlopen. Damit gewinnt man sowohl maintainability (jeder developer kompiliert es bei jedem (vollständigen) Build, auch wenn er es nicht installiert) als auch die Nachinstallierbarkeit in laufenden Images (schreibbare Dateisysteme vorausgesetzt).
Vgl. Linuxkernel: In der 90-er Jahren hat man (mehr oder wenig) einen neunen Kernel kompilieren mussen für jeden Mauswechsel. Jetzt Kernelmodules, und der Bedarf Kerneln zu Bauen ist für normale Users nicht mehr da.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Optionale Neutrino-Komponenten
Was ich besonders schlimm dran finde: ich habe es irgendwann (als ich auf die Dreambox portiert habe) genauso gemacht. Und es später, mit der Tripledragon, nicht wirklich gefixt.
Jetzt, bei der Portierung von neutrino-HD auf die TD, merke ich erst um wieviel einfacher es geht, wenn man es auch nur ansatzweise ordentlich macht.
Jetzt, bei der Portierung von neutrino-HD auf die TD, merke ich erst um wieviel einfacher es geht, wenn man es auch nur ansatzweise ordentlich macht.