I tried installing chromium on my pi, chromium version is 113.0.5672.63 (Official Build) Arch Linux ARM (64-bit). then I tried playing content from prime video but I still see protected content error. I tried the following steps but couldn’t get it working in chromium and firefox browser.
I downloaded the deb package of widevine libwidevinecdm0_4.10.2252.0+3_arm64.deb from packages/widevine-aarch64 then converted it to aarch64 packege and installed on my pi. Tried rebooting pi, checked the settings in chromium and firefox but the option was not found.
I tried running the script by cloning the widevine-aarch64 file from widevine-aarch64.git as follows
cd /home/user/Downloads
sudo pamac build widevine-aarch64 glibc-widevine
when I ran the above command I got error
Checking inter-conflicts…
Error: Failed to prepare transaction: - glibc needs to be removed but it is a locked package
also I tried running the python script widevine_fixup.py present inside downloaded widevine-aarch64 file. Also tried running ./register_widevine_chromium and ./register_widevine_firefox present in the same folder but I had no luck so far.
I revisited building glibc-widevine today. It appears that after a certain glibc version an extra compile flag needs to be added in the PKGBUILD.
- CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/}
+ CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} # Before and
+ CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2,/} # after https://github.com/archlinux/svntogit-packages/commit/a790c38
I do not have any paid subscriptions to test and not really familiar how things work.
Notes from the author:
"mogwai commented on 2023-02-23 07:37 (UTC) (edited on 2023-03-09 11:55 (UTC) by mogwai)
Please make sure to run the registering scripts register_widevine_firefox and/or register_widevine_chromium for every user that needs to be able to use widevine. This script only needs to be run once; no need to repeat it after upgrade.
The latest version no longer requires the LD_PRELOAD!!!
In order to get netflix to run, you need to spoof the user agent of the browser by setting it to ChromeOS."
I built this on the unstable branch so do not know if it will even work on the stable branch but should work on the testing since it has a recent snap today; if it works at all. lol…
Link to the packages I built this mourning. (glibc-widevine will replace your existing glibc with extra support for widevine):
Thank you @Darksky for your support… I really appreciate it. I tried installing al the packages that you have provided and also ran the script register_widevine_firefox and/or register_widevine_chromium then tried reopening the browser but still couldn’t get it running prime video in it. Let me know If I should try anything else please…
Thank you
I can confirm it’s working (amazon prime and tv). I have just installed widevine-aarch64 from aur with yay and ran the script .
Launch chromium in a terminal and post the output.
You can try also in a terminal :
Thanks for the report. I had tried this on some widevine test sites and it seemed to work but they are not the same as actual paid subscriptions sites.
According to the author the LD_PRELOAD was not necessary any more but maybe it is… Also supposedly a patch was submitted upstream for glibc so the glibc-widevine package may not be needed sometime in the future.
The problem with widevine and linux is that only L3 widevine is supported. For parity with X86 processor it is OK but i don’t understand the point of view of the industry. You must ‘legally’ download a movie if you want to see it in 1080p. And if you use linux you are more that expected capable to do that. What is the utility ? It’s counterproductive.
I tried loading chromium using env LD_PRELOAD=/opt/WidevineCdm/libgcc_hide.so /usr/bin/chromium but it didn’t work, when I checked in /opt/WidevineCdm, I couldn’t find libgcc_hide.so inside.
Also when I grep Widevine
yay -Ql widevine-aarch64 | grep widevine
I get error: package ‘widevine-aarch64’ was not found
But I did install libwidevinecdm0-4.10.2252.0-1-aarch64.pkg.tar.zst
The widevine-aarch64 author in AUR updated his package today. The are several changes in his PKGBUILD and and a redo of the register_widevine_firefox script. The actual .deb’s used are the same version. Since he updated a couple of weeks ago I can only assume that today’s changes are bug fixes.
It still depends on the same glibc-widevine package I built in my post #5 above. You will have to rerun the register_widevine_firefox script after installing this new package from the link below.
Thanks for all your support.
I am finally able to get it working
Since i am new to aarch environment I was not aware of most of the commands. I have now used the aarch Linux helper tool “yay” to do all the installation. Here are the steps that i followed
Initially by default yay is not installed and in order to install it we need fakeroot which can be installed with
sudo pacman -S base-devel
Then we have to clone the yay from git repo for which if git is required
sudo pacman -S git
Then open a terminal and go to opt folder (where i installed yay)
cd /opt
Then clon yay
sudo git clone https://aur.archlinux.org/yay-git.git
Change the file permissions from the root to the sudo user as follows
(Note : change user as per the name of your system)
sudo chown -R user:user ./yay-git
cd yay-git
For installing yay below command is used
makepkg -si
With this you should get yay installed in your system.
Now i have downloaded the widevine.tar file containing glibc-widevin shared by @Darksky widevine.tar - Google Drive 6
Then go to downloaded folder and extract the widevine.tar file and open the terminal inside the extracted folder where you can find the glibc-widevine package and install it using yay
yay -U glibc-widevine… (I installed non debug version)
Then Download the latest Widevine packege widevine-aarch64-4.10.2257.0-6-aarch64.pkg.tar.zst - Google Drive 3
similar way provided by @Darksky and installed using yay command
yay -U widevine-aarch64-4.10.2257.0-6-aarch64.pkg.tar.zst
Then you have to download and run the registration script in terminal like ./register_widevine_chromium
./register_widevine_firefox
Special thanks to @Darksky and others for their contribution and support