OpenVPN / openvpn3-indicator

Simple GTK indicator GUI for OpenVPN 3 Linux
https://github.com/OpenVPN/openvpn3-indicator
GNU Affero General Public License v3.0
39 stars 5 forks source link

Dependencies, make error, and no tray icon? #2

Closed adolson closed 8 months ago

adolson commented 9 months ago

I am on Debian and I get an error during the install:

$ sudo make install
install --mode 0755 openvpn3-indicator /usr/local/bin/openvpn3-indicator
install --mode 0644 share/icons/hicolor/scalable/apps/openvpn3-indicator-panel-symbolic.svg /usr/local/share/icons/hicolor/scalable/apps/openvpn3-indicator-panel-symbolic.svg
install --mode 0644 share/icons/hicolor/scalable/apps/openvpn3-indicator.svg /usr/local/share/icons/hicolor/scalable/apps/openvpn3-indicator.svg
gzip --stdout share/man/man1/openvpn3-indicator.1 > /usr/local/share/man/man1/openvpn3-indicator.1.gz
sed -E -e "s|/usr/|/usr/local/|g" share/applications/openvpn3-indicator.desktop > /usr/local/share/applications/openvpn3-indicator.desktop
ln --force --symbolic /usr/local/share/applications/openvpn3-indicator.desktop /etc/xdg/autostart/openvpn3-indicator.desktop
gtk-update-icon-cache /usr/local/share/icons/*
gtk-update-icon-cache: No theme index file.
make: *** [Makefile:33: install] Error 1

This error goes away if I change PREFIX to /usr. I'm not sure why it doesn't like /usr/local.

After install, I needed to install gir1.2-ayatanaappindicator3-0.1 and python3-secretstorage before the script would run. I thought maybe these could be mentioned in the prerequisites section for others?

And finally, the tray icon is blank, for me. Is this by design or something wrong with XFce or me changing the PREFIX? I was expecting maybe something simple like green/red or locked/unlocked icons for connected/disconnected, or something like that.

grzegorz-gutowski commented 9 months ago

Hi, Thanks for the report. There are a few things there:

  1. Instalation error. This shouldn't matter - it simply means that there are no icon caches built in /usr/local/share/icons. I should somehow silence this quasi-expected error.
  2. Dependencies. I'll add them to README.md. In the long run I should prepare some packaging.
  3. I haven't decided yet how to present the status of the sessions. There are a few options:
    • Change icon in the tray when at least one session is connected - i don't like it as we have the concept of multiple sessions.
    • Change titles in the menu to something like Configuration name (CONNECTED)
    • Add some icons to the menu entries - this would be a natural choice for me, but it seems that for some reasons Gtk.ImageMenuItem is deprecated.
grzegorz-gutowski commented 9 months ago

Could you please send me an image of "blank" icon? Because it might be yet another thing to repair.

dsommers commented 9 months ago

@grzegorz-gutowski You can have a peek at the tray icon work happening in OpenVPN-GUI ... this was discussed long ago there: https://github.com/OpenVPN/openvpn-gui/issues/595

I see this project is MIT licensed. But if you would consider moving to GPL-2.0, you can definitely just reuse OpenVPN-GUI icons if you would like. Those icons are approved by OpenVPN Inc (since the OpenVPN logo is trademarked); re-use of them by other projects with similar use case and same license should therefore be fine.

adolson commented 9 months ago

image

There's the indicator, right between the network icon and the Remmina icon. Appears to be blank to me.

The only reason I am looking for a tray icon is to indicate the status of my connection at a glance, without having to click into menus or run a command in a terminal. This is why I would suggest a 4th option: when importing a config, add another checkbox that allows the user to make it the "default" or "primary" (or some other term) config - meaning that it is the one to use for the tray icon status indication. This option could be switchable to another profile via an additional menu entry under each profile, as well, for people who have more than one config and want to switch between them.

grzegorz-gutowski commented 9 months ago

Commit 638510f brings an interface rework that shows a separate icon for each session. As @dsommers suggested, I switched to icons from openvpn-gui project. Currently I use idle icon (light blue) when there are no sessions, and active icon (orange+blue) for each running session. I will use other icons, when I understand possible session states better. I hope that this update brings the expected behavior for @adolson.