Troubleshooting & How-Tos 📡 🔍 Linux

Install Vivaldi on Arch Linux for Arm64

First: if you’re willing to use Flatpak or Snap, you can skip all this and install the Vivaldi web browser through Snapcraft or Flathub. (See the Snap notes and Flatpak notes.) That wasn’t an option when I first tried to install it on my PineTab2 last year, or if it was I couldn’t find it. (As it is, you still have to go hunting for the Flatpak info if you’re starting from the Vivaldi website and not looking for Vivaldi on Flathub.)

Anyway, on to the (sort of) native solution I puzzled out:

Vivaldi doesn’t provide native Arch packages, but it does provide RPM and DEB packages for both Intel/AMD and ARM hardware. There is a user-contributed AUR package that will extract the contents from the RPM and repackage them for Arch…for x86_64.

Here’s how you can modify that script so it repackages the ARM version of Vivaldi for Arch.

  1. Install the prerequisites for building AUR packages plus w3m (used in this build script) and packages Vivaldi needs for desktop integration:
sudo pacman -Syu base-devel git w3m at-spi2-core 
  1. Clone the Vivaldi AUR repository:
git clone https://gitlab.archlinux.org/archlinux/packaging/packages/vivaldi.git
  1. Download the official Arm64 RPM from vivaldi.com and save it to the vivaldi folder.
  2. Optional but recommended: Install RPM tools and Vivaldi’s signature so you can verify the file you downloaded. (Only use rpm to verify the package. Don’t try to install it with rpm!)
sudo pacman -S rpm
sudo rpm --import https://repo.vivaldi.com/stable/linux_signing_key.pub
rpm -Kv vivaldi*.rpm
  1. Generate the hash value of the package so makepkg can verify it:
sha512sum vivaldi*.rpm
  1. Edit PKGBUILD in 3 places:
  • replace arch=('x86_64') with arch=('aarch64')
  • replace the first hash value in sha512sums=(...) with the one you got from the commandline. Leave the second one unchanged.
  • if _rpmversion doesn’t match the file you downloaded, update it along with pkgver (just the part before the dash) and pgkrel (just the part after the dash) values.
  1. Build the package:
makepkg
  1. Install the package:
sudo pacman -U vivaldi*.xz

If you don’t want to download the RPM yourself, you can make the first PKGBUILD change, run makepkg, and it’ll download the version. It’ll fail when it tries to validate the file, at which point you can get the sha512sum and pick up where you left off.

And there you have it! A natively-packaged Vivaldi running on your ARM-based Arch Linux system!

Unfortunately you’ll have to go through most of the steps again every time you want to install an update.