Widevine for chromium

Hi,

First post around here - great fan - running dietpi on rpi hw for a few years now.
I’m trying to setup widevine for chromium (for spotify web player - I know there are alternatives but I want this one )
I’m running diet-pi arm64 on CM4 (rpi4) so I found there is no libwidevine for arm64 I’ve tried to install the armhf chromium.
what I did/worked so far:
sudo dpkg --add-architecture armhf
added armhf arch in dpkg list

deb [arch=arm64,armhf] https://deb.debian.org/debian/ bullseye main contrib non-free
deb [arch=arm64,armhf] https://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb [arch=arm64,armhf] https://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb [arch=arm64,armhf] https://deb.debian.org/debian/ bullseye-backports main contrib non-free

then sudo apt install libc6:armhf
but when I try to install chromium i get:

dietpi@DietPi:~$ sudo apt install chromium-browser:armhf
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 chromium-browser:armhf : Depends: libgtk-3-0:armhf but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
dietpi@DietPi:~$ sudo apt install libgtk-3-0:armhf
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libgtk-3-0:armhf : Depends: libgtk-3-common:armhf (>= 3.24.24-4+rpt4+deb11u2)
E: Unable to correct problems, you have held broken packages.
dietpi@DietPi:~$ sudo apt install libgtk-3-common:armhf
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'libgtk-3-common' instead of 'libgtk-3-common:armhf'
libgtk-3-common is already the newest version (3.24.24-4+deb11u2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

any hints/ideas?

thanks in advance !

Basically this will not work to install 32bit packages on your 64bit system because you have a conflict for libgtk-3-common. There is already the 64bit version installed. Therefore you are not able to install the 32bit one.

Personally I would not try to mix architecture. Sooner or later, this will lead to incompatibilities and issues. If you need 32bit, go with a plain 32bit system.

Somehow APT forces the install of libgtk-3-common from the Debian repository instead of using the one from the RPi repository, while libgtk-3-0 is pulled from the RPi repository. I need to check the APT pinnings we do to prevent the RPi desktop installation. It should be fine to use all those GTK3 packages from Debian and resolve the conflict that way.

But libgtk-3-0 depends on libgtk-3-common. And libgtk-3-common is already installed as 64bit version. Isn’t it?

There is actually just one libgtk-3-common for all architectures, but it’s prevented to be installed from RPi repo as this causes the RPi desktop to be installed instead of LXDE, or other dependency issues when trying to install the original LXDE. Basically libgtk-3-0 needs to be installed from Debian repo as well to resolve the conflict.

1 Like