How to configure Mullvad GUI declaratively (Electron app)

Hi folks!

Hope you’re doing fine!

TL;DR; I want to declaratively configure the mullvad-gui’s settings (~/.config/Mullvad VPN/gui_settinngs.json). Particularly the autoConnect and startMinimized keys.

I’ve already successfully configured the vpn daemon through nix, see below thread :

I’ve tried several ways to achieve this, but none of them worked as expected, at least the way I did it. (e.g. writeShellScript + makeAutostartItem).

As for today the below opens the GUI on startup, but do not auto-connect… (as it’s not yet configured)

{ pkgs, ... }:
let
  mullvad-autostart = pkgs.makeAutostartItem {
    name = "mullvad-vpn";
    package = pkgs.mullvad-vpn;
  };
in
{
  environment.systemPackages = [ mullvad-autostart ];
}

I’m also using home-manager, and I’d like to only edit the above mentioned keys, and let the others be controlled by the service itself.

Should I create a service for it to autostart and provide my custom config? Any help is welcome :slight_smile:

Cheers :sunny: