Vivaldi through WSL

Vivaldi running on WSL

This blog post aims to explain how to run Vivaldi through WSL – the Windows Subsystem for Linux. DISCLAIMER: I am neither a Vivaldi employee nor a Microsoft one. Everything I say here should be taken with a grain of salt. This may cause your computer to explode.

Vivaldi running on WSL

Whats going on?

  • Vivaldi – If you’re on this domain, you probably already know this. Vivaldi is a web browser, a spiritual successor to classic Opera aimed at power users.
  • WSL – The Windows Subsystem for Linux. A full explanation can be found here. Basically it is a power feature in windows offers a way of translating linux kernel calls to windows calls.
  • Ubuntu & OpenSUSE – These are distributions of linux that act as operating systems. Each has a different configuration of pre-installed packages and methods of use.

Naturally, if we have a web browser aimed at power users, a power feature lying around, and some distributions commonly used, there comes a point when a user will want to bring them all together. This document aims to make it easier to do this.

Setup

There are some prerequisites before you can start using this:

  • Windows 1709 (The latest version of Windows 10)
  • A good internet connection
  • Patience

Also, if this applied to you, uninstall the experimental beta of WSL that was present in the previous windows 10 release. It is no longer supported so you would be best to fully update with a fresh installation of the Linux Subsystem.

Setting up WSL

First, we need to set up WSL. The following is a summary of the official instructions found here. I will be describing how to do this with the ubuntu or opensuse leap distribution. Others may vary in their usability / installation method.

  1. Open an administrative powershell prompt
  2. Type the following: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux and press enter
  3. Once this installs, Restart your PC
  4. Open the Microsoft Store from the start menu
  5. Search for ubuntu (or you could use opensuse) and select the application that appears
  6. You will be presented with a page from Canonical Group Limited. Just press the “get” button and wait for it to prepare.
  7. Once it’s ready, you should see a launch button. Click that. Other ways of launching include via the start menu, you can pin it to the taskbar, or just open a command prompt and type ubuntu (or) opensuse
  8. You will need to wait a short while the first time you launch as the installation finalises.
  9. You may be asked to set up a username or password – remember these details!
  10. To see if it has worked, try typing a command like vi
  11. Once you’re satisfied it’s installed properly close vi (press Esc and type :q!).

Get X

The installation of your distribution is a very bare-bones one and doesn’t include any of the packages that are normally required to run a linux gui program. The most essential one you need first is some sort of X server that can integrate itself with windows. My personal recommendation would be Xming. I use the paid version 7.7.0.23, but the public domain release of 6.9.0.31 should work as well.

  1. Head over to Xming and download a copy
  2. Run its installer.
  3. Once installed, run xlaunch
  4. If asked, use multiple windows, and enable clipboard & WGL
  5. Once its running you should see the X icon on the taskbar

Install the required packages

Once you’ve installed and started the X server you will need to prepare it and install some packages. From here I refer to command such as dpkg, apt. If you use a different distribution you will need to use different commands.

  1. Type the following command to enable use of the X server: export DISPLAY=:0
  2. Run the command to update your packages / listing:
    1. ubuntu$ sudo apt update
    2. opensuse$ sudo zypper up
  3. Then install some of the packages that aim to make the X server usable:
    1. ubuntu$ sudo apt install desktop-file-utils fontconfig fontconfig-config fonts-dejavu-core fonts-liberation fonts-ubuntu-font-family-console x11-apps x11-utils x11-common x11-xserver-utils
    2. opensuse$ sudo zypper install desktop-file-utils fontconfig xlogo liberation-fonts dejavu-fonts ubuntu-fonts xcalc
  4. Test that your x server works by running a command like xcalc
  5. You should see a calculator appear. you can close it now.

Install Vivaldi

This was tested using vivaldi snapshot 1.13.1008.11. But you could use the latest snapshot or the latest release.

Find a link to a vivaldi installer in a normal web browser on windows and right-click the link, and copy the url. It is important to note that WSL only supports 64-bit programs, so make sure to download one of those. For ubuntu I will use the 64-bit .deb package, other distros may differ, e.g. OpenSUSE requires the 64-bit .rpm package.

Ubuntu

  1. Download package withwget http://paste-url-to-vivaldi.deb
  2. Prepare the package to install with sudo dpkg -i path-to-vivaldi.deb
  3. At this point, if using ubuntu, either dpkg or apt should prompt you that there are some dependencies missing. These may differ on each distribution and other programs you may have installed, so I believe it is best to trust your package manager to figure out itself what you need.
  4. Fix these by running the command sudo apt -f install
  5. You should now see all of the dependencies be installed, and vivaldi installed
  6. Close with exit
  7. Start ubuntu again
  8. export the display
  9. Prepare the message bus with sudo /etc/init.d/dbus start
  10. Run vivaldi

OpenSUSE

  1. Download package withwget http://paste-url-to-vivaldi.rpm
  2. Prepare the package to install with sudo zypper install path-vivaldi.rpm
  3. At this point, if using OpenSUSE, zypper should prompt you that there are some dependencies missing. These may differ on each distribution and other programs you may have installed, so I believe it is best to trust your package manager to figure out itself what you need.
  4. Continue with the installation in zypper, You should now see all of the dependencies be installed
  5. If prompted, ignore the signature error with vivaldi by typing i
  6. Close with exit
  7. Start OpenSUSE again
  8. export the display
  9. Start the system message bus (I have got a little stuck figuring out how to do this with opensuse)
  10. Run vivaldi

Configure Vivaldi

If all has gone according to plan, vivaldi should now be running. The window it is running in may appear a little broken, so we need to fix that:

  1. Open the vivaldi settings by visiting vivaldi://settings
  2. Find or search for the option Native Window
  3. Turn that on
  4. Find or search for the option Use Animation
  5. Turn that off
  6. Find or search for the option open settings in tab
  7. Turn that on
  8. Close and restart vivaldi

Ret-2-Go

The next time you start vivaldi everything should be ready to go. It is worth mentioning though that this is not a perfect solution. You need to remember to export your display each time. Also, you should start the message bus if possible. Although vivaldi will try to run even if it is not enabled.

You could automate these steps if you wish. Also, I am still looking into some of the errors and crashes that are thrown up when vivaldi initialises and will update this document if I ever discover what causes them.

Enjoy, and leave any comments if you have further queries / need to point out an issue in this post.

Join the Conversation

  1. yup, tested the wsl some time ago with some xfce/gnome packages (thunar/synaptic/gedit).

    I had to use this to start “x apps”; where should go for being automatic?
    export PATH=$PATH:/usr/sbin/ && export DISPLAY=:0

    1. I would suggest adding automating stuff you want run at startup to a .bashrc or .profile file in your home folder.

Comment

Vivaldi