pi-apps
pi-apps copied to clipboard
Better Chromium: install Raspberry Pi Foundation chromium on rpi Ubuntu
suggestion from https://github.com/Botspot/pi-apps/issues/2528 closes https://github.com/Botspot/pi-apps/issues/2528
see https://github.com/Pi-Apps-Coders/chromium-debs for the repo that re-hosts the rpi debs
~~known issues: this triggers the frankendebian check~~ see latest commits
Also I am fairly sure that for widevine to show up at all on ubuntu, this logic needs to be changed to display the widevine option for the chromium
package.
#detect if Widevine is enabled
if [ -d /opt/WidevineCdm ];then
widevine=TRUE
else
widevine=FALSE
fi
#detect if Widevine can be enabled
if package_available libwidevinecdm0 && package_installed chromium-browser;then
widevine_possible=TRUE
widevine_message=(--field="Enable Widevine DRM (for Netflix, Spotify)":CHK "$widevine")
else
widevine_possible=FALSE
widevine_message=()
fi
Also I am fairly sure that for widevine to show up at all on ubuntu, this logic needs to be changed to display the widevine option for the
chromium
package.#detect if Widevine is enabled if [ -d /opt/WidevineCdm ];then widevine=TRUE else widevine=FALSE fi #detect if Widevine can be enabled if package_available libwidevinecdm0 && package_installed chromium-browser;then widevine_possible=TRUE widevine_message=(--field="Enable Widevine DRM (for Netflix, Spotify)":CHK "$widevine") else widevine_possible=FALSE widevine_message=() fi
Nope. The logic is good and working since the piOS libwidevinecdm0
and chromium-browser
packages are used. See the apt repo.
There is no such chromium
package on any version of ubuntu.
Only vanilla debian has a chromium
package and there would likely never be a time when chromium-browser
was unavailable and libwidevinecdm0
available. Additionally, vanilla chromium
would not be able to benefit from libwidevinecdm0
since that package places widevine in a non-standard /opt folder that vanilla chromium
does not look for when attempting to load widevine. The final nail in vanilla debian chromium
is that it should not even attempt to look for widevine on arm64 at all (needs an additional patch), that is only added in piOS chromium-browser and ubuntu chromium-browser (snap and bionic deb) thanks to my request https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/2008433
Nope. The logic is good and working since the piOS
libwidevinecdm0
andchromium-browser
packages are used. See the apt repo.
It appeared to me that the chromium
package was to be used on ubuntu, as seen in this code snippet:
# Ubuntu must be 22.10+ (GLIBC 2.36+) to be compatible with widevine
if printf '%s\n' "22.10" "$__os_release" | sort -CV; then
echo 'Package: chromium*
Pin: release o=Pi-Apps-Coders chromium-debs
Pin-Priority: 1000
Package: libwidevinecdm0
Pin: release o=Pi-Apps-Coders chromium-debs
Pin-Priority: 500
Package: chromium*
Pin: release o=Ubuntu*
Pin-Priority: -1' | sudo tee /etc/apt/preferences.d/chromium >/dev/null
But now I see your wildcard character *
which explains everything. Is there a reason you did not specify chromium-browser*
instead?
But now I see your wildcard character
*
which explains everything. Is there a reason you did not specifychromium-browser*
instead?
Yes. There are other packages that need to be included. Refer to the apt repo https://github.com/Pi-Apps-Coders/chromium-debs/releases/tag/apt-release
chromium-*
then?
Also, surely you have ruled out the option for directly using the https://archive.raspberrypi.com/debian/ repo on ubuntu but restricting it to only offer the chromium packages, right?
Also, surely you have ruled out the option for directly using the https://archive.raspberrypi.com/debian/ repo on ubuntu but restricting it to only offer the chromium packages, right?
@Botspot yes, that was previously done, see https://github.com/Botspot/pi-apps/pull/2529/commits/92a7aadeda55db505ac04c4ff999a6abb359b3d5 . I ruled it too dangerous if the user happened to remove the pin they could end up with a broken system. It also triggers the frankendebian check so that is another problem with using it.
chromium-*
then?
yeah that is fine as well. The pi-apps-coders chromium-debs apt repos contents are fixed so the exact pin format does not really matter. https://github.com/Pi-Apps-Coders/chromium-debs/blob/3845b4f2785e8058ea2e12f06f14e2bcb5f1ac9f/download-chromium.sh#L3-L11
I have tested every iteration of this. I think it is all working as intended and suggested here https://github.com/Botspot/pi-apps/issues/2528#issuecomment-1894625374
@Botspot is anything else needed here?
Looks good. Merge at will.