Tag Archives: chrome

Chromium 83 – packages for Slackware, news about Widevine plugin

chromium_iconThe COVID-19 crisis caused Google to change its release calendar for the Chromium browser sources, and they decided to skip the 82 release altogether, in order to focus on keeping the 81.x versions as safe as possible while working on their upcoming 83 release.
And so this week, Chromium 83.0.4103.61 was introduced to the “Stable Channel” with lots of bugs fixed, of which 38 are security fixes. There’s also a lot of new and improved features which are introduced in this release but it seems that many of those are only available in Google’s official Chrome binaries.
One of the notable changes for Chromium users (as opposed to Google Chrome users for which it has always worked this way) is that the Widevine content decryption module is now an official component of the browser. Like with Mozilla Firefox, the Chromium browser will now automatically download the Widevine library into your personal profile and enable access to DRM-protected content. In the URL “chrome://components/” you’ll see Widevine listed as a component, displaying its current version and a “Check for update” button.

Slackware packages for Chromium 83.0.4103.61 are in my package repository already. They are available as 32bit and 64bit versions for both Slackware 14.2 and -current.

Note that because of the changed status of Widevine, a separate “chromium-widevine-plugin” package containing the Widevine DRM library is no longer required. However…
It seems that there is an issue with the online availability of a 32bit Widevine library of the version that Chromium tries to download. As long as that is not fixed and only if you are using the 32bit Chromium browser, keep using my “chromium-widevine-plugin” please.

You can test whether Widevine works on https://bitmovin.com/demos/drm and validating that the page says “Detected using Widevine” and not “Detected NO DRM“). If you can not immediately get Widevine to work with your 32-bit browser, check that the content of the file in your Chromium profile “${HOME}/ .config/chromium/WidevineCdm/latest-component-updated-widevine-cdm” points to the installed location of the chromium-widevine package, like this:

alien@darkstar:~/.config/chromium/WidevineCdm$ cat latest-component-updated-widevine-cdm 
{"Path":"/usr/lib/chromium/WidevineCdm"}

In the profile of a 64-bit browser you will see instead something like this:

alien@darkstar:~/.config/chromium/WidevineCdm$ cat latest-component-updated-widevine-cdm 
{"Path":"/home/alien/.config/chromium/WidevineCdm/4.10.1610.0"}

For newcomers: Widevine is a Content Decryption Module (CDM) used by companies like Netflix and Disney+ to stream video to your computer in a Chromium browser window.

Also note (to the purists among you): even though support for Widevine CDM plugin has been built into my chromium package, that package is still built from Open Source software only. If you do not want theWidevine DRM library to be downloaded at all, you will have to recompile the chromium package after setting “USE_CDM=0” in the chromium.SlackBuild script. This can not be disabled at run-time.

Chromium packages: https://slackware.nl/people/alien/slackbuilds/chromium/ (rsync://slackware.nl/mirrors/people/alien/slackbuilds/chromium/)
Widevine packages: https://slackware.nl/people/alien/slackbuilds/chromium-widevine-plugin/ (rsync://slackware.nl/mirrors/people/alien/slackbuilds/chromium-widevine-plugin/)

Chromium 81 – and the new build process for Slackware 14.2

Google released version 81 of their Chromium browser sources last week, after spending a lot of effort to bring security patches to the 80.x releases in the weeks before. As said before, Google is going to skip the 82 release entirely because of the staffing challenges resulting from the Corina crisis, and will jump straight to release 83 somewhere mid-May.
I uploaded packages for chromium 81.0.4044.92 a few days ago – but those were only for Slackware-current.

I found it impossible to compile the latest Chromium 81 code on Slackware 14.2 and I had been trying for days. Yesterday I finally succeeded after more than a week of trying since the sources were released. I can not sit behind my computer for long, but that was not too much of a setback in this particular case. I kept running into new compiler or linker errors, then I would think of a fix, set the box to compile again and had to wait for hours to see the result… and lie down in the meantime. For an entire week, I met failure upon failure.

I asked in the chromium-packagers group online, how to fix these issues I was facing – for Chromium 81 and onward, several of the libraries in Slackware 14.2 that Chromium wants, are simply too old.
I was told to try what Google also does when building their own Chrome binaries that are meant to run on a wide range of Linux OS-es: use a “sysroot”, essentially a core set of Debian Sid packages, extracted, tweaked and zipped into an archive. Apparently Chromium code can be compiled in such a way that it uses the Debian shared libraries, but the resulting Chromium binaries (for Slackware in my case) are not depending on these Debian libraries. If someone knows how that works, please enlighten me.

So, I set out to learn how this “sysroot” can be utilized on a Slackware computer. It took another bunch of iterations, but eventually the changes to the chromium.SlackBuild are not even that intrusive. And I produced a working chromium package for Slackware 14.2, only to discover that yesterday, Google released chromium-81.0.4044.113. So, I had to start over.

Anyway – the Slackware 14.2 packages for chromium-81.0.4044.92 have been uploaded for your enjoyment. I am building a new set of Chromium 81.0.4044.113 packages for both Slackware 14.2 and -current, in 32bit and 64bit flavors of course. Hopefully that will run its course event-free and you’ll have those in a day or so.

Enjoy the 81 release!

Eric

Chromium and LibreOffice updates

Due to the Corona (COVID-19) crisis, Google decided to postpone the introduction of Chromium 81 to the stable channel. Understandably due to the challenges created by sending most developers home for their own safety and protection, which is a cause for less efficient work schedules.
Instead, there is an increased focus on addressing security related issues in Chromium 80 and releasing those in rapid succession. After all, any crisis attracts the worst of humankind to mess with the more gullible part of the population and browser based phishing and hack attempts are on the rise.

And so, yesterday there was another version upgrade, and I built the new chromium packages for Slackware 14.2 and -current already. The chromium-80.0.3987.149 release can be downloaded from any mirror – or upgraded using slackpkg/slackpkg+ if you use that.

In addition, new LibreOffice packages are available for Slackware -current.

You’ll get the latest and greatest ‘fresh’ release of 6.4.2 and unfortunately, no new packages for Slackware 14.2. I am unable to compile the 6.3 or 6.4 releases on the stable version of Slackware due to outdated/obsoleted libraries.

Note: among the packages for LibreOffice that are targeting Slackware-current, you will find a “libreoffice-kde-integration” package which adds Qt5 and KDE5 (aka Plasma5) support to the LibreOffice suite.
If you run Slackware-current but do not have KDE5 packages installed at all, don’t worry. LibreOffice will work great – the KDE integration package just will not add anything useful for you. On the other hand, if you have Plasma5 installed you will benefit from native file selection dialog windows and other integration features. And even if you do not have Plasma5 but you do have Qt5 installed, then you will be able to run LibreOffice with Qt5 User Interface elements instead of defaulting to GTK3.

If you want to compile LibreOffice 6.4.2 packages yourself using my SlackBuild script, then be aware that by default the KDE5 support is disabled. You will have to set the value of the script parameter “ADD_KDE5” to “YES”. Additionally you will have to install the packages that this functionality depends on otherwise the compilation will fail.
Read the ‘README.kde5‘ file in the source directory for the list of packages you’ll need. All of the required packages can be  found in my ‘ktown’ repository: https://slackware.nl/alien-kde/current/latest/

Enjoy! Eric

Chromium 79 for Slackware – trouble for 32bit?

In the comments section of a previous post I already hinted at the problems I have in getting a Chromium package compiled on 32bit Slackware 14.2.
The issue started with the first stable release of the Chromium 79 sources and in particular with the ‘gn’ tool which is used by Google to generate the ninja build files for Chromium. The ‘gn’ code was updated with C++17 features and that is too modern for the gcc-g++ 5.5.0 compiler package in Slackware 14.2.
For 64bit Slackware 14.2 I was able to build ‘gn’ using the embedded version of libc++ which comes with the Chromium sources. On 32bit I got bitten by linker errors – which I was unable to resolve. They seem to be caused by the fact that on a 32bit system, libgcc provides compatibility code to deal with constructs (like ‘unsigned long long’) that do not fit in a 32bit architecture.

For Slackware-current I could rely on a more modern gcc-g++ version (9.2.0) and that produced working 32bit as well as 64bit packages.

Therefore, you can get packages for the new Chromium 79.0.3945.88 browser from my repository, but on 32bit Slackware 14.2 you’re stuck with the older 78.0.3904.108 version (let’s hope that this will change in future).

Enjoy the new release!

Eric