Skip to content

amnezia-vpn/amneziawg-gnome-extension

Repository files navigation

License GitHub release (latest) Download extension

AmneziaWG Gnome Shell Extension

A GNOME Shell extension that allows you to toggle the AmneziaWG (via [email protected]) conveniently from the system status bar. The extension supports custom icons for light and dark themes, which can be manually configured through the preferences.

Important

Extension requires AmneziaWG Kernel Module and AmneziaWG Tools to be installed

Features

  • Start/Stop awg-quick Service with a single click.
  • Configure the interface name directly in the settings.
  • Customizable icons for active/inactive states for both dark and light themes.
  • Manual theme selection for icons (dark or light).
  • Adjustable icon size.

Screenshots

Panel buton

Screenshot

Settings window

Screenshot

Gnome Versions Support

  • 43 - master branch, v1 tag

Manual Installation

Get extension from GIT:

git clone https://github.com/amnezia-vpn/amneziawg-gnome-extension.git ~/.local/share/gnome-shell/extensions/amneziawg@amnezia-vpn

add --branch v<version tag> if you need exact version

Get extension from ZIP:

wget https://github.com/amnezia-vpn/amneziawg-gnome-extension/releases/download/v1/[email protected]
gnome-extensions install [email protected] --force

Replace v1 in url with v<version tag> if you need exact version

Apply extension

  1. Restart GNOME Shell
  • For X11: press Alt + F2, type r, and hit Enter.
  • For Wayland: logout and login again
  1. Enable the extension using GNOME Extensions app or with gnome-extensions enable amneziawg@amnezia-vpn command

Configuration

Open the extension preferences through the GNOME Extensions app to configure the following:

  • Interface Name: Specify the system interface name (default is awg0).
  • Icon Size: Adjust the size of the icons displayed in the system panel.
  • Icon Theme: Choose between dark or light theme icons.

Work Mechanics

The extension interacts with the systemctl command to manage the AWG Quick Service:

  • Start: sudo systemctl start awg-quick@<interface>
  • Stop: sudo systemctl stop awg-quick@<interface>

Ensure that the awg-quick service is properly configured on your system.

AmneziaWG client setup

Install AmneziaWG

You can use this instructions to install AmneziaWG

Install configuration file

  • Configuration Directory: /etc/amnezia/amneziawg/
  • Configuration File Name Format: *.conf
  • Configuration File Permissions: Any 'root' readable

Tip

While the configuration file can have any name, it is recommended to name it awg0.conf, as this name is used by default by the application. However, you can choose any name and update the configuration in the extension settings accordingly.

Sudoers

The command triggered by the extension button requires sudo permissions. To avoid entering your password each time you toggle the button, add a sudoers file with the following content:

io ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl

License

This project is licensed under the GPL-2.0 License. See the LICENSE file for details.

Contribution

Feel free to open issues or submit pull requests to improve this extension.