How to Install Google Chrome on Void Linux
2025-06-01
2025-06-01
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!