https://mullvad.net/en/help/install-mullvad-app-linux
Trying to install VPN and these are the instructions Mullvad is giving me. This is ridiculous. There must be a more simple way. I know how to follow the instructions but I have no idea what I’m doing here. Can’t I just download a file and install it? I’m on Ubuntu.
Yes, it is. You can achieve the same usung GUI of course, but this would be more difficult to describe because there are multiple GUIs and they change with new distro versions.
This is more convenient than “downloading and intalling” a file because you don’t have to track updates manually, the package manager will do this for you. You have to read something about what package manager is and how does it work. It is the main concept of all linux distros except LFS.
This is one of the hardest walls for people to jump over mentally, from scavenging the internet for binaries to using a package manager.
I think ideally one should understand what they’re doing, I think that if you did you would realise it’s not hard, just different from what you’re used to. Usually you install things using the graphical package manager, of which there are a lot, since I don’t know which one you are using nor have I used any of them in a long while, I’ll use the terminal as an example (same reason the site uses terminal commands), but all of this is almost assuredly possible via GUI.
To install things you usually do sudo apt install
, this is a huge advantage on Linux, it works similar to your phone in that everything gets updated together but also it installs dependencies separately, which means that instead of having 10 copies of the same library for 10 programs that use it (like on Windows) you get a single one, which is part of the reason binaries are smaller on Linux.
The problem with this approach is that some programs are NOT listed there, the only programs there are the ones the maintainers of your distro (Ubuntu in this case) can review and approve. So you can have a lot of different solutions for this:
The first and most obvious for Windows users is to download the .deb from the website and just run that like you would a binary on windows, i.e. double-clicking it, or from the terminal you can run sudo dpkg -i
. This works, but you lose the advantages of a package installed via your package manager, i.e. you would get the same experience as on windows, so it’s not ideal.
The second way is the one they’re describing, essentially you’re adding a new repository to the package manager, that the people who wrote the program are maintaining (instead of Ubuntu guys), this is a two step process, sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc
that command is downloading the file https://repository.mullvad.net/deb/mullvad-keyring.asc
and putting it in /usr/share/keyrings/mullvad-keyring.asc
, this is needed because repositories are not trusted by default, that would be a security nightmare, you can do this via GUI if your problem is with the terminal , just download the file and copy it to that location, it’s just harder to explain than giving you a command. Then it’s adding the repository to the repository list, the command is echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mullvad.list
that command has a lot to unwrap, in essence it’s editing the file /etc/apt/sources
and writing a line like .d/mullvaddeb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=amd64] https://repository.mullvad.net/deb/stable focal main"
there, but because the guy who wrote this doesn’t know your architecture (e.g. amd64) nor your version (e.g. focal) he wrote a command that gets that information from your system, you can instead write the file yourself if you know those. Then install via package manager as normal.
There’s a third way which is more recent which is install via snap/flatpak which is similar to install via package manager, except you don’t add new repos.
There’s a fourth way which is manually, usually when you compile stuff you install them manually.
I know it’s a lot to take in, but I’m of the opinion that if you understand what’s happening it makes things easier.
The problem is that for most users, when their setup is completed they won’t need to play with it for a while so after that any time they need to install something new through the terminal it means losing time to find instructions again.
Nothing is learned, to the eyes of a casual users it’s just meaningless entries getting copy/pasted and it’s information getting repeated again and again and again just with slightly different entries for each program. Meanwhile “how to install a program on Windows” would basically require one page on the whole internet to cover 99% of situations: “Download the install file, double click it, follow the on screen instructions to automatically install the program”.
Usually, it isn’t as complicated. For 95% of all apps (and 99% of all apps a casual user needs) you can go into your software center and just click “install”, the same you would on your smartphone.
This one here is just an edge case.
I also prefer well designed GUIs more than terminals, but after those few years now, I came to love the CLI.
Often, it’s just way more straight forward than clicking through 1000 ugly sub menus and chaotic regstry edits like on Windows.
Most stuff a normal user needs is well accessible through GUIs, and poweruser stuff or options one barely needs are and should be hidden.
If you’re scared, that’s good. Paste the commands into some GPT before executing them, that helps a lot.
But most beginner friendly distros like Mint and Zorin have GUIs for everything and hide the terminal well in the app overview because of that.
While lvxferre’s instructions are the ideal, there’s a simpler option
Download the mullvad.deb file.
Doubleclick on it from your file manager and it should automatically instsll
Every time you start mullvad it will check if the version is current and prompt you (with a link to click on) to upgrade if it’s not.
Note that works on mint, should work on ubuntu unless they’ve disabled dpkg
No dont do that! Their repository is newer and you need to always have a GPG verified download.
Really please stop advising people to randomly download native packages or Appimages. Repos are so much more secure and the default way.
True, this specific app may prompt users. But for example on immutable distros installing local packages suck, while from a repo you dont have to do anything. And also not every app warns about an update as this should be unnessecary if people just had automatic updates
Some apps can only be installed from their own repositories. That usually involves some faffing with aging let’s to your key store, etc. That’s what the cryptic instructions are about. Most apps can be installed with one click from the distro’s main app store. Ubuntu is somewhat restrictive here, because it forces you to use snaps, which is their own proprietary packaging format. Other distros, e.g. Mint are more inclusive here. This is why Ubuntu isn’t recommended as much any more.