My thoughts on Slackware, life and everything

I added Chromium 56 for Slackware 14.1 with a caveat

chromium_iconA while ago, Chromium 56 ‘stable’ was released. It took a while for me to release Slackware 14.1 packages because of a crash bug in XFCE (and probably other non-KDE desktops too). I have been trying to find ways around the crash and been looking for patches, but there does not seem to be a solution for Slackware 14.1 other than working around it and losing some functionality.

So, what’s the issue?

Chrome/Chromium can optionally store credentials (user accounts, passwords) that you type in to access online secure web sites. The Password Store is a sqlite database. On Linux, its location is “~/.config/chromium/Default/Login Data” for Chromium and  “~/.config/google-chrome/Default/Login Data” for Chrome.
Chromium/Chrome on Linux wants to store your online credentials in a safe way, but it does not have the code itself to encrypt its own Password Store. Instead, it tries to rely on the availability of an external encryption provider. On KDE desktop environment, it will use the KDE Wallet system, while on other desktops it will try to use Gnome Keyring. If none of these are found, then Chrome/Chromium will fall back to storing unencrypted passwords in the above sqlite file.

Coming back to Slackware 14.1: there is a bug in it – probably in glib2 because that is where the segmentation faults are reported – which prevents recent versions of Chromium from using the Gnome Keyring. Within seconds of accessing the first web page in Chromium on Slackware 14.1, the browser will crash if you are running XFCE or some other non-KDE desktop. Note that you can use Chromium just fine in KDE on Slackware 14.1!

This issue does not exist in Slackware 14.2 or -current, probably because all the package updates between 14.1 and 14.2 solved the underlying issue. Therefore this bug is not something that will be solved in the chromium code by reporting it to Google… it is a OS related bug.

This means, if you are running XFCE you have to prevent Chromium from trying to use gnome-keyring. I tried to enforce the use of kwallet when running XFCE but that did not work, so you need to entirely disable the use of an encryption provider by adding the parameter “–password-store=basic” to the chromium commandline. The consequence will be that your online passwords will be stored unencrypted and anyone who gets hold of a copy of that sqlite file, will be able to extract all your credentials.

So here are some strategies for working with Chromium and not get bitten by the gnome-keyring induced crashes and keep your passwords safely encrypted:

  1. Encrypt your homedirectory or even your complete filesystem. With your files encrypted (using a password only you know) you reduce the risk of having Chromium store your credentials in plain-text in a sqlite file.
    Disk encryption using LUKS is something which Slackware supports during the installation. Full disk encryption is always recommended if you are using a laptop.
    If you did not opt for disk encryption during installation, but you still have more free disk space available than your /home directory tree is currently using, then you can create a new – encrypted – /home and move your existing data in there. This is an exercise that requires knowledge about cryptsetup and goes beyond the scope of this blog post.
  2. Switch to KDE. The kwallet storage is encrypted and it will not crash chromium like gnome-keyring does.
  3. Upgrade to Slackware 14.2. The gnome-keyring of this version of Slackware (and newer) will not crash chromium , so you can encrypt your online credentials in XFCE too.

And here is a chromium configuration file for Slackware 14.1 which will detect your Desktop Environment and will automatically add the parameter “–password-store=basic” to Chromium’s commandline for you if you are not using KDE. Copy the text below into a file called (for instance): “/etc/chromium/10-passwordstore.conf”:

# Use the basic (un-encrypted) password store,
# unless we are running KDE:
if [ ! "$XDG_SESSION_DESKTOP" = "KDE" ]; then
 CHROMIUM_FLAGS="$CHROMIUM_FLAGS --password-store=basic"
fi

Encrypting the passwords of your online identities will not make you 100% safe of course… even when your passwords are encrypted, Chrome/Chromium will make them plainly visible inside a browser window, by visiting the URL chrome://settings/passwords .

Note 1: The Windows version of Chrome encrypts the passwords it stores in “%UserProfile%\AppData\Local\Google\Chrome\User Data\Default\Login Data” because it makes use of a Windows API which requires the logged-in user’s password for the decryption.

Note 2: When you use the browser’s sync feature to store a copy of your online credentials in your Google Account, then those copies will be encrypted with your sync password, that only you know.

 

Download the Chromium packages for Slackware 14.1 (they were already available for 14.2 and -current for some time) from a mirror like these:

Have fun! Eric

6 Comments

  1. SlacMD

    Sorry to bother you, but after upgrade a have a big problem – the automount of flash drives does not work anymore. The error message is as follow

    “An error occurred while accessing ‘Kodak’, the system responded: The requested operation has failed: Error checking authorization: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Action org.freedesktop.udisks2.filesystem-mount is not registered (polkit-error-quark, 0)”

    I reinstalled polkit-*, but no effect.
    I’be very grateful for any ideas.

  2. alienbob

    SlacMD _ I don’t see how your issue could have a relation to the Chromium package which is the subject of this blog article.

    If you have issues with Slackware as a result of an upgrade, please ask your questions on the Slackware forum: http://www.linuxquestions.org/questions/slackware-14/ , my blog is not the right place for Slackware support questions.

  3. V. T. Eric Layton

    Dear Eric,

    Thank you so much for posting this. For a long while there I was running around pulling my hair out trying to determine what was causing this segmentation fault issue in Chromium (after v53.x or so in Slack64 14.1). I ended up just giving up and going back to Firefox.

    I miss Chromium. I’m going to have to utilize one of your work-arounds above or upgrade to 14.2. I originally had 14.2 on this system, but removed it and reverted to 14.1 because there were just some things about 14.2 I didn’t like (no ALSA, for one).

    Anyway, thanks for all you do!

    ~Eric AKA Nocturnal Slacker

  4. alienbob

    Eric 🙂
    You can use ALSA on Slackware 14.2 – just look for the instructions on the Internet.

  5. Massimliano

    Thanks a lot Eric,
    this helped me also! Without Chromium I couldn’t use gotomeeting anymore with pc speakers (no other browser is compatible!).
    Thanks again,
    Massimiliano.

  6. alienbob

    Hi Massimliano – glad I could help you through my package. Thanks for the gift, too.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

© 2024 Alien Pastures

Theme by Anders NorenUp ↑