Eddie VPN Client 2.21.6 missing System Tray Icon (GUI) after the new Update today

I had no problems with the older version 2.20.0 but with the new Eddie Client update thats available since today, i can no longer minimize the Eddie VPN Client Window to the System Tray, maybe a KDE related issue? There is just no longer the system tray icon in the bottom right corner. I also played with the GUI settings but no success :frowning:

Edit: Even edit and rebuild the AUR Package doesn’t help here.

same issue here.

Downgrade to previous version.

Someone in Arch Forum told me, that the Tray Icon isn’t build anymore. Does anyone know what that means and how to fix this?

Source: https://aur.archlinux.org/packages/eddie-ui

Downgrade to a much older VPN client, where we are missing Security Updates can’t be the solution.

@Kobold

No idea why it should be incompatible. I just downloaded the AppImage and Trayicon works on Gnome.

https://eddie.website/download/?platform=linux&arch=x64&ui=ui&format=appimage.AppImage&version=2.21.6&r=0.38658903098819286

If you wanna fix that on AUR, then uncomment the part at the PKGBUILD and package it manually.

1 Like

I never used AppImage befor, what is recommend? Should i uninstall the AUR Eddie client and install the AppImage?

Or should i fix the AUR Eddie install? But in this case, i need future information how to uncomment PKGBUILD, i never did that befor… i have absolute no clue what you mean with uncomment, do you mean that i have to use # in the line where PKGBUILD is written?

Appimages are commonly build on the oldest still supported LTS Version of Ubuntu or Debian. The newest libraries are commonly backwards compatible. It includes all necessary files to run that program and nothing needs to be installed.

Simply download it, make it executable, run it with one click. It is universal and portable. Sure it can be also integrated into the system and there is service for that: appimagelauncher

There is a delta update possibility, but eddie-ui has not integrated it. So you need to download it by hand on every version update.

Gladly the maintainer did not remove the section, therefore just download it:

git clone https://aur.archlinux.org/eddie-ui.git
cd eddi-ui
nano PKGBUILD

Remove # at the lines 45 - 53 and save it. Now build the pkg again:

makepkg -si

I did not try that. Maybe it is incompatible because of newer libs, you should check the logs when compiling the source.

1 Like

Could this lead to security issues? This doesnt look recommend to me.

I never build or changed a AUR Package befor, is there anything you maybe skipped here?
Because you leading someone who is totally blind, I have zero experience in this direction :blush:

I just want to make sure, because it looks to me that building pkg, doesnt mean execution/install the package? i hope im wrong here.

Well if you don’t trust a compiled binary directly from the devs, which is downloaded from the official website, then I don’t know how you could trust the source code, which you don’t understand.

What security issues would you have in mind?

It is just a program which you run completely as user.

Puh, if that is already to much for you, then stick with an AppImage.

Yes, that is what you do on the AUR. The recipe is called PKGBUILD. It contains instructions how to download, compile and create the package, which you install globally. That is made with makepkg.

2 Likes

It has nothing to do with trust, i was more worried about about may outdated/not up to date libraries… that may lead into vulnerability.

Well if your advice is not missing something i will try it out.

Alot Linux people sometimes expect alot background commands, thats why i was asking to be sure it works like intended.

Sample: You told me to check logs, but what logs you talking about and how should i check them? A command for this would be helpfull.

If i look for bugs i use normal “journalctl -p 3 -xb” or “systemctl --failed” but i don’t think this works with the pkg compiling.

image

Download a new version from the official website and run it. Easy? It is just how it works on Windows or Mac.

That is just how it works basically. Sure you can do this and that. But this pretty straight forward.

No command. When compiling from source, then it is printed on the terminal and/or at a make.log at the src folder and sort of. Depends on the build system.

1 Like

i did all your steps but when typing makepkg -sli a error showed up:

/home/koboldx/eddie-ui/PKGBUILD: line 45: syntax error near unexpected token `('
/home/koboldx/eddie-ui/PKGBUILD: line 45: `   Compile C sources (Tray)'
==> ERROR: Failed to source /home/koboldx/eddie-ui/PKGBUILD

This is, how pkgbuild looks now:

   Compile C sources (Tray)
   Removed in 2.21.5, compatibility issue
  if [ "ui" = "ui" ]; then
    cd src/UI.GTK.Linux.Tray
    cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=. 
    make
    strip -S --strip-unneeded -o eddie-tray-strip eddie_tray
    cd ../..
  fi

That is a comment… don’t remove # there.

Even if, it doesn’t work, as I tested it. It is not incompatible to run, it is just incompatible to build on Arch.

No idea what the problem there is, but the AppImage reveals that it is build on Ubuntu Bionic 18.04, where the build works with the gtk2 tray. Since libc is backwards compatible, the best practice is always building with the oldest still supported libs. If you build a program with newest libs, then it will not work backwards.

It is the same as on Windows. To support all Windows versions, you must target the oldest libs, which are still supported.

If you need it, here is a AUR Script for an AppImage Intergration:

filename: PKGBUILD

# Maintainer: Anyone

pkgname=eddie-ui-appimage
_pkgname=eddie-ui
pkgver=2.21.6
pkgrel=1
pkgdesc='Eddie - VPN tunnel - UI'
arch=('x86_64')
url="https://eddie.website"
license=(GPLv3)
depends=(openvpn sudo desktop-file-utils libnotify libappindicator-gtk2)
optdepends=('stunnel: VPN over SSL' 'openssh: VPN over SSH')
provides=('eddie-ui-appimage')
conflicts=('airvpn' 'airvpn-beta-bin' 'airvpn-git' 'eddie-ui' 'eddie-ui-git')

_filename="${_pkgname}-${pkgver}-${CARCH}.AppImage"

source=("${_filename}::https://eddie.website/download/?platform=linux&arch=x64&ui=ui&format=appimage.AppImage&version=${pkgver}"
        'eddie-ui')

sha1sums=('6b30eb3ad6dae3b1e61cbc0b43f92e758b7d35a4'
          'SKIP')

prepare() {
  cd "${srcdir}"
  chmod +x ${_filename}
  eval ./${_filename} --appimage-extract
}

package() {
  install -Dm755 "${srcdir}/${_filename}" "${pkgdir}/opt/appimages/${_pkgname}.AppImage"
  install -Dm755 "${srcdir}/${_pkgname}" "${pkgdir}/usr/bin/${_pkgname}"
  install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
  install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/${_pkgname}.png"
}

filename: eddie-ui

#!/bin/sh
exec /opt/appimages/eddie-ui.AppImage "$@"

Now put both files into one folder, cd into that folder, and run makepkg -Ccsfi. I tested it and it works, but I will not maintain it.

1 Like

I uncommented the lines 47-53 and it finally installs now.

This are my logs:

==> Making package: eddie-ui 2.21.6-1 (Fr 13 Mai 2022 06:15:28 CEST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading 2.21.6.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  160M    0  160M    0     0  1765k      0 --:--:--  0:01:33 --:--:-- 1777k
==> Validating source files with sha1sums...
    2.21.6.tar.gz ... Passed
==> Extracting sources...
  -> Extracting 2.21.6.tar.gz with bsdtar
==> Starting build()...

>>>> xbuild tool is deprecated and will be removed in future updates, use msbuild instead <<<<

XBuild Engine Version 14.0
Mono, Version 6.12.0.0
Copyright (C) 2005-2013 Various Mono authors
                Configuration: Release Platform: x64
        Configuration: Release Platform: x64
Configuration: Release Platform: x64
Configuration: Release Platform: x64
Configuration: Release Platform: x64
CMake Warning:
  No source or binary directory provided.  Both will be assumed to be the
  same as the current working directory, but note that this warning will
  become a fatal error in future CMake releases.


CMake Deprecation Warning at CMakeLists.txt:2 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.0") 
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Checking for one of the modules 'gtk+-2.0'
-- Configuring done
-- Generating done
-- Build files have been written to: /home/koboldx/eddie-ui/src/Eddie-2.21.6/src/UI.GTK.Linux.Tray
[ 50%] Building CXX object CMakeFiles/eddie_tray.dir/src/main.cpp.o
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from /usr/include/libappindicator-0.1/libappindicator/app-indicator.h:33,
                 from /home/koboldx/eddie-ui/src/Eddie-2.21.6/src/UI.GTK.Linux.Tray/src/main.cpp:22:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:64: warning: ‘GTypeDebugFlags’ is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      |                                                                ^
In file included from /usr/include/glib-2.0/gobject/gobject.h:24,
                 from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32,
                 from /usr/include/libappindicator-0.1/libappindicator/app-indicator.h:33,
                 from /home/koboldx/eddie-ui/src/Eddie-2.21.6/src/UI.GTK.Linux.Tray/src/main.cpp:22:
/usr/include/glib-2.0/gobject/gtype.h:704:3: note: declared here
  704 | } GTypeDebugFlags GLIB_DEPRECATED_TYPE_IN_2_36;
      |   ^~~~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126,
                 from /usr/include/libappindicator-0.1/libappindicator/app-indicator.h:33,
                 from /home/koboldx/eddie-ui/src/Eddie-2.21.6/src/UI.GTK.Linux.Tray/src/main.cpp:22:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:12: warning: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |            ^~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32,
                 from /usr/include/libappindicator-0.1/libappindicator/app-indicator.h:33,
                 from /home/koboldx/eddie-ui/src/Eddie-2.21.6/src/UI.GTK.Linux.Tray/src/main.cpp:22:
/usr/include/glib-2.0/glib/gtypes.h:551:26: note: declared here
  551 | typedef struct _GTimeVal GTimeVal GLIB_DEPRECATED_TYPE_IN_2_62_FOR(GDateTime);
      |                          ^~~~~~~~
[100%] Linking CXX executable eddie_tray
[100%] Built target eddie_tray
BasePath: /home/koboldx/eddie-ui/src/Eddie-2.21.6/src
TargetDir: src/App.Forms.Linux/bin/x64/Release/
Project: ui
Arch: x64
Config: Release
Building eddie-cli-elevated
Config: Release
Shared: yes
Done
Building UI linux native
Config: Release
==> Entering fakeroot environment...
==> Starting package()...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 54664    0 54664    0     0   102k      0 --:--:-- --:--:-- --:--:--  102k
  -> Installing desktop file for KDE...
==> Tidying install...
  -> Removing libtool files...
  -> Purging unwanted files...
  -> Removing static library files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> WARNING: Package contains reference to $srcdir
usr/lib/eddie-ui/Lib.Platform.Linux.dll
usr/lib/eddie-ui/Lib.Core.dll
usr/lib/eddie-ui/eddie-ui.exe
usr/lib/eddie-ui/Lib.Forms.Skin.dll
usr/lib/eddie-ui/eddie-cli-elevated
usr/lib/eddie-ui/Lib.Forms.dll
==> Creating package "eddie-ui"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Adding install file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: eddie-ui 2.21.6-1 (Fr 13 Mai 2022 06:17:36 CEST)
==> Installing package eddie-ui with pacman -U...
[sudo] password for koboldx: 
loading packages...
warning: eddie-ui-2.21.6-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (1) eddie-ui-2.21.6-1

Total Installed Size:  3,34 MiB
Net Upgrade Size:      0,00 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                                                                                    [####################################################################] 100%
(1/1) checking package integrity                                                                                  [####################################################################] 100%
(1/1) loading package files                                                                                       [####################################################################] 100%
(1/1) checking for file conflicts                                                                                 [####################################################################] 100%
(1/1) checking available disk space                                                                               [####################################################################] 100%
:: Running pre-transaction hooks...
(1/1) Creating Timeshift snapshot before upgrade...
==> skipping timeshift-autosnap due skipRsyncAutosnap in /etc/timeshift-autosnap.conf set to TRUE.
:: Processing package changes...
(1/1) reinstalling eddie-ui                                                                                       [####################################################################] 100%
==> Updating desktop MIME database...
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Refreshing PackageKit...
(3/3) Updating the desktop file MIME type cache...

Looks like a clean install doesn’t it?

Uff i dont know if i need this… i hope not, because i don’t even understand why i should run a AUR Script for a AppImage.

Still thanks so far… i will try to run the fresh installed eddie client now and will report back.

Edit: Still no tray icon visible, im not sure where this client is installed now, with the new changes. I never installed a AUR Package in the console, i always used pamac for this. Maybe the already installed client isnt overwrite?

I see additional files in my homefolder/eddie-ui/… this folder/files are new… should i copy paste this stuff somewhere else, so see the changes?

Since the normal Eddie-UI AUR (edited) PKG Build not showing a tray icon and also the file replacing from my installed files doesnt show any changes. I try my luck with the normal Appimage installation.

What does this Appimage integration with AUR does it better? Is there any positive effect compared to the normal AppImage installation?

The only thing what the AUR Script does is installing the AppImage globally. So it is not restricted to your home folder.

So in general it does this:
Install Path: /opt/AppImages/appname.AppImage
Exec Script: /usr/bin/appname
Desktop-File: /usr/share/applications/appname.desktop
Icon-File: /usr/share/icons/hicolor/256x256/apps/appname.png

Btw… I created here a private-aur just for fun: https://notabug.org/megavolt/private-aur/src/eddie-ui-appimage

Just clone it like that:

git clone --single-branch --branch eddie-ui-appimage https://notabug.org/megavolt/private-aur.git

It has also some improvements.

1 Like

Thank you alot Megavolt for all your support. A new AUR version from Eddie released 2 days ago (2.21.8) and finally fixed the tray icon problem.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.