Hi, i’ve installed experimental version of Fedora remix and it works flawlessly (I only noticed a few seconds more in boot time as compared to Arch version).
I have a problem with Firefox, i cannot play DRM contents (Disney+, Netflix, Spotify, etc…). In Arch version, i installed widevine-aarch64 package from AUR and it worked. Now on Fedora, how can i fix this?
Thanks in advance
Thank you for pointing me out to the right thread.
Long story short: it’s bit complicated and you could violate legal terms of use.
Thanks for your support
A solution for Widevine that can plug nicely into Fedora ARM64 is on my radar, but I probably won’t get to it until a bunch of the hardware support (and of course the release) is done first
Thank you @marcan
I’m in no hurry, i’ll wait patientally.
Thanks for all of your work on this piece of hardware
there seems to be a solution that involves a patch for glibc
https://thebrokenrail.com/2022/12/31/xfinity-stream-on-linux.html#how-do-i-actually-do-this
Patching glibc is not acceptable, that’s why I want to find a solution that doesn’t involve that. I believe it’s possible but it will require more invasive changes to the widevine binary and at least a minimal patch for Firefox and Chromium.
I am attempting to get it working in this GitHub Repo: GitHub - neelchauhan/widevine-fedora-aarch64: Get Widevine DRM on Fedora ARM64
Right now it doesn’t work as Firefox isn’t detecting the CDM. I could be wrong but feel that Fedora’s Firefox is patched to disallow Widevine.
I just want my Spotify to work.
If you are interested in Widevine for ARM64 Linux please contact Widevine via their support form and make your case.
We’re going to try to make this work, but at the end of the day, it is them who should be providing support for this platform. Anything we can do ourselves will be a pile of hacks trying to make proprietary software built for a completely different platform with different system packages and page size. It could even be legally problematic. We’ll try, but they need to know there are users out there who want Widevine to work on these platforms, otherwise they definitely will never care about us and allow this to be supported in a sensible way without horrible hacks.
I just send a report to google, please guys do the same and tell google you need support for your arm64 laptops running Linux
We will not be patching glibc. Any workable solution we ship will have to find some way around that. I think it should be possible.
Please do not encourage users to patch glibc on their systems. That’s just a recipe for ending up with a broken system at some point.
Okay so that turned out to be way easier than expected
We’ll get it packaged as a download/patcher of some sort for the official release.
That appeared to work:
benwibking@bens-macbook-pro:~/widevine-aarch641$ python widevine_fixup.py libwidevinecdm_real.so libwidevinecdm_patched.so
It looks like you're running Asahi, or some other device with >4k page size.
We will need to weaken certain memory permissions accordingly.
inserting 0x1000 bytes at offset 0x904290
also injecting code at offset 0x904290
inserting 0x1000 bytes at offset 0x90c790
neutering relro
weak binding b'__aarch64_ldadd4_acq_rel'
weak binding b'__aarch64_swp4_acq_rel'
patching b'__aarch64_ldadd4_acq_rel' plt reloc to point into injected code
patching b'__aarch64_swp4_acq_rel' plt reloc to point into injected code
But I get an error when doing ldd
:
benwibking@bens-macbook-pro:~/widevine-aarch64$ ldd libwidevinecdm_patched.so
./libwidevinecdm_patched.so: error while loading shared libraries: ./libwidevinecdm_patched.so: DT_RELR without GLIBC_ABI_DT_RELR dependency
It all works here with the latest CDM version pulled from the depths of Google storage servers and the latest version of the script. If you can’t get it to work please just wait until it’s all packaged properly
Try this: https://github.com/AsahiLinux/widevine-installer
Just run ./widevine-installer
after cloning the repo. We’ll package this properly for Fedora soon, but testing is welcome.
Note: Netflix requires spoofing a ChromeOS user agent.
Works perfectly here, thank you. Nice work!
OS: Fedora Linux Asahi Remix 38 (Thirty Eight) aarch64
Host: Apple MacBook Pro (14-inch, M1 Max, 2021)
Kernel: 6.5.6-403.asahi.fc38.aarch64+16k
Now we can watch ERTFLIX (a free streaming service in Greece) without problems in Asahi Linux thanks Marcan
spoofing with : Mozilla/5.0 (X11; Linux aarch64; rv:109.0) Gecko/20100101 Chrome/118.0.0.0
does not work, any idea ?
Merci
OS: Fedora Linux Asahi Remix 39 aarch64
Host: Apple MacBook Pro (14-inch, M1, Pro, 2021)
Kernel: 6.5.6-403.asahi.fc39.aarch64+16k
the widevine-installer is now available as an rpm
you can install it with
dnf install widevine-installer
After installation, run the the following command to perform the install:
widevine-installer
It’s currently compatible with the Firefox and Chromium browsers.
The following user-agent string works with Firefox and Netflix
Mozilla/5.0 (X11; CrOS aarch64 15329.44.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36
Obviously, other UA-strings would work – but note that it must contain CrOS aarch64…