WireGuard VPN Manager

  • RapidRapunzel This wireguard config will do the trick:

    I am busy integrating Mullvad into version 1.5.3. You can try out this beta version in the meantime. https://github.com/BrodjagaRatnik….5.3~Beta.2.zip

    To post logs to this forum, copy and paste the following into SSH:

    Shell session
    grep -i "service.wireguard.manager" /storage/.kodi/temp/kodi.log | pastebinit

    And post that URL here.

    How to post a log (wiki)

    1. Enable debugging in Settings>System Settings>Logging
    2. Restart Kodi
    3. Replicate the problem
    4. Generate a log URL (do not post/upload logs to the forum)

    use "Settings > LibreELEC > System > Paste system logs" or run "pastekodi" over SSH, then post the URL link

    Salute.

  • You're awesome, I just install the 1.5.3 beta 2 and it worked perfect

    Please note that this is a beta version. View the settings for this VPN provider in the add-on, then provide me with feedback. Run it for a couple of days, and if you encounter any problems, send me the log.

    Saluti.

  • Hi,

    Just Installed 1.5.3 beta 2 on libreelec 21.3 omega with a Rpi 4. Using Mullvad Front end all seems to work fine, will be swapping countries around. Not sure how to check for any leaks yet. Thankyou very much---- will let you know how I get on.

    Thanks again

  • Please note that this is a beta version. View the settings for this VPN provider in the add-on, then provide me with feedback. Run it for a couple of days, and if you encounter any problems, send me the log.

    Saluti.

    Sorry I'm slow to respond. I've got no problem to report with 1.5.3 beta 2 and Mullvad. I toggled the killswitch on and turned off "Disconnect VPN on restart Kodi" and have had no disconnection troubles. Rebooted several times and it connects back every time:

    External Content pastebin.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

  • Please note that this is a beta version. View the settings for this VPN provider in the add-on, then provide me with feedback. Run it for a couple of days, and if you encounter any problems, send me the log.

    Saluti.

    Well actually no I found some issues. I use a addon that loads some ads in the background, if the ads get blocked the addon just wont work. Maybe you are enabling Mullvads dns ad block?


    Here's some nslookups:

    External Content pastebin.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.


    Here's my log, may be a bit of mess, I was testing a bunch of things, enabling wireguard back and forth: https://paste.libreelec.tv/preganglionic-yung.log

  • Doemela I use the script from https://github.com/pia-foss/manual-connections to manually generate wireguard config files using my PIA dedicated token, is it a chore to build support for it into your add-on?

    The integration of PIA into WireGuard VPN Manager is indeed based on that exact script https://github.com/pia-foss/manua…d_with_token.sh . In the add-on settings under 'VPN provider', you enter your username and password. The add-on after selecting countries/regions then automatically generates the WireGuard files in ~/.config/wireguard. https://github.com/BrodjagaRatnik…tings-Explained

    Please note that it refreshes the standard session token only when it connects or updates in add-on. The update interval can be set in the hours settings. If you are not connected, it will refresh every hour (or whatever interval you choose). You can use it this way for now.

    However, it does not officially support the 'PIA dedicated token' feature yet. In the meantime, I will look into adding a PIA authentication option specifically for dedicated tokens. I have looked into the script logic for the 'PIA dedicated token' and noticed it bypasses the standard user/password auth by using the token as a basic auth username. Since my add-on manages many other platform-specific tasks (like ConnMan routing and firewalls for LibreELEC), I will need to design a specific settings layout to let you input your dedicated IP, hostname, and token safely. I will look into adding this dedicated auth option in a future update!

    Salute.

    Edited once, last by Doemela (August 14, 2026 at 1:21 PM).

  • chaosen3 Before I look into building support for this standalone dedicated auth path, I want to make sure I design the logic correctly for your specific setup. I actually already wrote some alpha code for it! However, to save myself the headache and grief of a massive backend rewrite, I want to double-check how you plan to use it.

    Jumping into the full add-on service means my background loops—like the connection watchdog, update crons, and ConnMan deadlocks—will constantly try to rotate tokens and ping public server lists. For a dedicated IP, I will have to build a lot of special overrides to tell the service: 'Stop, do not touch this connection, it is static!'

    To be completely transparent: this add-on was born out of my own personal needs. While I love open-source and sharing my work for free, my time is limited. I have my own job, bills to pay, and a life outside of coding. I am happy to help up to a certain point, but I cannot do massive, time-consuming backend overhauls for free.

    Could you tell me a bit more about your exact goal?

    1. Full Integration: Do you want the add-on to fully manage the dedicated connection on the background (handling ConnMan routing, automatic firewall rules, and keeping the tunnel alive)?
    2. Standalone WireGuard Config Generator Manager: Alternatively, I could pull the core connection, disconnection, killswitch, and system watchdog service logic from this manager and tie it together into a brand new, standalone add-on tailored specifically for custom/dedicated WireGuard tokens. This keeps this main project clean, saves me a massive rewrite headache, and gives you a fully functional, lightweight service for your dedicated connection.
    3. Config Generator Only: Or do you just want a quick utility built into the UI to generate the WireGuard configuration files using your token, so you can run them via your own custom scripts or system paths?

    Let me know your thoughts and what your setup looks like so we can see what is realistic!

    Saluti.

    Edited 5 times, last by Doemela (August 14, 2026 at 4:56 PM).

  • I wanted to give a shout out for a well built Wireguard manager for LibreElec. I've used it exclusively on several LE builds and has been running without issues for over a month now. If you have issues with OpenVPN and your VPN provider give it a test drive. Easy to setup and forget as it silently loads and monitors your VPN connections.

    :thumbup: Thanks again Doemela.

    doemela-kodi-repo/zips/repository.doemela at main · BrodjagaRatnik/doemela-kodi-repo
    ... Contribute to BrodjagaRatnik/doemela-kodi-repo development by creating an account on GitHub.
    github.com
  • Hi, a new user here. I just installed latest and greatest of LibreELEC and among the first add-ons service.wireguard.manager from the Doemela repo. As I already have Mullvad vpn on another device I used the same account in LibreELEC and got it up and running without much trouble.

    But there are two things that baffle me, it doesn't connect at boot, that is I have to always establish the vpn connection manually after a reboot. Secondly it doesn't seem to have registered that I only want a specific country to show up when selecting the vpn connection. My selected country is there in the config, but I am always given a list that starts with Albania when connecting the vpn.

  • Hi, a new user here. I just installed latest and greatest of LibreELEC and among the first add-ons service.wireguard.manager from the Doemela repo. As I already have Mullvad vpn on another device I used the same account in LibreELEC and got it up and running without much trouble.

    But there are two things that baffle me, it doesn't connect at boot, that is I have to always establish the vpn connection manually after a reboot. Secondly it doesn't seem to have registered that I only want a specific country to show up when selecting the vpn connection. My selected country is there in the config, but I am always given a list that starts with Albania when connecting the vpn.

    Regarding: "My selected country is there in the config, but I am always given a list that starts with Albania when connecting the vpn." Did you save the settings after selecting the countr(y|ies) as the addon told you?

    I need to see the log. To post logs to this forum, copy and paste the following into SSH:

    1. Shell session
      grep -i "service.wireguard.manager" /storage/.kodi/temp/kodi.log | pastebinit
    2. And post that URL here.

    How to post a log (wiki)

    1. Enable debugging in Settings>System Settings>LoggingRestart Kodi
    2. Replicate the problem
    3. Generate a log URL (do not post/upload logs to the forum)
    4. Use "Settings > LibreELEC > System > Paste system logs" or run "pastekodi" over SSH, then post the URL link

    Also read the Settings Explained on our wiki.

    Salute.

    Edited 2 times, last by Doemela (September 17, 2026 at 8:14 AM).

  • Thank you for the responses, I'm afraid it turned out to be a problem with inexperience with Kodi. I've now got it working as expected.

    But when adjusting settings in Kodi, it seems that different pages behave differently when it comes to when the changes are saved. Also sometimes there seems to be a considerable lag between when you press a button (I've been using Kore) and the interface presents you with the options, so that an inexperienced user might think that it was dead button and moved on to explore what other ways there are to achieve the changes he wants.

  • Thank you for the responses, I'm afraid it turned out to be a problem with inexperience with Kodi. I've now got it working as expected.

    But when adjusting settings in Kodi, it seems that different pages behave differently when it comes to when the changes are saved. Also sometimes there seems to be a considerable lag between when you press a button (I've been using Kore) and the interface presents you with the options, so that an inexperienced user might think that it was dead button and moved on to explore what other ways there are to achieve the changes he wants.

    Np, some buttons take a long time, like updating the servers, because it has to access several servers in each country for its database. If you select several countries, it can mean downloading tens of servers. This will be fixed in a future version(s), so you will get a progress window.

    Salute!

  • Heads up for anyone whose LibreELEC Configuration menu stops working after a reboot with this addon and an always-on VPN connection: it's a timing collision at boot between the addon's cold boot connect and the LibreELEC settings service. Restarting Kodi works around it. I've opened a GitHub issue with the details, logs, and a one-line fix that has been working for me:

    LibreELEC Configuration menu stops working after reboot (boot timing collision with cold boot connect) · Issue #9 · BrodjagaRatnik/service.wireguard.manager
    Pre-Flight Checklist I have updated the add-on to the latest release. I ran the regen command in settings after upgrading. I am NOT posting full raw logs…
    github.com
  • Heads up for anyone whose LibreELEC Configuration menu stops working after a reboot with this addon and an always-on VPN connection: it's a timing collision at boot between the addon's cold boot connect and the LibreELEC settings service. Restarting Kodi works around it. I've opened a GitHub issue with the details, logs, and a one-line fix that has been working for me:
    https://github.com/BrodjagaRatnik…anager/issues/9

    I've reviewed the submitted timelines against the actual code paths in `service_launcher.py` and `vpn_connector.py`, and they don't hold up — e.g. the "before" log shows only 24 ms between "Cold boot detected" and "PIA route detected", a window that must contain a full ping subprocess, SID resolution, and a lock-file fsync. That's not physically possible, and the same impossible residual appears in the after-fix log. Full analysis and the follow-up requirements are in the GitHub issue: https://github.com/BrodjagaRatnik…anager/issues/9

    "Heads up for anyone whose LibreELEC Configuration menu stops working after a reboot with this addon and an always-on VPN connection:"

    There is also no code path that could cause it. The addon never touches `service.libreelec.settings` — it neither stops, disables, nor communicates with it. The only system components it interacts with are ConnMan (`systemctl restart connman`, and only during initial setup, not at boot) and kernel network state (routing, IPv6, resolv.conf). The settings service talks to ConnMan over DBus.

    Salute.

    Edited once, last by Doemela (September 26, 2026 at 9:59 PM).