Mullvad VPN just not working

A few weeks ago I decided to install the Mullvad VPN app, at first all I did was just install “mullvad-vpn” over environment.systemPackages but, got the error it seems everyone that just does this gets, the “Unable to connect to Mullvad system service, your connection might be unsecure. Please troubleshoot or send a problem report by clicking the Learn more button.” and so after looking on this forum for a bit, I did found out I had to “services.mullvad-vpn.enable = true;” on my config for it to work.

After setting it, it worked, but only until my next system updated which, is when problems started. After the system updated the VPN just disconnected and gave me the above Unable to connect error again, I decided to restart the computer and after restarting it shows that I’m connected to the VPN but:
1- it’s clearly not connected (I use Mullvad Browser and it shows that I’m not using it, just shows my actual IP instead of the VPN connection)
2- it just WON’T let me disconnect at all (I press to disconnect from my location it loads for a bit but then returns to me being connected)
3- for some reason A LOT of the UI is just unresponsive, I click toggles to be turned on/off on settings but have NO response whatsoever (some toggles do work others don’t)

I decided to just uninstall it and wait for a week since I thought maybe some package update was interfering with it but, after nearly 3 weeks now, the same thing has happened every time. WHAT is possibly going wrong in the installation here.

It works fine for me … I don’t say that to be smug, but to explain why we’re going to have to see your configuration before we can help.

the entire nix config or something else?

here is the configuration.nix file

I saw a Reddit post about the mullvad vpn gui not working with the 6.16.8 Linux kernel for some reason: Mullvad vpn no longer working after kernel 6.16.8 - r/NixOS

You could try downgrading your kernel or using the cli as recommended in that thread.

oh I see, that’s good to know.

I will try downgrading the kernel and seeing if that works, if anything I can possible wait tho for until 6.18.9 or a new kernel in hopes it gets patched, but that’s surely wacky.

update:

back when I made this post I was on kernel 6.12 (don’t remember the exact number) and then decided to run the latest kernel possible (which is 6.17.6) and, it’s still not working, I think as said above it’s a problem with the mullvad package itself, will have to wait for it to be updated and then will try again (wanna believe we will get this solved at least by the end of the year)

update:

after the mullvad-vpn package got updated from 2025.7 (the version it was a the time of the post) to 2025.13 things started working again, but it is not not working again.

as always, here is my current config file, I’m currently on kernel 6.12.63, when running Mullvad VPN on the terminal I get the following output:

[13409:1224/134544.693353:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.694210:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.694315:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[13409:1224/134544.694554:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.694663:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.694737:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[13409:1224/134544.694807:ERROR:ui/gl/gl_display.cc:715] Initialization of all EGL display types failed.
[13409:1224/134544.694897:ERROR:ui/ozone/common/gl_ozone_egl.cc:26] GLDisplayEGL::Initialize failed.
[13409:1224/134544.698002:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.698113:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.698155:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[13409:1224/134544.698228:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.698275:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13409:1224/134544.698312:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[13409:1224/134544.698348:ERROR:ui/gl/gl_display.cc:715] Initialization of all EGL display types failed.
[13409:1224/134544.698384:ERROR:ui/ozone/common/gl_ozone_egl.cc:26] GLDisplayEGL::Initialize failed.
[13409:1224/134544.699575:ERROR:components/viz/service/main/viz_main_impl.cc:184] Exiting GPU process due to errors during initialization
[13425:1224/134544.775558:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.775678:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.775729:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[13425:1224/134544.775820:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.775882:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.775919:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[13425:1224/134544.775954:ERROR:ui/gl/gl_display.cc:715] Initialization of all EGL display types failed.
[13425:1224/134544.775994:ERROR:ui/ozone/common/gl_ozone_egl.cc:26] GLDisplayEGL::Initialize failed.
[13425:1224/134544.778527:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.778626:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.778666:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGL failed with error EGL_NOT_INITIALIZED, trying next display type
[13425:1224/134544.778737:ERROR:ui/gl/angle_platform_impl.cc:49] Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
ERR: Display.cpp:1079 (initialize): ANGLE Display::initialize error 12289: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.778783:ERROR:ui/gl/gl_display.cc:408] EGL Driver message (Critical) eglInitialize: Could not dlopen libGL.so.1: libGL.so.1: cannot open shared object file: No such file or directory
[13425:1224/134544.778818:ERROR:ui/gl/gl_display.cc:680] eglInitialize OpenGLES failed with error EGL_NOT_INITIALIZED
[13425:1224/134544.778856:ERROR:ui/gl/gl_display.cc:715] Initialization of all EGL display types failed.
[13425:1224/134544.778893:ERROR:ui/ozone/common/gl_ozone_egl.cc:26] GLDisplayEGL::Initialize failed.

what could be going wrong now? I have seen this issue over GitHub talking about Mullvad setting up nftables as default instead of iptables but I have no clue if this is my problem or not (+ different kernel)

1 Like