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.
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.
- Open an administrative powershell prompt
- Type the following:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
and press enter - Once this installs, Restart your PC
- Open the Microsoft Store from the start menu
- Search for ubuntu (or you could use opensuse) and select the application that appears
- You will be presented with a page from Canonical Group Limited. Just press the “get” button and wait for it to prepare.
- 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
- You will need to wait a short while the first time you launch as the installation finalises.
- You may be asked to set up a username or password – remember these details!
- To see if it has worked, try typing a command like
vi
- 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.
- Head over to Xming and download a copy
- Run its installer.
- Once installed, run xlaunch
- If asked, use multiple windows, and enable clipboard & WGL
- 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.
- Type the following command to enable use of the X server:
export DISPLAY=:0
- Run the command to update your packages / listing:
ubuntu$ sudo apt update
opensuse$ sudo zypper up
- Then install some of the packages that aim to make the X server usable:
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
opensuse$ sudo zypper install desktop-file-utils fontconfig xlogo liberation-fonts dejavu-fonts ubuntu-fonts xcalc
- Test that your x server works by running a command like
xcalc
- 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
- Download package with
wget http://paste-url-to-vivaldi.deb
- Prepare the package to install with sudo
dpkg -i path-to-vivaldi.deb
- 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.
- Fix these by running the command
sudo apt -f install
- You should now see all of the dependencies be installed, and vivaldi installed
- Close with
exit
- Start ubuntu again
- export the display
- Prepare the message bus with
sudo /etc/init.d/dbus start
- Run
vivaldi
OpenSUSE
- Download package with
wget http://paste-url-to-vivaldi.rpm
- Prepare the package to install with
sudo zypper install path-vivaldi.rpm
- 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.
- Continue with the installation in zypper, You should now see all of the dependencies be installed
- If prompted, ignore the signature error with vivaldi by typing
i
- Close with
exit
- Start OpenSUSE again
- export the display
- Start the system message bus (I have got a little stuck figuring out how to do this with opensuse)
- 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:
- Open the vivaldi settings by visiting vivaldi://settings
- Find or search for the option Native Window
- Turn that on
- Find or search for the option Use Animation
- Turn that off
- Find or search for the option open settings in tab
- Turn that on
- 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.
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
I would suggest adding automating stuff you want run at startup to a .bashrc or .profile file in your home folder.
Great post, thank you for sharing! Going to try it now 😉
For me this didn’t fully work. I got it working through this:
https://github.com/Microsoft/WSL/issues/648
the question is – what for? 😀