Last updated 01-10-2026
My goal was to configure a single SBC that would serve as a full desktop, play DVD and BluRay films, and stream Kanopy and Hoopla Digital films on their Android apps. Previously I had been running Kanopy and Hoopla on my x96max TV box Android 9..0 system. The Raspberry Pi 5B is significantly faster than my earlier Pi 4B which can also do all these things running either Raspberry PI OS Bookworm or Trixie. Here are some thoughts from a developer of Trixie on the differences: https://www.raspberrypi.com/news/trixie-the-new-version-of-raspberry-pi-os/
Here you see WayDroid running LineageOS Android Kanopy app in an LXC container. Note that you can launch individual Android apps from the host OS (Raspberry Pi OS, Trixie on a Pi 5B). You can drag the Android window, including over to a secondary monitor, resize it and toggle full screen with the F11 key just like your other Linux programs. You use the Raspsberry menu editor to enable the WayDroid apps you want to be able to click on. While Kanopy and Hoopladigital Android app runs successfully on the LineageOS image for the Raspberry Pi, and as in my screenshot load a catalog of available films when running in an LXC container under Waydroid, to actually play a film with protected content, these apps require wifi connection. That is available booting LineageOS, but not when running LinageOS in a LXC container which only provides internet virtually from the host OS. For this reason you can not configure wifi specifically for LineageOS running in an LXC container. You have internet for loading the Android app, but the App doesn’t know that it has wifi once it attempts to play protected content because the LinageOS wifi configuration setting process does not work since it has automatically been given virtual access from the host OS to the network. This seems to be a limit of the Android app as on my x96max Android 9.0 TV box, Kanopy would only play protected content with a wifi connection, not a wired ethernet connection. Fortunately I soon discovered that the most recent versions of Firefox and Chromium finally have plugin extensions so that both can now play Kanopy and Hoopladigital movies directly in these browsers. Firefox ESR version 146.0 has an extension, Widevine L3 Decrypter so add that extension and make sure drm is enabled and you can play Kanopy and Hoopladigital movies on the raspberry pi without their Android apps. Chromium also has an extension to support drm on the raspberry Pi OS. It is called PallyCon LicenseCipher For Chrome.

Pioneer BDR-XD05S – 8x External USB 3.0 Quad-Layer Blu-ray Disc DL DVD±RW/CD-RW Drive – Silver, used, no longer manufactured, but that was what I had to test BluRay.

JSAUX USB to 3.5mm Jack Audio Adapter,USB to Audio Jack Adapter Headset TRRS 4-Pole Female, External Stereo Sound Card. The Pi5B has no analog audio. With this adapter, you aren’t limited to using a monitor that can convert digital audio to analog audio out and the TRRS 4 -pole accepts standard earbuds. Its ID 0021:0b21 GHW-136D-20231007 USB Audio gives superior audio and volume to a different brand I returned that sounded tinny. I also liked that it matched my case.

I downloaded https://www.raspberrypi.com/software/operating-systems/
and choose the Raspberry Pi OS (64 bi) Debian 13, Trixie with Raspberry Pi Desktop released October 1, 2025, checked its downloaded sha256sum, and burned it to a Lexar 32 GB microSD card using the Raspberry Pi Imager. To play BluRay films, additional software must be installed. In a Terminal showing commands without responses to commands::
sudo apt update ... sudo apt install libaacs0 libbluray2 libbluray-bdj ... mkdir -p ~/.config/aacs/ cd ~/.config/aacs/ ... wget http://vlc-bluray.whoknowsmy.name/files/KEYDB.cfg
Note that the KEYDB must be capital letters. My first download of BluRay keys from another source was not and did not work for that reason. This worked fine for the first BluRay movie I played, but not the next published in 2025. To get newer movie to work, I went to http://fvonline-db.bplaced.net/ and scrolled down to:
Downloads
keydb.cfg – Language English (40099 entries)
The download is quite large and slow and is called keydb_eng.zip at 21,618,082 bytes. This is a compressed folder which contains inside it, keydb.cfg at 61,438,943 bytes once expanded by archiver or unzip. If you already have a KEYDB.cfg, you might want to save it as KEYDB.cfg.old instead of deleting it. Then you need to rename the new keydb.cfg to KEYDB.cfg and copy or move it to the ~/.config/aacs/ subdirectory using the mv command for both renaming and moving in one step.
DVD regions are a property of the DVD drive. BluRay regions are a property of the BluRay player software, VLC. Since the Raspberry pi is manufactured in the UK, the version of VLC is initially set to region B, not the USA = A.
Steps to change the region code in VLC (copy-paste from google search):
- Open Preferences: In the VLC menu, select Tools > Preferences.
- Show all settings: At the bottom of the Preferences window, click on All under “Show settings”.
- Find Blu-ray settings: In the left-hand pane, expand the Input / Codecs section and click on Access modules.
- Expand the Blu-ray list: Click on the arrow next to Blu-ray to expand the options.
- Select the correct region: From the “Region code” dropdown menu, select the region that matches your Blu-ray disc.
- Save and restart: Click Save and then restart VLC before trying to play the disc again.Since Kanopy and Hoopladigital Android apps do not work in an LXC container, because they require wifi, not just a virtual internet connection from the host, there is no reason to install Waydroid on the Raspberry pi if that is your only use for Android. However, Waydroid is a clever way to multi-boot both the Raspberry PiOS and Android on the same SBC if you have other uses for Android.
WayDroid is a project for installing LineageOS Android in a LXC container on Intel/AMD 64 bit Linux. The WayDroid website does not mention that an arm cpu build is available.
The Google Play Store requires you to register your device as well as lock it in order to qualify to use their Play Store. I did not want to lock my installation, indeed, whether it even could be locked is unknown because it does not have a hardware ROM when running in an LXC container.
Fortunately, there is another download site, https://en.aptoide.com/ to obtain Android apps and once you have downloaded from that site, from LineageOS, it is straight forward to click on the downloaded file to install it. I have only downloaded the Kanopy and Hoopladigital apps. Download apps at your own risk.
I am not familiar with the Android menu system, so I prefer the command line approach to install an .apk. In the Linux terminal,
i@raspberrypi:~ $ waydroid app install /home/pi/Downloads/kanopy.apk pi@raspberrypi:~ $
This will add the menu item automatically, but you have to use the Raspberry PI OS menu editor to enable its appearing. Most likely you will need to enable some permissions in WayDroid to allow installation of a package from an unknown source to complete.
Installation instructions here: https://docs.waydro.id/usage/install-on-desktops
Scroll down to Ubuntu/Debian and derivatives and follow their instructions.
Before you start that installation, there are two issues to check about your Raspberry Pi host installation. WayDroid requires Wayland compositor and it requires memory page size of 4096. The default on a Pi 4B is 4096, but on the Pi 5B it is 16256 and must be modified to 4096. Check in the linux terminal,
pi@raspberrypi:~ $ getconf PAGESIZE 16384" pi@raspberrypi:~ $
pi@raspberrypi:~ $ sudo nano /boot/firmware/config.txt
On the Raspberry Pi 5B, you need to move the block cursor to the end of this file with the arrow keys and add a final line below the [all], containing
kernel=kernel8.img
press control O to write out the corrections and control X to exit nano editor.
Reboot for this to take effect and recheck that you now have a memory page size of 4096.
Check that you have the default Wayland compositor:
pi@raspberrypi:~ $ env | grep "XDG_SESSION_TYPE" XDG_SESSION_TYPE=wayland pi@raspberrypi:~ $
if not wayand, change with:
pi@raspberrypi:~ $ sudo raspi-config pi@raspberrypi:~ $
