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.

  • Lvxferre@lemmy.ml
    link
    fedilink
    arrow-up
    29
    ·
    edit-2
    9 months ago

    It’s less complicated than it looks like. The text is just a poorly written mess, full of options (Fedora vs. Ubuntu, repo vs. no repo, stable vs. beta), and they’re explaining how to do this through the terminal alone because the interface that you have might be different from what they expect. And because copy-pasting commands is faster.

    Can’t I just download a file and install it? I’m on Ubuntu.

    Yes, you can! In fact, the instructions include this option; it’s under “Installing the app without the Mullvad repository”. It’s a bad idea though; then you don’t get automatic updates.

    A better way to do this is to tell your system “I want software from this repository”, so each time that they make a new version of the program, yours get updated.

    but I have no idea what I’m doing here.

    I’ll copy-paste their commands to do so, and explain what each does.

    sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc
    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
    sudo apt update
    sudo apt install mullvad-vpn
    

    The first command boils down to “download this keyring from the internet”. The keyring is a necessary file to know if you’re actually getting your software from Mullvad instead of PoopySoxHaxxor69. If you wanted, you could do it manually, and then move to the /usr/share/keyrings directory, but… it’s more work, come on.

    The second command tells your system that you want software from repository.mullvad.net. I don’t use Ubuntu but there’s probably some GUI to do it for you.

    The third command boils down to “hey, Ubuntu, update the list of packages for me”.

    The fourth one installs the software.

    • Critical_Insight@feddit.ukOP
      link
      fedilink
      arrow-up
      5
      ·
      9 months ago

      Thanks for the explanation. However trying to run the first command gives me sudo: curl: command not found

      So I’m stuck right there in the first step lol

      • NekkoDroid@programming.dev
        link
        fedilink
        arrow-up
        8
        ·
        9 months ago

        I would have guessed that Ubuntu would install it by default since its a very common way to get stuff from the internet (when in the terminal), but apparently not (the other option is wget which is most likely installed, but that uses a different way to get the stuff).

        You should be able to install curl with sudo apt install curl

      • Lvxferre@lemmy.ml
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        9 months ago

        You have two options: install curl (check @TrickDacy@lemmy.world’s comment) or do it manually. Installing curl is the easiest.

        If you want to do it the hard way (without the terminal), here’s how:

        1. Download the file https://repository.mullvad.net/deb/mullvad-keyring.asc from your web browser.
        2. Open your file browser as administrator. There’s probably some link for that in the Menu.
        3. Move the file that you just downloaded to the directory /usr/share/keyrings/
        • Critical_Insight@feddit.ukOP
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          9 months ago

          Really appreciate your replies dude. So many are being a bit of an jerks here, but you (and few other) have been really helpful.

          • Lvxferre@lemmy.ml
            link
            fedilink
            arrow-up
            2
            ·
            edit-2
            9 months ago

            You’re welcome.

            I think that people being jerks take for granted how confusing this might be, if you’re new; we (people in general) tend to take vocab that we already know for granted, as well as solutions for small problems. …except that it doesn’t work when you’re starting out, and we all need to start out somewhere, right.

            • astraeus@programming.dev
              link
              fedilink
              arrow-up
              2
              ·
              9 months ago

              Yeah, once you work in Linux for so long seeing someone ask about curl missing is really easy to take for granted that we all started there, we’ve all been fresh on Linux. A lot of people take pride in their experience, but they shouldn’t lord it over those who are learning to advance themselves. It’s completely counter to why Linux even exists.

    • XTL@sopuli.xyz
      link
      fedilink
      arrow-up
      4
      arrow-down
      1
      ·
      9 months ago

      Any instructions that say sudo curl should be thrown out immediately.

      • bjorney@lemmy.ca
        link
        fedilink
        arrow-up
        2
        ·
        9 months ago

        Is curl so untrusted that you would prefer to use 3 commands (one which still needs root permissions) instead?

      • jet@hackertalks.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        9 months ago

        Agreed it’s not best practice. But when somebody is saying the individual step-by-step is too complicated, you want to give them the simplest command possible. Even if it is more risky. It’s a trade off of accessibility versus complexity

      • Lvxferre@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        9 months ago

        Frankly in this case even a simple bash script would do the trick. Have it check your distro, version, and architecture; if you got curl and stuff like this; then ask you if you want the stable or beta version of the software. Then based on this info it adds Mullvad to your repositories and automatically install it.

        • umbrella@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          9 months ago

          nowadays they always come across as lazy to me, when a bunch of options are available to make installing software on linux painless.

          • Lvxferre@lemmy.ml
            link
            fedilink
            arrow-up
            0
            ·
            edit-2
            9 months ago

            I like them, even for software installation. Partially because they’re lazy - it takes almost no effort to write a bash script that will solve a problem like this.

            That said a flatpak (like you proposed) would look far more polished, indeed.

            • umbrella@lemmy.ml
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              9 months ago

              oh i meant devs who provide packages but don’t bother with install scripts.

              bash scripts are fine when they exist.

    • jet@hackertalks.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 months ago

      This is a great explanation. And really well written. Thank you for taking the time to put it together

    • u/lukmly013 💾 (lemmy.sdf.org)@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 months ago

      Hmm… ProtonVPN team solved this in better way. They put the repo configuration stuff into DEB file, so it’s just a matter of double clicking it and clicking install on Debian-based and Ubuntu-based (I know Ubuntu is Debian-based) distros and then installing the ProtonVPN client through either GUI or CLI package manager, whichever you wish to use. More newbie-friendly.

      Unfortunately, I also just learned they dropped support for Arch Linux :(

      We’d love to support the new app for arch Linux but honestly we’re understaffed and don’t have the bandwidth to be supporting the same distros that we did before with the previous client (4 packages before vs 10 packages now). If anyone from the community is willing to make AUR packages for themselves and publish/maintain them we’re totally fine with that, as long as people keep in mind that it would be an unofficial version because we currently don’t support arch Linux with the new v4 app.

      Also if anyone’s interested: https://boards.eu.greenhouse.io/proton/jobs/4140067101

      • 0xtero@beehaw.org
        link
        fedilink
        arrow-up
        3
        ·
        9 months ago

        Hmm… ProtonVPN team solved this in better way. They put the repo configuration stuff into DEB file, so it’s just a matter of double clicking it and clicking install

        I was wondering how they’d solve signature checking and key installation - and looking at their page they seem to recommend skipping checking package signatures which, to be honest, isn’t a super good practice - especially if you’re installing privacy software.

        Please don’t try to check the GPG signature of this release package (dpkg-sig –verify). Our internal release process is split into several part and the release package is signed with a GPG key, and the repo is signed with another GPG key. So the keys don’t match.

        I get it’s more userfriendly - and they provide checksums, so not a huge deal, especially since these are not official Debian packages, but the package signing has been around since 2000, so it’s pretty well established procedure at this point.

  • Ramin Honary@lemmy.ml
    link
    fedilink
    English
    arrow-up
    24
    ·
    edit-2
    9 months ago

    So usually people do install Linux software from trusted software repositories. Linux practically invented the idea of the app store a full ten years before the first iPhone came out and popularized the term “app.”

    The problem with the Mullvad VPN is that their app is not in the trusted software repositories of most Linux distributions. So you are required to go through a few extra steps to first trust the Mullvad software repositories, and then install their VPN app the usual way using apt install or from the software center.

    You could just download the “.deb” file and double click on it, but you will have to download and install all software security updates by hand. By going through the extra steps to add Mullvad to your trusted software repository list, you will get software security updates automatically whenever you install all other software updates on your computer.

    Most Linux distros don’t bother to make it easy for you to add other trusted software repositories because it can be a major security risk if you trust the wrong people. So I suppose it is for the best that the easiest way to install third-party software is to follow the steps you saw on the website.

    • narc0tic_bird@lemm.ee
      link
      fedilink
      arrow-up
      7
      ·
      9 months ago

      Some .deb packages actually include their repository and they can then be updated via the package manager. An example for this is the Vivaldi .deb.

  • GenderNeutralBro@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    1
    ·
    9 months ago

    That page lists multiple installation methods, for multiple distros. There simplest one for you is just two steps.

    1. Download .deb installer

    2. Run apt install ~/Downloads/MullvadVPN-*_amd64.deb

    It’s not that complicated. That’s just confusingly written. And caters to a wide range of users.

    • where_am_i@sh.itjust.works
      link
      fedilink
      arrow-up
      2
      arrow-down
      4
      ·
      edit-2
      9 months ago

      bad advise, OP should use a repo if they have apt

      edit: yes, I understand, one day I’ll get rooted by whoever hacked the VPN app’s servers

      • GenderNeutralBro@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        5
        ·
        9 months ago

        There’s nothing wrong with installing a .deb manually.

        Personally, I’d hesitate to add any third-party repos unless there is a very good reason. In this case, the only real difference is that you won’t get the updates automatically with sudo apt update; sudo apt upgrade without the repo. Either way, the desktop app will notify you when updates are available. There’s very little advantage to using the repo.

        Adding a repo is very rarely required. It has deeper consequences than simply installing an app, and requires a higher level of trust. If you don’t understand the security implications of adding a repo (and its associated key), then my advice is: just don’t.

  • Adanisi@lemmy.zip
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    1
    ·
    edit-2
    9 months ago

    Download the .deb and double click it. https://mullvad.net/en/download/app/deb/latest

    People seem to be making this a more difficult job than it needs to be. Yeah I get we’re powerusers but can’t we drop that for 2 minutes while giving advice so a new user can actually get a job done quickly? Windows EXEs don’t automatically update either. Sure it might not be the best way to do it but it’s fast and not confusing. (EDIT: Apparently this specific program actually has it’s own auto updater)

    Things take time to learn. Throwing all of the existing knowledge of repo management at a new user at once does not work.

  • ulterno@lemmy.kde.social
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    9 months ago

    “I have no idea what I’m doing here” <- Happens in the beginning. How about you start by trying to know what exactly you are doing? Let me give you a fasttrack…

    1. The first command you get in the instructions is curl. It is generally used to download stuff from a networked server.

      1.1. To understand the -fsSLo in the command, I strongly advise you to check out the manual of curl using man curl in a terminal.

    2. The second command in the instructions is echo "something" | sudo tee some/file

      2.1 Here you see 3 commands echo , sudo and tee. 2.1.1 Again, you can use man command-name to check the manual pages for these commands 2.2 There is a | symbol over here. It is called the “pipe symbol”, which is what you can use to search for it. It is usually difficult to search for the symbol itself and I haven’t found a man page for it, but open man bash and look for “Pipelines” and you’ll know what it is about. Use Link, Link and Link to help yourself understand this.

    3. The commands in “Install the package” use the apt program. This is a Package Manager. Its job is to read package information that package developers have made and try to not let the system become unusable.

      • e.g. If you have a program called Xorg from 5 years ago, and a program called mesa from 5 years ago and Xorg depends upon mesa to work. Here, if you replace your mesa with a new, recent mesa yourself, there is a good chance Xorg will not work. The Package Manager prevents that from happening.
    4. The gist of what the instructions are making you do is, telling the Package Manager that there is another place from where you want it to look for packages.

    To understand man pages better, check out this link.

    Don’t think too badly of people dissing you in the comments. They are tired and fed up of help vampires. Hopefully, you can try not to become one.

    • Try and build your own process of understanding the commands you see on the internet before entering them into the terminal.
    • The comments telling you to just follow the instructions, are coming from the perspective that you don’t have the patience and determination to understand them yourself, which, a lot of people don’t. I will leave it upto you to determine which one you decide to be. It is, however, a bad idea to follow instructions on any website, just because it “seems legit”. You can’t really say you “trust” the site until you have the ability to find out for yourself whether you want to trust it.

    Check this out

  • velxundussa@sh.itjust.works
    link
    fedilink
    arrow-up
    5
    ·
    9 months ago

    As others have mentionned downloading the .deb and running it will also work, but I feel nobody gave your a tldr of why you may want to follow those instructions instead, so here it is:

    Those instructions configure your package manager (apt) with a new repository for this application.

    The upside to that is that anytime you will look for updates, this app will also get updated.


    It’s a bit more work up front, but it can pay off when you have dozens of app updating as part of normal system operations.

    Imagine a world where windows updates would also update all your software, that’s what this is.

    • nix@midwest.social
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 months ago

      Also, no, this is not an ideal way to do this. Ideally every package you want is in your distro’s repos so you’d just need to do “apt install [package]”.

      The reason this one isn’t is because mullvad wants to make sure you use their tested, secure, and updated version and they don’t want to maintain that for every distro. So they have you configure your package manager to use their repos.

      This is relatively uncommon to come across in Debian. You’ll normally only find it in security applications or very niche ones. The Debian repos aren’t the most comprehensive but they’ll contain the vast majority of common softwares.

  • TheAnnoyingFruit@lemm.ee
    link
    fedilink
    arrow-up
    6
    arrow-down
    3
    ·
    9 months ago

    I think if you read through this you have pretty much everything you asked about. As for understanding what these sorts of commands do in the future I think ChatGPT is actually really useful for stuff like this with good documentation. Just ask what the commands do and it is usually quite helpful. Someone already said it but you have to want to learn this. If you want something easy to use and you don’t have to learn buy a Mac, you want great software compatibility buy a windows pc. If you want something that is more private and a community effort use Linux but unless you are using steam os on a steam deck it is not even close to being as user friendly as the others. I hope this changes but the current goals and mindsets of people in this community will prevent Linux from becoming easy to use and in the case of steam os you just need lots of money to make it an easy experience. There are a million other reasons that Linux’s current state is this way but this is the gist.

    • ReversalHatchery@beehaw.org
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      9 months ago

      If you want something easy to use and you don’t have to learn buy a Mac, you want great software compatibility buy a windows pc.

      That is very bad advice, as that may well not be a solution. There are people who want to use their computers without the ads, data mining and forced program defaults windows is doing.

      That’s true that if people switch OS, they’ll need to learn a lot of new things. But don’t forget that not only sysadmins and adventurous people use Linux.

      That being said, there are distros that give you a decent GUI frontend to the package manager, for example openSUSE

  • skillful_garbage@beehaw.org
    link
    fedilink
    arrow-up
    3
    ·
    9 months ago

    Download the .deb from their downloads page and run it, just like you would either a .exe on Windows. Their instructions list that as an option further down on the page. Should be higher up imo

  • DeaDvey@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    9 months ago

    Not specific to Mullvad, but you can use flatpak or your distro’s package manager (probably apt) to install programs, On Ubuntu, you can open the software program and search the programs to install it, that should be the first thing to do when you want to install something rather than going to the website.

  • bizdelnick@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    9 months ago

    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.

  • youpie@lemmy.emphisia.nl
    link
    fedilink
    arrow-up
    1
    ·
    9 months ago

    my tactic if the site looks trustworthy is always:

    • find the explanation for the distribution I use
    • ignore literally all the text
    • just copy paste and execute everything that looks like a command in order in the terminal works like 8/10 times
  • SmoochyPit@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    9 months ago

    Asking why something is the way it is makes you more of a “Linux user” than many.

    You make a valid criticism; there’s definitely a learning curve to installing software if you choose to do it that way (since it’s not similar to other OSs), and it’s not automatically explained to new users by using the OS.

    Here’s the understanding of it I’ve come to, if you’re interested:

    Like others have said, the .deb file would be the equivalent of an .exe file on Windows. Like many .exe files, unless they include an auto-updater, they won’t automatically update.

    A key difference I would like to point out is that Linux package managers often update and manage parts of the OS in addition to extra software. Windows and macOS both update their OS separately.

    “Ubuntu Software Center” is similar to the “Microsoft Store” on Windows and the “App Store” on macOS. Like those, it’s user friendly and provides automatic updates, but it also doesn’t have every app. You can ensure those apps are safe because the company behind the OS verifies them.

    “apt-get” is the default package manager for Ubuntu. That is the tool doing the heavy lifting underneath, and what those commands Mullvad gave are for.

    Mullvad could have provided a script to download and run that executes those commands for you, but then you wouldn’t know what it’s doing, especially with it needing admin permission. With how security-oriented Mullvad’s brand is, I think that’s one potential reason they explain the steps and have the user do it instead.

    • Critical_Insight@feddit.ukOP
      link
      fedilink
      arrow-up
      1
      arrow-down
      1
      ·
      9 months ago

      That’s even more confusing.

      I just don’t get why on windows and mac I can download the app from their site, install it and it just works but on Linux I have to do everything thru terminal. It’s not that I can’t get it done but it just seems insane to me that it has to be this difficult.

      • where_am_i@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        9 months ago

        Because it’s an asinine practice from which windows is moving away through winget, and which made the open source community to write a package manager for mac from scratch – homebrew.

        And if you think about it for a second, you will realize that it doesn’t exist on Android and iOS at all. E.g. 99% of users only install from a centralized repository called “appstore” and nobody is ever downloading an executable installer.

        Basically, you’re uninformed, and blatantly defending your uneducated way of installing software.

      • bizdelnick@lemmy.ml
        link
        fedilink
        arrow-up
        0
        ·
        9 months ago

        You don’t have to do everything through terminal. You can use synaptic for example. What you have to do is to learn new concepts. If you want to do everything like in windows, use windows.

        • Critical_Insight@feddit.ukOP
          link
          fedilink
          arrow-up
          2
          arrow-down
          2
          ·
          9 months ago

          I’m giving Linux a chance because people here recommended that I do and now you’re telling me to use Windows.

          • jet@hackertalks.com
            link
            fedilink
            English
            arrow-up
            1
            ·
            9 months ago

            Learning about package management, and repositories, is part of the Linux experience. It’s worthwhile to dive into the documentation and figure it out.

            There is a learning curve, but the rewards are more software independence.

          • giloronfoo@beehaw.org
            link
            fedilink
            arrow-up
            1
            ·
            9 months ago

            Welcome to the community. As you can see, there are some that are quite helpful and others that are … less so.

            I agree with you that there should be a better way to do that. It’s been a while, but I’m pretty sure the Chrome deb file handled all of that for you. I’ve always been confused why every company that sets up their own PPA didn’t do that.

          • be_excellent_to_each_other@kbin.social
            link
            fedilink
            arrow-up
            1
            ·
            9 months ago

            You should try Linux because you want to and find it interesting to learn. If you are doing it because other people told you to, you are going to have a bad time.

            Linux isn’t Windows with different branding. Things work differently, and if you take the time to understand why you’ll usually see the logic eventually, even if you may not to agree with it. I think folks are bristling a bit at your implication that things are hard on purpose somehow. Many experienced users find the terminal easier to use and more efficient; it shouldn’t shock anyone (including you) that it’s going to feel awkward when you don’t understand it yet.

            Howtos tend to use the terminal because it’s likely to work the same for everyone regardless of what other choices they’ve made with desktop environment, etc.

            You can do nearly everything with a GUI if you choose.

    • jaeme@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      9 months ago

      This comment here is a prefect example of being unhelpful and inflammatory.

      You added nothing to the conversation but instead tried to be “clever” by doing the same tired old “angsty Linux vs. Windows shtick” that’s been around for as long as GNU/Linux was a thing.

      Other people at least offered an explanation or suggestion.

      • AssortedBiscuits [they/them]@hexbear.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        9 months ago

        It also fundamentally misunderstands why Linux has such low adoption rates at the desktop. It has much more to do with Windows being ubiquitous in desktop enterprise environments than Linux. MacOS is by all accounts even more intuitive and easier to understand than Windows with a greater selection of native programs than Linux on top of having billions of dollars at their disposal for advertisement, but you’re not exactly seeing MacOS hit >60% of desktops.

        Overall, for a thread that’s supposed to help a newbie, this thread has a surprising amount of bad info. From saying Debian doesn’t come with sudo (completely untrue, the Debian installer has an option of adding the user to sudo when most distro installers just add the user to sudo automatically) to saying installing MacOS programs is simply clicking on an icon (not really true either since the only time you’re clicking on shit to install things on MacOS instead of using the store is if you’re installing third-party software, in which case you have to dig through menus).

        • jaeme@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          9 months ago

          100% correct about what? That people trying to offer different bits of advice/explanations are driving people away? Even if some of the advice is not the best/contradict one another, it’s still support being given to another user.

          Comments like these don’t say or do much of anything. They just finger wag and scold people for not being the “100% best Linux representative” they can be. Believe it or not, people who are in Linux communities aren’t a monolith of perfect technological wisdom and understanding.

          My problem isn’t even with the basis behind the comment which I actually somewhat agree with. It’s just framed in a cowardly way that obnoxiously blames community members for driving people away.

          So yes comments like these are useless and the people who make them are lazy.