How to Install Google Chrome on Void Linux

 2025-06-01

 2025-06-01

 Linux

This article is the English translation of the Japanese article titled ‘Void LinuxにGoogle Chromeをインストールする’.


The topic of this post is how to install Google Chrome on Void Linux. Although I normally use Firefox as my daily browser, I decided to install Google Chrome because I wanted to try its speech-to-text feature for online videos. However, Google Chrome is not available in the official repository of Void Linux, which is the distribution I use. Therefore, I chose to use xbps-src to build and install Google Chrome manually.

What is xbps-src?

xbps-src is a repository that contains the build templates for packages intended for XBPS (X Binary Package System), Void Linux’s package manager. It also functions as a system that allows users to build packages in an isolated environment without requiring root privileges. The build templates are similar in concept to Arch Linux’s PKGBUILD files, adapted for the XBPS system.

This repository also includes source templates for packages that cannot be distributed via the official repository due to licensing issues. Google Chrome is one such package. Other examples include Oracle’s JRE and NVIDIA drivers, which are not available as binaries in Void Linux’s official repository because of license restrictions — but they can still be built and used locally via xbps-src.

Preparing to Use xbps-src

Before we can use xbps-src, we need to prepare the environment. The following tools are required (quoted from the xbps-src documentation):

  • GNU bash
  • xbps >= 0.56
  • git(1) – unless configured otherwise (see etc/defaults.conf)
  • Common POSIX utilities (usually available on all UNIX-like systems)
  • curl(1) – required by xbps-src update-check
  • flock(1) – from util-linux
  • bsdtar or GNU tar (bsdtar is preferred)
  • install(1) – from GNU coreutils
  • objcopy(1), objdump(1), strip(1) – from binutils

Most of these tools are already included with Void Linux if you’ve installed the base-system group. In most cases, no additional packages are required. However, if something is missing, make sure to install it.

Cloning and Preparing the void-packages Repository

Now let’s clone the void-packages repository and set up the build environment:

git clone https://github.com/void-linux/void-packages.git
cd void-packages
./xbps-src binary-bootstrap

Next, to allow building packages with restricted distribution licenses, create a configuration file for xbps-src.

touch etc/conf

Make sure this file is created inside the void-packages directory, not in the system-wide /etc/ directory. Then open etc/conf in your preferred text editor and add the following line:

XBPS_ALLOW_RESTRICTED=yes

With this, your build environment is ready.

Building the Package with xbps-src

Let’s check whether the package we want to build exists. In this case, we are looking for google-chrome.

ls srcpkgs | grep google-chrome

If the package is listed, go ahead and build it using the xbps-src command like so:

./xbps-src pkg google-chrome

This step will take some time. Once the build process is complete, the package will be saved under the hostdir/binpkgs/ directory. For Google Chrome, it will specifically appear under the nonfree subdirectory, so be sure to check there.

Now let’s proceed with the installation.

Installing the Built Google Chrome Package

To install the package you just built, use the xbps-install command:

sudo xbps-install --repository hostdir/binpkgs/nonfree google-chrome

This installs Google Chrome under XBPS package management. You can also confirm the installation using the xbps-query command:

xbps-query -s google-chrome

You should see output like the following:

[*] google-chrome-136.0.7103.59_1 Attempt at creating a safer, faster, and more stable browser

Conclusion

In this post, we walked through the process of installing Google Chrome on Void Linux. When I checked the build template, I found that it simply extracts and installs the DEB package intended for Debian/Ubuntu systems, so the actual build time was just a few minutes. I recommend taking a look at the template file yourself so you can understand exactly what’s being done during the build process.

I hope this article helps you enhance your Linux experience, even just a little!