RDK Services are nothing but the RDK components are implemented as Thunder Nano Services and maintained in RDK Central's GitHub https://github.com/rdkcentral/rdkservices
Initially, this is started in the Comcast side and validated on the RPi reference platform and the Yocto recipe is maintained only in meta-rdk-video layer. Recently RDK services are made open-source and available in GitHub so, the recipe to avail this on CMF community (meta-cmf-video layer) as rdkservices_git.bbappend which points to GitHub's repository.
Currently, RDK services are excluded from Thunder Image builds and this depends with ServiceManager and WPE WebKit for (OpenCDM Implementation)
RDK UI Services works on top of RDK Shell which is an application management native component that provides the Wayland Composition. RDK Shell will be a small shared library that provides this feature. A sample binary is available to validate and also integrated as an RDK Service.
Architecture Wiki Page: RDKShell
For the Integration of RDK Services on Generic RDK image, below are the important components
- RDK Shell
- WPE's Thunder Framework
- RDK Services (Thunder Nano services developed by Comcast)
- WPE Framework's UI (for Controller UI)
- WebKit Browser Plugin (A Thunder Nano service for WPE WebKit Browser)
- RDK Reference App
Follow below link for build instructions
Open Issues in JIRA
|S. No.||Issue Description / log||Root Cause||Action done / Changes at||Remarks|
|1||ERROR: Layer 'cmf-raspberrypi' depends on layer 'wpe-layer', but this layer is not enabled in your configuration||meta-cmf-raspberrypi's layer has wpe layer dependency|
Removed wpe dependency from meta-cmf-raspberrypi/conf/layer.conf
|addressed from REFPLTV-521|
|2||ERROR: Nothing RPROVIDES 'gstreamer1.0-plugins-ugly' (but meta-rdk/recipes-core/packagegroups/packagegroup-rdk-media-common.bb RDEPENDS on or otherwise requires it)|
ERROR: gstreamer1.0-plugins-ugly was skipped: because it has a restricted license not whitelisted in LICENSE_FLAGS_WHITELIST
|RDK Media common package group has GStreamer ugly plugins run-time dependency|
commercial Whitelist flag added for Gstreamer ugly plugin and mpg123.
Also lame is not required for RDK build as it has a restricted license.
|3||ERROR: Nothing RPROVIDES 'gstreamer1.0-plugins-ugly-mpg123' (but meta-rdk-ext/recipes-extended/wpe-webkit/wpe-webkit_0.4.4.bb RDEPENDS on or otherwise requires it)||wpe-webkit has Gstreamer ugly plugins run-time dependency|
|4||| build-raspberrypi-rdk-mc/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/wpe-webkit/0.4.4+gitAUTOINC+5f899bc2e0-r0/git/Source/WebCore/platform/graphics/cairo/CairoUtilities.cpp:46:22: fatal error: cairo-gl.h: No such file or directory|
| #include <cairo-gl.h>
| compilation terminated.
|cairo bbappend from meta-rdk-ext is masked from meta-cmf-raspberrypi as meta-wpe has the same bbappend|
meta-wpe 's cairo bbappend is masked for Non-Thunder images and meta-rdk-ext 's cairo bbappend is masked for Thunder images
|5||bbappend files for RDK Images which are maintained in meta-cmf-raspberrypi layer are disabled the read-only-rootfs IMAGE Feature only under that bbappend scope so, if any new image bbappend introduced, the image generated with this feature.||removed read-only-rootfs feature globally for all RPI images|
|addressed from |
No controller UI on web browser launched though the port 9998 enabled (confirmed through netstat command)
The binding address is not set for WPE Framework
Change-set : 43520
|addressed from |
|7||RDK Shell distro feature to be enabled||RDK Shell distro feature includes RDKshell, wpeframework-ui and RDK reference app components into image|
Enabled in raspberrypi-rdk-mc.conf file
|8||new manifest to avoid meta-wpe||meta-wpe layer is no more needed for RDK services||a new manifest created on master branch of|
addressed from REFPLTV-516
|9||remove meta-wpe layer dependency in meta-cmf-raspberrypi layer||removed|
addressed from REFPLTV-521