Select desired cobalt version in meta-rdk/conf/distro/include/rdkv.inc:
diff --git a/conf/distro/include/rdkv.inc b/conf/distro/include/rdkv.inc
index 31d8c74a..97ad8dfb 100644
--- a/conf/distro/include/rdkv.inc
+++ b/conf/distro/include/rdkv.inc
@@ -108,5 +108,5 @@ BBMASK .= "${@bb.utils.contains('DISTRO_FEATURES', 'ssl-1.1.1', '|.meta-rdk-ext/
inherit ${@bb.utils.contains('DISTRO_FEATURES', 'sbom', 'create-spdx', '', d)}
-PREFERRED_VERSION_libcobalt ?= "22.lts.stable"
+PREFERRED_VERSION_libcobalt ?= "23.lts.stable"
PREFERRED_VERSION_libcobalt_morty = "21.lts.stable"
Copy Rialto libraries and libcobalt to STB:
scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/rialto-gstreamer/git-r0/package/usr/lib/gstreamer-1.0/libgstrialtosinks.so root@[BOX_IP]:/tmp scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/rialto/git-r0/package/usr/lib/libRialtoClient.so root@[BOX_IP]:/tmp scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/rialto/git-r0/package/usr/bin/RialtoServer* root@[BOX_IP]:/tmp scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/rialto/git-r0/package/usr/lib/libRialtoServerManager.so root@[BOX_IP]:/tmp scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/rialto-ocdm/git-r0/package/usr/lib/libocdmRialto.so root@[BOX_IP]:/tmp scp -P [BOX_PORT] tmp/work/armv7vet2hf-neon-rdk-linux-gnueabi/libcobalt/21.lts.stable-7/deploy-ipks/armv7vet2hf-neon/libcobalt_21.lts.stable-7_armv7vet2hf-neon.ipk root@[BOX_IP]:/tmp
Login to STB and:
Mount libs:
mount -o bind libRialtoServerManager.so /usr/lib/libRialtoServerManager.so mount -o bind RialtoServer /usr/bin/RialtoServer mount -o bind /tmp/libRialtoClient.so /usr/lib/libRialtoClient.so mount -o bind /tmp/libgstrialtosinks.so /usr/lib/gstreamer-1.0/libgstrialtosinks.so mount -o bind /tmp/libocdmRialto.so /usr/lib/libocdmRialto.so mount -o bind RialtoServerManagerSim /usr/bin/RialtoServerManagerSim
Unpack libcobalt:
ar -x libcobalt_22.lts.stable-5_armv7vet2hf-neon.ipk tar -xf data.tar.xz
Run westeros:
XDG_RUNTIME_DIR=/tmp LD_PRELOAD=/usr/lib/libwesteros_gl.so.0 westeros --renderer /usr/lib/libwesteros_render_embedded.so.0.0.0 --embedded --display "westeros-cobalt" --window-size 1920x1080
Start server manager simulator. Environment variables enabling debug logs for server can be used in this step Rialto Debug Control. For other config options see Rialto Config:
RIALTO_DEBUG=5 RIALTO_SESSION_SERVER_STARTUP_TIMEOUT_MS=2000 SESSION_SERVER_ENV_VARS='XDG_RUNTIME_DIR=/tmp;RIALTO_SINKS_RANK=0;GST_REGISTRY=/tmp/rialto-server-gstreamer-cache.bin;WAYLAND_DISPLAY=westeros-cobalt;FORCE_SAP=TRUE;FORCE_SVP=TRUE' /usr/bin/RialtoServerManagerSim
Request ServerManager Simulator to spawn Rialto Server for YouTube app:
curl -X POST -d "" localhost:9008/SetState/YouTube/Active
At this step You can either:
Run YouTube Conformance Tests :
RIALTO_DEBUG=5 RIALTO_SOCKET_PATH=/tmp/rialto-0 XDG_RUNTIME_DIR=/tmp WAYLAND_DISPLAY=westeros-cobalt LD_LIBRARY_PATH="$PWD/usr/lib" COBALT_CONTENT_DIR="$PWD/usr/share/content/data" RIALTO_CLIENT_BACKEND_LIB="/usr/lib/libRialtoClient.so" usr/bin/cobalt_bin --url="https://ytlr-cert.appspot.com/2021/main.html"
or Run YouTube app:
RIALTO_DEBUG=5 RIALTO_SOCKET_PATH=/tmp/rialto-0 XDG_RUNTIME_DIR=/tmp WAYLAND_DISPLAY=westeros-cobalt LD_LIBRARY_PATH="$PWD/usr/lib" COBALT_CONTENT_DIR="$PWD/usr/share/content/data" RIALTO_CLIENT_BACKEND_LIB="/usr/lib/libRialtoClient.so" usr/bin/cobalt_bin
Rialto Debug Control environment variables can be used to enable client logs both for YT app and Conformance tests.