dlech/Keebuntu

Issues with KeePass 2.28

ikuraj opened this issue · 15 comments

My keepass stopped working at some point. I tried a lot of things and at the end found out that keebuntu was the problem (at some point I saw an alert window that the plugin is out of date). After removing it I could start keepass again.

Is there a problem with keebuntu or my local setup? In case of the former, what needs to be done to make keebuntu compatible again?

(I use Arch Linux + Gnome 3 and keepass looks really ugly in systray without this plugin.)

I used the pastebin from the (former) package maintainer at https://aur.archlinux.org/packages/keebuntu-git/ and it is working for me in GNOME Shell. I'm guessing this is not what you mean by GNOME 3 though if you see a tray icon without this plugin. Can you please provide some more details?

No, I do not see any icon, only some blank space is added. I was referring to:

$ gnome-shell --version
GNOME Shell 3.14.3
$ keepass --version
KeePass 2.28

I think the issue is that KeePass does not recognize the plugin anymore (also confirmed at https://aur.archlinux.org/packages/keebuntu-git/).

You can confirm that KeePass is loading the plugin by going to Tools > Plugins...

There is a bug in Mono that causes the name not to show, but you should see.

selection_039

If you don't see this, then you are probably missing some Mono dependency. I installed Monodevelop to debug this and it may have installed some Mono packages that you don't have.

If you run keepass from a terminal, is there any output besides lines like:

SendMessage (0, 0x1204, 0x4, 0x7fff2d46c2b0)

and

(KeePass:1056): GLib-CRITICAL **: Source ID 33 was not found when attempting to remove it

Also, you are still not telling the whole story about GNOME Shell. Are you using "GNOME", "GNOME Classic" or "GNOME on Wayland"? I assume you are using the Appindicator Support extension? Is it up to date? How do you get the systray icon without this plugin (when you say "Gnome 3 and keepass looks really ugly in systray without this plugin")?

Also, have you updated the other dependencies of this package? I installed via AUR:

[david@arch-vm aur]$ ls libappindicator/
libappindicator-12.10.0.tar.gz                    pkg
libappindicator-gtk2-12.10.0-4-x86_64.pkg.tar.xz  PKGBUILD
libappindicator-gtk3-12.10.0-4-x86_64.pkg.tar.xz  src
libappindicator-sharp-12.10.0-4-any.pkg.tar.xz
[david@arch-vm aur]$ ls libdbusmenu-gtk2/
libdbusmenu-12.10.2.tar.gz                    pkg       src
libdbusmenu-gtk2-12.10.2-3-x86_64.pkg.tar.xz  PKGBUILD
[david@arch-vm aur]$ ls libindicator/
libindicator-12.10.1.tar.gz                    pkg
libindicator-gtk2-12.10.1-4-x86_64.pkg.tar.xz  PKGBUILD
libindicator-gtk3-12.10.1-4-x86_64.pkg.tar.xz  src

Okay, so I reinstalled keebuntu (with this PKGBUILD) and everything came back to normal (keepass started, icon is there)
screenshot from 2015-03-04 02 02 33

As for the problems I had before:

  • I only saw messages like SendMessage (0, 0x1204, 0x4, 0x7fff2d46c2b0). (I also see Cannot find XIM but I searched the term and that does not cause problems.)
  • Yes, it looks ugly and I added that there is no icon without keebuntu -- it looks like this (the icon, or lack of one, is on the right, only slight shadow can be noticed):
    screenshot from 2015-03-03 15 31 07
  • It is a pure "GNOME", not a classic or fallback mode. Yes, I use Appindicator Support extension. It should be up to date (I installed it through the extension.gnome web interface).
  • If I remember correctly, all dependencies were updated.

Since now keebuntu appears to be working, not sure what is the problem. I definitely could not start keepass before and it was complaining about a conflict with (outdated) keebuntu plugin. Psykar seemingly confirmed the same issue in AUR.

Let's cal this closed for now since we can't reproduce the problem. If it happens again, you can reopen the issue and post a screenshot of the actual error message.

FYI, the plugin should be recompiled each time you upgrade keepass.

Agreed. Hopefully, I will not have to reopen the issue. :)
Thanks!

After an upgrade, I encountered the same issue as before:
screenshot from 2015-03-26 15 36 48
I do not see keebuntu in the "plugins" tab.
How can I help you to reproduce this?

What did you upgrade?

I think mono might be breaking the plugin.

From the recent upgrade log:
[ALPM] upgraded mono (3.12.0-1 -> 3.12.1-1)

It is still working for me in my VM after upgrade to mono v3.12.1

I don't remember if this makes a difference or not, but you could try running keepass with keepass --debug to see if it will give you more information.

And try rebuilding the plugin. That will most likely fix it.

I reinstalled (rebuilt) keebuntu, still have errors. (Perhaps something is wrong with the current PKGBUILD.)

Command line output (some parts omitted):

$ keepass --debug
Could not get XIM
SendMessage (58720298, 0x112c, 0x4, 0x4)
SendMessage (58720292, 0x101f, (nil), (nil))
SendMessage (0, 0x1203, (nil), 0x7ffc973170c0)
SendMessage (0, 0x1204, (nil), 0x7ffc973170c0)
...
SendMessage (0, 0x1204, 0x4, 0x7ffc973170c0)

(KeePass:13034): GLib-CRITICAL **: Source ID 3 was not found when attempting to remove it
SendMessage (58720292, 0x101f, (nil), (nil))
SendMessage (0, 0x1203, (nil), 0x7ffc97317060)
...
SendMessage (0, 0x1204, 0x4, 0x7ffc97317060)
SendMessage (58720292, 0x101f, (nil), (nil))
SendMessage (0, 0x1203, (nil), 0x7ffc973182e0)
...
SendMessage (0, 0x1204, 0x4, 0x7ffc973182e0)

New error also appeared:
screenshot from 2015-04-02 14 40 34

The new error message box tells me that the plugin has some sort of error while it is trying to initialize. Unfortunately, it doesn't tell us exactly what.

I am wondering if you are missing a dependency. I have...

$ pacman -Qm
keebuntu-git 0.5.5.r0.g9be82be-1
libappindicator-gtk2 12.10.0-4
libappindicator-gtk3 12.10.0-4
libappindicator-sharp 12.10.0-4
libdbusmenu-gtk2 12.10.2-3
libindicator-gtk2 12.10.1-4
libindicator-gtk3 12.10.1-4

Plus I have MonoDevelop installed. That pulls in gnome-sharp, although I don't think that should have an effect.

You could install MonoDevelop and try debugging.

Indeed, I was missing some dependencies (they were removed since they are not in the PKGBUILD).
I updated the AUR package. The depends in the PKGBUILD now reads:

depends=(
    keepass
    libappindicator-gtk2
    libappindicator-gtk3
    libappindicator-sharp
    libdbusmenu-gtk2
    libindicator-gtk2
    libindicator-gtk3
    dbus-sharp-glib
    gtk-sharp-2
)

If all of these dependencies make sense, we can just close the issue.

The *-gtk3 packages should not be needed. Programs cannon use GTK2 and GTK3 in the same process, so I have made sure that this plugin only uses GTK2. And technically, it depends on libmagickwand also. If it is missing, icons could be the wrong size. But, I don't think application indicators ever show the icons, so it doesn't really matter that this is missing.

I fixed the package. Should be working fine now. Thanks!