Da die Wetter API von forecast.io zum Jahresende (2021) eingestellt wird und aktuell auch keine neuen Accounts gemacht werden können, habe ich versucht das ganze mit OpenWeatherMap zu realisieren.
Ich habe ein Fork vom Skin erstellt: https://github.com/MegaV0lt/vdr-plugin-skinflatplus
Neu sind unter anderem:
- Anzeige von freiem/belegten Platz in TB ab 999 GB
- Chartsymbole (Platte) mit Warn-Symbol
- update_weather.sh Skript zum holen und aufbereiten der Wetterdaten von openweathermap.org
Einstellungen (API-Key usw.) werden in der update_weather.conf gemacht. - Alle PNG.Dateien mit optipng behandelt
- Neues Thema 'Teal'
- Erstellung mit GraphicsMagick. Wahlweise mit ImageMagick 6
Plugin hat gebaut und läuft so weit (siehe Anhang)
bei den Meldungen beim Bauen blick ich nicht durch. Ich hoffe das macht keine Probleme:
Code
*** Plugin skinflatplus:
...
c++ -Wall -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/usr/local/src/vdr-2.4.5-MV/include -std=c++11 -c -DUSE_MENUSELECTION -DPLUGIN_NAME_I18N='"skinflatplus"' -DVDRLOGO=\"vdrlogo_gen2vdr\" -DWIDGETFOLDER='"/usr/local/lib/vdr/skinflatplus"' -I/usr/local/src/vdr-2.4.5-MV/include -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -I/usr/include/ImageMagick-6 -I/usr/include/uuid -I/usr/include/freetype2 -o baserender.o baserender.c
In file included from baserender.c:4:0:
services/epgsearch.h:164:12: Warnung: »template<class> class std::auto_ptr« ist veraltet [-Wdeprecated-declarations]
std::auto_ptr<cServiceHandler> handler;
^~~~~~~~
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/memory:80:0,
from services/epgsearch.h:33,
from baserender.c:4:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/bits/unique_ptr.h:51:28: Anmerkung: hier deklariert
template<typename> class auto_ptr;
^~~~~~~~
...
c++ -Wall -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/usr/local/src/vdr-2.4.5-MV/include -std=c++11 -c -DUSE_MENUSELECTION -DPLUGIN_NAME_I18N='"skinflatplus"' -DVDRLOGO=\"vdrlogo_gen2vdr\" -DWIDGETFOLDER='"/usr/local/lib/vdr/skinflatplus"' -I/usr/local/src/vdr-2.4.5-MV/include -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -fopenmp -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -I/usr/include/ImageMagick-6 -I/usr/include/uuid -I/usr/include/freetype2 -o displaymenu.o displaymenu.c
textscroller.c: In Elementfunktion »void cTextScrollers::Clear()«:
textscroller.c:145:17: Warnung: Löschen des Objekts mit polymorphem Klassentyp »cTextScroll« mit nicht-virtuellem Destruktor bewirkt möglicherweise undefiniertes Verhalten [-Wdelete-non-virtual-dtor]
delete *it;
^~
...
In file included from complexcontent.c:1:0:
complexcontent.h: In Elementfunktion »void cComplexContent::AddText(const char*, bool, cRect, tColor, tColor, cFont*, int, int, int)«:
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ContentType« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
class cSimpleContent
^~~~~~~~~~~~~~
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextWidth« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextHeight« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextAlignment« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorFg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorBg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h: In Elementfunktion »void cComplexContent::AddRect(cRect, tColor)«:
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ContentType« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
class cSimpleContent
^~~~~~~~~~~~~~
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextWidth« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextHeight« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextAlignment« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorFg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorBg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h: In Elementfunktion »void cComplexContent::AddImage(cImage*, cRect)«:
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ContentType« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
class cSimpleContent
^~~~~~~~~~~~~~
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextWidth« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextHeight« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::TextAlignment« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorFg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
complexcontent.h:19:7: Warnung: »<anonymous>.cSimpleContent::ColorBg« könnte in dieser Funktion uninitialisiert verwendet werden [-Wmaybe-uninitialized]
In file included from displaymenu.c:3:0:
services/epgsearch.h:164:12: Warnung: »template<class> class std::auto_ptr« ist veraltet [-Wdeprecated-declarations]
std::auto_ptr<cServiceHandler> handler;
^~~~~~~~
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/bits/locale_conv.h:41:0,
from /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/locale:43,
from /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/iomanip:43,
from displaymenu.h:11,
from displaymenu.c:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/g++-v7/bits/unique_ptr.h:51:28: Anmerkung: hier deklariert
template<typename> class auto_ptr;
^~~~~~~~
...
c++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/usr/local/src/vdr-2.4.5-MV/include -std=c++11 -shared config.o setup.o imagecache.o imagescaler.o imagemagickwrapper.o imageloader.o baserender.o complexcontent.o textscroller.o displaychannel.o displaymenu.o displaymessage.o displayreplay.o displaytracks.o displayvolume.o flat.o skinflatplus.o -lMagick++-6.Q16 -lMagickWand-6.Q16 -lMagickCore-6.Q16 -o libvdr-skinflatplus.so
Display More