Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gnome 3.26 and the lost system tray #274

Closed
techge opened this issue Oct 5, 2017 · 19 comments
Closed

Gnome 3.26 and the lost system tray #274

techge opened this issue Oct 5, 2017 · 19 comments
Assignees
Labels
big Needs to be divided to subtasks
Milestone

Comments

@techge
Copy link

techge commented Oct 5, 2017

From version 3.26 the Gnome Project decided to get rid of the system tray as they felt it not useful anymore. https://blogs.gnome.org/aday/2017/08/31/status-icons-and-gnome/

The upcoming Fedora and Ubuntu Releases will already contain this Gnome version. As the Nitrokey App makes use of the standard system tray, we need to find a way to work around. The suggestions of the Gnome Project seem to be more or less "avoid using system trays".

There are ways the get the system tray back, most famous is probably the Gnome extension Topicons Plus. Nitrokey would force user to use such workarounds though which may is not the best user experience.

Another way may could be to reorganize the whole Nitrokey App as a kind of "window based" applications 😢 or by using keyboard shortcuts more extensively. Or ... ?

@szszszsz
Copy link
Member

szszszsz commented Oct 5, 2017

Thank you for heads up!
For now we can mention this extension in the quick start. In the long run a better API will be provided probably (to cover applications like Steam), which we could use. At the moment I see only notifications API to be usable. I though about search API too, though it might be too much work to do and maintain for a cross-platform application. Perhaps this could be done in a plugin.
We surely could display a message when the tray is not detected (link).
The alternative, which is adding main window, could be done too if nothing feasible would be settled in Gnome.
There is a chance too that Canonical will add tray as a default for now. What Ubuntu versions are affected? Is it starting 17.10?

@techge
Copy link
Author

techge commented Oct 5, 2017

Okay, I checked: Ubuntu 17.10 has Gnome 3.26, but Canonical decided to still keep the system tray. Everythings fine here (and wow looks Nitrokey App nice if you are not using LXDE on ArchLinux 😉).

@szszszsz
Copy link
Member

It looks like Trisquel (Ubuntu based) is not supporting tray icons. It ships with GNOME.
See forum link.

@ignatenkobrain
Copy link
Contributor

Neither Fedora does. I had to install extension.. So would be nice to find solution for this problem ASAP.

@techge
Copy link
Author

techge commented Oct 19, 2017

Well, I guess the 'main window' solution if 'no tray' is detected seems the best solution for now?

@ignatenkobrain if you still want to use any other program which use the tray you have to do it anyway :( But still there is another solution needed, of course.

@ignatenkobrain
Copy link
Contributor

@techge nitrokey-app is the only app which uses tray on my system :P

@jans23
Copy link
Member

jans23 commented Jan 31, 2018

Did anybody test the Nitrokey App with the upcoming Ubuntu 18.04 (beta)?

@szszszsz
Copy link
Member

szszszsz commented Jan 31, 2018

I have just tested it with image downloaded from http:https://cdimage.ubuntu.com/daily-live/current/ (dated
2018-01-29 08:00).
App's tray icon is shown and usable. I do not know have we passed the software freeze date already or not, but I believe Ubuntu team wants the tray dock to stay.
Edit: it is positioned in top-right corner by default and visible immediately (similarly to default icons).
(nevertheless we still plan to integrate with the latest GNOME)
Edit: 18.04 release plan

@techge
Copy link
Author

techge commented Feb 5, 2018

but I believe Ubuntu team wants the tray dock to stay.

This was my perception as well. They could have removed it in 17.10 already, as it uses Gnome 3.26)
Still true that we have to integrate it in latest GNOME of course

@rugk
Copy link

rugk commented Feb 5, 2018

Maybe they just extend the workaround a bit longer. Pre GNOME v3.26 also had such a thing in the bottom left.

@szszszsz szszszsz added this to the Next major release milestone Mar 10, 2018
@alex-nitrokey
Copy link
Contributor

As some users are confused by App starting in background anyway:
wouldn't it really best to start the App as window per default and let it go background as system tray (if any) as soon one tries to close the window? There should be a info beforehand of course. This info window may be disabled via a checkbox.

This would solve the problem with Gnome (they expect every applications to have a primary window) on the one hand and help new users to explore the App (and let it minimized optionally afterwards) on the other hand.

Or is there already a decision how this will be handled and I missed it?

@szszszsz
Copy link
Member

Yes, ultimately this is the target. We do not have any main window at the moment, and showing the configuration window would be rather a semi-solution. UI needs to be redesigned but it needs quite a time (not to mention guides' update) and other requested features are as important (like: first-run wizard, PIN reset wizard, in-app firmware update). I think in next releases there will be a movement in that direction. Right now I am searching for any fast and feasible solution for Gnome 3.2.6 (apart from the TopIcons extension), but I do not see any (except maybe Search Provider).

@bitfehler
Copy link

I understand that Gnome's decision to remove the tray is a little odd. But the latest comments on the TopIcons page include such gems as

Also, this extension is no longer being maintained by the developer: phocean/TopIcons-plus#91 At around the same time github repository has been made read-only, so one can't even file new bug reports. In short, this extension is a dead end.

After reading the linked issue, I have to agree with the conclusion and would extend the dead end to include the system tray in general (in Gnome). This is the first time I noticed it's gone, although I have been on 3.26 for quite a while. I run Arch Linux with Gnome, probably not that rare of a setup.

I figured there must be another way to use the nitrokey. I found the two (unofficial, yet officially endorsed/mentioned) CLI projects, gkey and nitrocli. They both are rather lacking in features and the former is also "on hold" apparently. So I ended up installing a standalone tray app (trayer). It barely allows me to finally change my PIN, but the user experience is extremely bad (not a permanent solution).

Again, all this really made me just discover that the system tray is not a thing anymore in Gnome, and I understand that this is odd. I might actually go and experiment with other window managers because of this. Maybe I should also at least test the extension. However, I would like to stress that this issue is a problem that needs solving. I understand that adding a Gnome-only solution is probably not appealing in terms of developer effort. But Gnome does have a lot of users, and I am not sure how long distributors will keep patching in the system tray. Even a (mostly) feature-complete CLI would totally do the job for me. Maybe I should post that comment in Nitrokey/libnitrokey#64 instead, but this issue here is the original reason I fell into this rabbit hole.

Sorry, just wanted to say this because I was a little disappointed by my first few hours with the Nitrokey. On the plus side, the app in AUR, that's just smooth :)

@szszszsz
Copy link
Member

Hi @bitfehler !
I was sure we have a workaround for this issue (mentioned Topicons and distributions' own extensions - e.g. tray on Ubuntu 18.04/GNOME 3.27 works out-of-the-box), hence it was not given higher priority.
@alex-nitrokey: could you check is this the right extension?

It is not about whether is it worth work or not (I use GNOME 3 myself), rather that there is no sufficient time to implement all requested and needed features. Now that the extension is not working in some cases (Arch Linux/Gnome, right?), issue priority needs to be revisited. Perhaps some temporary UI changes will be in place (I was planning to make them in v1.4).
Regarding CLI and other requested features, I encourage to vote with emoticons 👍 to give a approximate expectations picture.

Thank you for letting now about this.

@szszszsz szszszsz modified the milestones: Next major release, 1.3 Mar 14, 2018
szszszsz added a commit that referenced this issue Mar 14, 2018
@szszszsz szszszsz self-assigned this Mar 14, 2018
@alex-nitrokey
Copy link
Contributor

Hi @bitfehler,
me as a happy Arch Linux user do consider it a rare setup :) just kidding.

Well you are totally right. The mentioned extension is not maintained anymore, as is the extension it was forked from, as is the extension this was forked from...

Still, Ubuntu is using a own extension to make system tray usable for its users. It looks like Canonical does not want to get the shitstorm which may will go to Gnome ;-) That is to say you can use this extension if you don't feel good with a unmaintained extension (which I totally understand).

Please see this post and the extension Ubuntu uses. Does this work for you? If it does, I will change documentation on the website.

As @szszszsz pointed out: we totally see the need to change the way the app is working. But this needs so many changes we, as a rather small company, can not do in short term. I am sorry.

@bitfehler
Copy link

Thank you for your responses. Also, I really hope the comment didn't come across overly critical, I know very well how difficult these things can be. I guess I was a little frustrated in that moment, sorry about that. That said, to the more productive parts:

  • My system is Arch Linux w/ Gnome, currently 3.26.2
  • The TopIcons extensions seems to do absolutely nothing on my system
  • The AppIndicator Support extension sort of works 😺
    • The icon shows briefly when I start the app and plug or unplug the nitrokey, then however disappears
    • Nevertheless, even after the icon disappeared, when the key is plugged in, I can click the area where it would be and get the menu, so it's usable
    • All this doesn't interfere with the rest of the Gnome experience (unlike a standalone systray app), so I'd say it works for me

Not sure what the deal is with the icon disappearing, some sort of Qt/Gtk compatibility issue maybe? Anyways, I guess my main suggestion would be to add some note somewhere so that new users will have an easier time figuring out what's going on. Something like a "Note for Gnome users" link, either on https://www.nitrokey.com/download or maybe even just on the pages for the distros that don't have a solution patched in, e.g. https://www.nitrokey.com/download/arch-linux in this case.

As for myself, I think I can live with the AppIndicator extension for now, especially since I will mostly use the smart card feature and really just wanted to change my PINs. Of course, I will keep looking out for any updates 😉

And, it's great to see that issues are taking seriously and being worked on. Thanks a lot!

@alex-nitrokey
Copy link
Contributor

Thanks for your feedback! I never felt you are overly critical 😉
I thought I already did a notice to the FAQ, but apparently I didn't. Do you think this would be good point to store this information?
To be honest I am not sure if the Downloads section is really appropriate for this. The GNU/Linux environment is very diverse. I probably had to include it for literally every distro (even on Ubuntu you can use vanilla Gnome).

szszszsz added a commit that referenced this issue Mar 22, 2018
szszszsz added a commit that referenced this issue Mar 28, 2018
Initial attempt
Issue #274

Signed-off-by: Szczepan Zalega <[email protected]>
szszszsz added a commit that referenced this issue Mar 29, 2018
Initial attempt
Issue #274

Signed-off-by: Szczepan Zalega <[email protected]>
szszszsz added a commit that referenced this issue Mar 29, 2018
Add main window to adjust to GNOME 3.26 lack of tray.

Issue #274
@szszszsz
Copy link
Member

szszszsz commented Apr 9, 2018

Main window support is merged to master and will be supported from v1.3 onward. It is shown by default on apllication's run. This should solve this issue.
Please reopen if using the Nitrokey App would still be troublesome on GNOME 3.26.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
big Needs to be divided to subtasks
Projects
None yet
Development

No branches or pull requests

7 participants