LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM
User Name
Password
Slackware - ARM This forum is for the discussion of Slackware ARM.

Notices


Reply
  Search this Thread
Old 07-08-2023, 02:15 PM   #1
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Rep: Reputation: 40
Widevine-plugin Slackware package for ARM and aarch64


Wrote a nifty slackbuild for installing widevine-plugin for both ARM and Aarch64.
Note for this to work youŽll have to patch glibc (glibc for ARM and glibc for aarch64).
If you dont want to hazzle with compiling it, i have added precompiled and patched Slackware ARM 15.0 packages (Added support for SHT_RELR and TLS) binaries here and Slackware AArch64 Current packages (Added support for TLS) binaries here
This information and patches was gathered from here.

If you have kodi installed on the system you can link this by:
ln -s /opt/google/chrome/WidevineCdm/_platform_specific/linux_<your arch>/libwidevinecdm.so ~./kodi/cdm

Enjoy

Best regards
Minime

Last edited by Minime_2003; 07-11-2023 at 08:50 AM.
 
Old 07-08-2023, 05:39 PM   #2
mralk3
Slackware Contributor
 
Registered: May 2015
Distribution: Slackware
Posts: 1,901

Rep: Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052
Widevine-plugin Slackware package for ARM and aarch64

Please make note of the included python script:

Code:
IMPORTANT NOTE: On systems with >4k page size (e.g. Apple Silicon devices),
Using the patched binary *significantly* weakens the security of your web browser,
in two ways. Firstly, it disables the RELRO security mitigation, and secondly it
creates a RWX mapping.

I'm looking into ways around this, but it will require more advanced patching.

P.S. If you want to watch Netflix, you will need to spoof a ChromeOS useragent
 
1 members found this post helpful.
Old 07-11-2023, 08:37 AM   #3
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by mralk3 View Post
Please make note of the included python script:

Code:
IMPORTANT NOTE: On systems with >4k page size (e.g. Apple Silicon devices),
Using the patched binary *significantly* weakens the security of your web browser,
in two ways. Firstly, it disables the RELRO security mitigation, and secondly it
creates a RWX mapping.

I'm looking into ways around this, but it will require more advanced patching.

P.S. If you want to watch Netflix, you will need to spoof a ChromeOS useragent
Added this to notes, thank you for pointing this out
Will be building chromium ungoogled for AArch64 with patched user-agent as i done for the chromium-ungoogled ARM packages.
Also fixed links to chromium and chromium-ungoogled

Best of regards:
Minime

Last edited by Minime_2003; 07-11-2023 at 09:58 AM.
 
1 members found this post helpful.
Old 07-11-2023, 06:59 PM   #4
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,310

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
Quote:
Originally Posted by Minime_2003 View Post
Will be building chromium ungoogled for AArch64 with patched user-agent
looking forward to trying it, thanks
 
Old 04-21-2024, 07:19 AM   #5
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Updated widevine-plugin buildscript for both ARM and Aarch64.
Also updated glibc patch script for SHT_RELR and TLS.
If you dont want to hazzle with compiling it, i have added updated precompiled and patched Slackware ARM 15.0 packages (Added support for SHT_RELR and TLS) binaries here.

Sorry to say i have not had time to compile glibc for Aarch64.
Will try to fix this as soon as possible or when i find the time.

Best regards
Minime
 
Old 04-23-2024, 06:47 AM   #6
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,545

Rep: Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313
Quote:
Originally Posted by Minime_2003 View Post
Updated widevine-plugin buildscript for both ARM and Aarch64.
Also updated glibc patch script for SHT_RELR and TLS.
If you dont want to hazzle with compiling it, i have added updated precompiled and patched Slackware ARM 15.0 packages (Added support for SHT_RELR and TLS) binaries here.

Sorry to say i have not had time to compile glibc for Aarch64.
Will try to fix this as soon as possible or when i find the time.

Best regards
Minime
I don't know if it'd be useful, but since you're only applying 2 glibc patches which appear to require little maintenance, I could add these to the Slackware ARM source tree to be activated with a shell variable. It'd simplify the process of rebuilding glibc a little.
 
Old 04-24-2024, 02:51 PM   #7
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by drmozes View Post
I don't know if it'd be useful, but since you're only applying 2 glibc patches which appear to require little maintenance, I could add these to the Slackware ARM source tree to be activated with a shell variable. It'd simplify the process of rebuilding glibc a little.
Sure if you want, the glibc patches for adding SHT_RELR and TLS on Slackware 15.0 ARM do really not need much editing other recompiling if there are any smaller updates...
For Aarch64 there might need a bit more editing as glibc changed version...
 
Old 04-25-2024, 11:56 AM   #8
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,545

Rep: Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313
Quote:
Originally Posted by Minime_2003 View Post
Sure if you want, the glibc patches for adding SHT_RELR and TLS on Slackware 15.0 ARM do really not need much editing other recompiling if there are any smaller updates...
For Aarch64 there might need a bit more editing as glibc changed version...
I've added support into the glibc.SlackBuild for AArch64, which requires version 1.40 of slackkit.
Check the Widevine config to see how it's done.
I'll probably implement something similar for other packages where appropriate.
I can add other hooks into other stages of the build in the future if necessary.

Those glibc patches don't apply to glibc 2.39, but I have included them anyway for demonstration purposes. If there are any newer versions I can replace them later.
 
1 members found this post helpful.
Old 04-25-2024, 02:23 PM   #9
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by drmozes View Post
I've added support into the glibc.SlackBuild for AArch64, which requires version 1.40 of slackkit.
Check the Widevine config to see how it's done.
I'll probably implement something similar for other packages where appropriate.
I can add other hooks into other stages of the build in the future if necessary.

Those glibc patches don't apply to glibc 2.39, but I have included them anyway for demonstration purposes. If there are any newer versions I can replace them later.
Cool, that would be sweet :-)
Would it be possible to do the same for slackwarearm-15.0 as those patches are specific for glibc-2.33 and ARM?

Can notify you when i made the patches for glibc-2.39 and Aarch64, so you can update them to Widevine config.

The direct link to the SlackBuild script patched glibc (at the moment for glibc-2.37) for Aarch64 are here.

Best regards:
Minime

Last edited by Minime_2003; 04-25-2024 at 02:37 PM.
 
Old 04-25-2024, 03:40 PM   #10
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,545

Rep: Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313
Quote:
Originally Posted by Minime_2003 View Post
Cool, that would be sweet :-)
Would it be possible to do the same for slackwarearm-15.0 as those patches are specific for glibc-2.33 and ARM?
Done. There's a v1.40 of slackkit for Slackware ARM 15.0 as well.

Quote:
Can notify you when i made the patches for glibc-2.39 and Aarch64, so you can update them to Widevine config.

The direct link to the SlackBuild script patched glibc (at the moment for glibc-2.37) for Aarch64 are here.
I've put the aarch64 patch into -current and it applies.

What are you running this on? I am trying to figure out if I could move my main Linux desktop from x86_64 to aarch64. I was thinking of using another HoneyComb LX2 since that's certainly powerful enough, but is expensive and we didn't test any graphics cards with it yet. Then I was thinking of a Raspberry Pi 5 (as that'd be a good project for this year and to develop the integration guides as I do so), but is 8GB RAM really sufficient? I can foresee UI lag when there's a web browser with multiple tabs (some having rendered large build logs and others of complex web sites). In my experience, 16GB RAM is the minimum required to maximise the chances of a good user experience, that can also accomodate the evolving demands of the tech stack for the next few years; but if anyone has a different experience, I'm interested.
I don't think it'd be too much work to add RPi5 support, especially when we move to the most recent Kernel release. It'd be nice to build on the RPi integration work as well. Hmm.
 
2 members found this post helpful.
Old 04-26-2024, 04:08 AM   #11
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Thumbs up

Quote:
Originally Posted by drmozes View Post
Done. There's a v1.40 of slackkit for Slackware ARM 15.0 as well.
Ahh nice

Quote:
Originally Posted by drmozes View Post
I've put the aarch64 patch into -current and it applies.
Nice, have not tried the patch if it works for glibc-2.39 so i do not know it it works...
But it might work, depending how much has changed between glibc 2.37 and 2.39...

Great work

Quote:
Originally Posted by drmozes View Post
What are you running this on? I am trying to figure out if I could move my main Linux desktop from x86_64 to aarch64. I was thinking of using another HoneyComb LX2 since that's certainly powerful enough, but is expensive and we didn't test any graphics cards with it yet. Then I was thinking of a Raspberry Pi 5 (as that'd be a good project for this year and to develop the integration guides as I do so), but is 8GB RAM really sufficient? I can foresee UI lag when there's a web browser with multiple tabs (some having rendered large build logs and others of complex web sites). In my experience, 16GB RAM is the minimum required to maximise the chances of a good user experience, that can also accomodate the evolving demands of the tech stack for the next few years; but if anyone has a different experience, I'm interested.
I don't think it'd be too much work to add RPi5 support, especially when we move to the most recent Kernel release. It'd be nice to build on the RPi integration work as well. Hmm.
About half a year ago i used my RPI4 with 4 GB RAM, just changed the SDcard...
But 4 GB RAM and running Aarch64 not to recommend, specially when compiling packages...
System runs fine though otherwise.

Have been thinking of getting a RPI5 with 8 GB RAM as the CPU is way faster and seams to be a good device for a fordable price.
Also thinking it would be worth investing in and should also last for a few years.

Also been thinking of running one of my AMD64 PCs and running an ARM image with QEMU to speed up compiling packages for the RPI4 unit...
But i havenŽt managed to figure out how to create the ARM image and what parameters to set in QEMU to achieve this...

Last edited by Minime_2003; 04-26-2024 at 04:15 AM.
 
Old 04-26-2024, 08:15 AM   #12
drmozes
Slackware Contributor
 
Registered: Apr 2008
Distribution: Slackware
Posts: 1,545

Rep: Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313Reputation: 1313
Quote:
Originally Posted by Minime_2003 View Post
Also been thinking of running one of my AMD64 PCs and running an ARM image with QEMU to speed up compiling packages for the RPI4 unit...
But i havenŽt managed to figure out how to create the ARM image and what parameters to set in QEMU to achieve this...
I stopped maintaining the QEMU support since the user experience was too slow to make it worth while.
That said, it may be acceptable on more recent hardware (my x86's weren't the most recent). There's a document here, and the old arm32 stuff is here.
You basically created an 'image' which served as the hard disk, then you booted the Installer and installed.
You'd then boot the OS from the hard disk image. There were two separate shell scripts to achieve this.
 
1 members found this post helpful.
Old 04-28-2024, 01:55 PM   #13
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 122

Original Poster
Rep: Reputation: 40
Updated Slackkit v1.40 and tried out your script, works great.
The patch worked fine even for glibc-2.39, so did not need any editing.
Slackware AArch64 Current packages (Added support for TLS) binaries here.

Great work drmozes.
 
1 members found this post helpful.
Old 05-01-2024, 03:05 AM   #14
mralk3
Slackware Contributor
 
Registered: May 2015
Distribution: Slackware
Posts: 1,901

Rep: Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052Reputation: 1052
I have a low profile AMD Radeon RX550 in my HoneyComb. Support for AMD GPU needs to be added to the SA64 kernel config yet. I haven't been motivated to do so due to the fact that the CPU fan is so loud on Slackware. Replacing my x86 work station only requires those two features to be added into the kernel.

Solid Run (HC manufacturer) does not recommend NVIDIA GPU's due to the lack of support on Aarch64. So stick with AMD GPU's.

You could probably put a better GPU into your honeycomb if you plan to use it as your workstation. Link on Amazon here:
https://www.amazon.com/gp/product/B0...?ie=UTF8&psc=1

I mostly run my Honeycomb headless as of late, and put it in the closet to avoid the buzzing fan.

As an experiment I booted Debian and Fedora installations- the fan throttles with load- making it much less noisy.
 
2 members found this post helpful.
Old Yesterday, 05:27 PM   #15
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,310

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
the honeycomb doesn't have or its gpu is inadequate? did you do a pcie gpu with yours Brent? or you didn't as you said yours is headless
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Freshly baked Slackware aarch64 Current glibc-2.37 and patched Widevine support for TLS with 64-byte Minime_2003 Slackware - ARM 0 07-09-2023 07:45 PM
[SOLVED] How-To Get Widevine 4.10.2252.0 working on slackware ARM Minime_2003 Slackware - ARM 4 05-25-2022 01:54 AM
[SOLVED] For Testing: Slackware ARM installation media for ARM and Aarch64 mralk3 Slackware - ARM 12 10-05-2021 08:07 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM

All times are GMT -5. The time now is 02:20 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration