Another Possible Solution to Chromium -Based Browser Crashing on Launch

I was originally going to post this as a reply to this topic:

https://forum.manjaro.org/t/chromium-crashing-upon-launch-and-never-opening/115670

But, as that’s been locked, I’ll leave it here as a possible solution if anyone else has the problem:

As per the topic linked above, none of the Chromium-based browsers I installed on Manjaro would launch. Spinning cursor for a few seconds and then nothing. I had this happen with Brave, Ungoogled-Chromium, Yandex and Vivaldi.

I tried re-installing and updating via Pacman but no change. So I tried launching Chromium via the command line and got the following error:

[87047:87047:0925/150214.420071:ERROR:platform_shared_memory_region_posix.cc(217)] Creating shared memory in /dev/shm/.org.chromium.Chromium.eheJ9L failed: Permission denied (13)2 

[87047:87047:0925/150214.420231:ERROR:platform_shared_memory_region_posix.cc(220)] Unable to access(W_OK|X_OK) /dev/shm: Permission denied (13)3

 [87047:87047:0925/150214.420249:FATAL:platform_shared_memory_region_posix.cc(222)] This is frequently caused by  incorrect permissions on /dev/shm.  Try 'sudo chmod 1777 /dev/shm' to fix.

4 [0925/150214.440335:ERROR:elf_dynamic_array_reader.h(64)] tag not found

5 zsh: trace trap (core dumped)  chromium

Per the suggestion in the error message sudo chmod 1777 /dev/shm fixed the problem and all Chromium based browsers are now working fine.

Hi @stuzbot, and welcome!

The directory is a tmpfs:

tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,inode64)

…and AFAIK it exists only in RAM, so it gets recreated at boot.

You can check with:

mount | grep --ignore-case shm

…which should provide a line similar to the above.

To make it permanent, run the following, I suspect you’ll have to edit the shortcut you use to launch the browser and append:

; sudo chmod 1777 /dev/shm

…as well as edit sudoers to allow you to run that command without a password.

Admittedly I’m not sure and it does feel…hacky too me…

Edit:

Even though I’m not sure what that directory mask does, or if it’s even a good idea to have it, I suspect to keep the current workaround, you’ll have to look here:

https://wiki.archlinux.org/title/tmpfs

More specifically:

Files will no longer be stored in a tmpfs, but on the block device instead. The /tmp contents will now be preserved between reboots, which might not be the desired behavior. To regain the previous behavior and clean the /tmp directory automatically when restarting, consider using tmpfiles.d(5):

/etc/tmpfiles.d/tmp.conf
# see tmpfiles.d(5)
# always enable /tmp directory cleaning
D! /tmp 1777 root root 0

# remove files in /var/tmp older than 10 days
D /var/tmp 1777 root root 10d

# namespace mountpoints (PrivateTmp=yes) are excluded from removal
x /tmp/systemd-private-*
x /var/tmp/systemd-private-*
X /tmp/systemd-private-*/tmp
X /var/tmp/systemd-private-*/tmp

After reading this, I tried Chromium, I usually use firefox, but have Chromium installed as a backup. It crashes within a few seconds. The sudo chmod 1777 /dev/shm solution did not stop the crashing.
Starting it in the terminal isnt much help

$ chromium
Segmentation fault (core dumped)