Skip to content

Ungoogled Chromium template and builds for Void Linux

License

Notifications You must be signed in to change notification settings

DAINRA/ungoogled-chromium-void

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ungoogled Chromium for Void Linux

Ungoogled Chromium template and builds for Void Linux, based on the void-packages chromium template.

GitHub release (latest by date)

Note

Due to a rather stupid mistake on my part (wiping my ssd clean with no backup :c) the signing key for the ropository will have to be changed.

The new key 91:aa:05:51:81:3f:38:b6:6a:74:af:3f:40:2d:08:c3.plist will be imported on the first update.

To cleanup the old key remove:

the file: /var/db/xbps/keys/88:ac:8f:99:4d:b0:20:8f:6b:f0:8f:49:b9:13:fb:17.plist

and

the directory: /var/db/xbps/https___github_com_DAINRA_ungoogled-chromium-void_releases_latest_download_

Content Overview

Building from source

Note

Consult void-packages documentation for more information about setting it up.

Quick start

Building packages natively for the musl C library

Clone and setup the void-packages repository in a work directory and:

git clone --depth=1 https://github.com/DAINRA/ungoogled-chromium-void.git
[[ -d void-packages/srcpkgs/ungoogled-chromium ]] && rm -r void-packages/srcpkgs/ungoogled-chromium
cp -r ungoogled-chromium-void/void-packages/srcpkgs/ungoogled-chromium void-packages/srcpkgs/
cd void-packages
./xbps-src pkg ungoogled-chromium

Binary release

./xbps-src show-options ungoogled-chromium
=> ungoogled-chromium-120.0.6099.109_1: the following build options are set:
   clang: Use clang to build (ON)
   libcxx: Use bundled libc++ (ON)
   pipewire: Enable support for screen sharing for WebRTC via PipeWire (ON)
   pulseaudio: Enable support for the PulseAudio sound server (ON)
   vaapi: Enable support for VA-API (ON)
   debug: Build with debug symbols (OFF)
   sndio: Enable support for the sndio sound server (OFF)

Available builds

You can check the workflow file for the available builds:

Bootstrap:
needs: [Fetch]
strategy:
max-parallel: 1
matrix:
arch: [x86_64, x86_64-musl]

and the Actions tab for current build progress.

Installing the binary package

Method 1 - manual update

Download the xbps package from the releases page, index and install the package:

xbps-rindex -a *.xbps
sudo xbps-install -vR $PWD ungoogled-chromium

Method 2 - updates handled by xbps-install

Add the releases page as a repository:

cat << EOF > /etc/xbps.d/20-ungoogled-chromium.conf
repository=https://github.com/DAINRA/ungoogled-chromium-void/releases/latest/download/
EOF
xbps-install -Su ungoogled-chromium

First xbps-install -S run it will ask to import the repository key, same as 91:aa:05:51:81:3f:38:b6:6a:74:af:3f:40:2d:08:c3.plist.

Troubleshooting

  • Although it is not included in the run dependencies, gtk+3 package must be installed.
  • To enable VAAPI add --enable-features=VaapiVideoDecoder to CHROME_FLAGS environment variable.
    More info vaapi.md. Also check Void Handbook in case of problems.
  • For VAAPI --disable-features=UseChromeOSDirectVideoDecoder might also be needed.
    Check in chrome://gpu if Video Decode: Hardware accelerated.

Musl crashes mitigation

  • Make sure you have dbus running (on glibc it doesn't matter).
    Symptoms: crashes, pages stalling and refusing to load until browser restart, plugin crashes.
  • Try adding --js-flags=--jitless to CHROME_FLAGS. If nothing else, it's a security hardening option.

General tweaks

  • Lower ram usage: --renderer-process-limit=2 renderer-process-limit.
  • Reduce disk activity: --disk-cache-size=1 --v8-cache-options=none disk-cache-size, v8-cache-options.
  • Dark Mode: chrome://flags/#enable-force-dark.
  • Global media controls can cause crashes either by opening or closing it, as described in this issue.
    Either avoid using the feature or disable it completely (--disable-features=GlobalMediaControls).

Credits