Desktop: Nextcloud on systems without system tray behaves buggy

Created on 5 Jun 2019  路  34Comments  路  Source: nextcloud/desktop

Gnome killed Tray support some years ago. Sadly Nextcloud is one of the only apps that seems to need a tray icon to work properly for some reasons. If I use it without tray it will always launch its GUI on system start

Expected behaviour

Nextcloud should launch in the background, even without tray support of the desktop

Actual behaviour

It always start a visible GUI and in some cases closing this one down and starting up from the menu starts an entirely new session. (so where are 2 session then)

Steps to reproduce

  1. Use Gnome
  2. Set Nextcloud to autostart
  3. Restart your system

Client configuration

Client version:
Latest

Operating system:
Arch Linux (w/ GNOME)

OS language:
de_de

Client package (From Nextcloud or distro) (Linux only):
Snap, Flatpak, compiled from source

Most helpful comment

@wmutschl rebuild GTK with libcloudproviders support, stay away from extensions and also no need to autostart nextcloud.. (does not work with flatpak yet).
grafik

At least for GNOME this is fixed and since my report was only for this DE, I'll close it :+1:
Thanks for the work.

All 34 comments

I am using KStatusNotifierItem/AppIndicator Support for that. But yes, it is some time since Gnome dropped the native support.

It is sad we need to do this tweak on the desktop environment that is used as a default on the most used distributions...

Is there some solution to this? I've seen some work done on incorporating Nextcloud to Nautilus...

It is sad we need to do this tweak on the desktop environment that is used as a default on the most used distributions...

Thats mostly because there is a workaround, like you mentioned it and Ubuntu for example shipps it by default. So there is no pressure at all to fix that issue. Otherwise there would be many more bugreports in here.

Is there some solution to this?

official support for it would be the solution and that's why I wrote this bugreport :D

Otherwise there would be many more bugreports in here.

I saw many issues/questions about this... Every new user has to find that information. What about some popup when the support for tray-icon is not present? It will save some time for new users and make the first experience smoother...

official support for it would be the solution and that's why I wrote this bugreport :D

That question was more for developers..;-) I am just curious about plans/possible solutions...

Wasn't this solved by @juliushaertl 's GSoC project?

Wasn't this solved by @juliushaertl 's GSoC project?

Yes, that's what I have in mind when I wrote: "I've seen some work done on incorporating Nextcloud to Nautilus..."

  • Is this code already in the projects code-base? (It looks so.)
  • Is this on the distributions to add the support? (I am using Fedora and I cannot see that... If it is the responsibility of package maintainers, we can forward the issue to them.)

Is this code already in the projects code-base? (It looks so.)

Yes, both Nextcloud as well as GTK have the support in the code base. It just needs to be enabled when compiling.

Is this on the distributions to add the support? (I am using Fedora and I cannot see that... If it is the responsibility of package maintainers, we can forward the issue to them.)

Unfortunately I'm not aware of any distribution that ships it as of now. There has been some effort to bring support into elementary OS iirc, but not sure what the status is for that.

@juliushaertl thanks for the info and thanks for the work!

I'll try to forward this to Fedora maintainer...

I'll try to forward this to Fedora maintainer...

Bug created: https://bugzilla.redhat.com/show_bug.cgi?id=1717455

How would it fix the "no tray" behavior?

How would it fix the "no tray" behavior?

For me, the problem is not "I have no tray-icon", but "I cannot use the client easily". (I need to have the settings window opened. I cannot operate the client -- pausing, opening the settings window, ...)

I understand that it's a little bit different problem. If I have Nextcloud incorporated in Nautilus, I will not need the tray-icon.

And it looks like the reverting of the Gnome's removal of the icons is not going to happen.

And it looks like the reverting of the Gnome's removal of the icons is not going to happen.

Thats a good thing :)

but "I cannot use the client easily".

Yes, thats for me too. But by including the tray functionality to nautilus just shifts the thing and does not solve something.

Why not just make it run as a background job and if you launch the app it'll open the session that is active instead of a new instance or do not show anything anymore at all?

I am not clear on how the Nextcloud team is choosing to deal with this. Is the decision to implement the GSoC code into the client or de-prioritize / ignore the issue (despite the official code using a long since deprecated feature of Gnome) or ????

Is the decision to implement the GSoC code into the client or de-prioritize

@skewty As you can see in the post by Julius H盲rtl, the code is already there..;-)

Yes, both Nextcloud as well as GTK have the support in the code base. It just needs to be enabled when compiling.

@skewty As you can see in the post by Julius H盲rtl, the code is already there..;-)

Having it in some branch off to the side doesn't help 99% of the user base. That code doesn't appear to be merged into master where the 99% would benefit from it. If it is, I certainly am not seeing the features in the video using the PPA. Am I missing something?

Yes, both Nextcloud as well as GTK have the support in the code base. It just needs to be enabled when compiling.

So now your suggestion for the 99% is to compile their own Gnome-Shell to enable some abandoned / depricated features!? Really!?

@ia that was a mistake. I'm sorry. I was trying to find somebody else but got the wrong person from the list.

So now your suggestion for the 99% is to compile their own Gnome-Shell to enable some abandoned / depricated features!? Really!?

If I understood that correctly you need to compile nextcloud-client with the support. Not the GTK.

(If you compile the client with libcloudproviders support, you do not have the "old" status icon, but the libcloudproviders integration in Nautilus...)

It is more a packaging problem -- I've created a bug for Fedora. The PPA should need to use this build flag as well to use it.

@lachmanfrantisek Thank you. I think I understand the situation better now. So your current belief is that the code is in master but for whatever reason they do not offer the switch from the tray icon approach to the libcloudproviders approach.

According to https://twitter.com/csoriano1618/status/1062994581225123840, KDE didn't have support for libcloudproviders at the time he wrote it. A very quick search didn't turn up anything that would lead me to believe this has changed.

Given that the PPA is controlled by the nextcloud dev group here and not Canonical proper, couldn't they easily produce both a nextcloud-client-kde and a nextcloud-client-gnome package. One with KStatusNotifier support and the other with libcloudproviders support?

I think I will clone the repo and it out myself :) Thanks!

@skewty I can see two reasons why the packages are not built with the support:

  • The packagers do not know about that.
  • They need (or want) to provide one package for all desktop environments. And they are waiting for the support in all environments... Second PPA can be a solution, but it takes some extra time to maintain both of them...

(If you compile the client with libcloudproviders support, you do not have the "old" status icon, but the libcloudproviders integration in Nautilus...)

Which would also be the reason why Arch doesn't have it around somewhere, and flathub also does not support that. That's bad.

No, the Nextcloud client still supports the tray icon, even if it is built with libcloudproviders, so this keeps working as before on other desktop environments.

@juliushaertl thanks for the clarification, that's nice.

Looks like libcloudproviders is not integrated / active in GTK because it leads to crashes in many apps.
https://bugs.archlinux.org/task/62502
https://gitlab.gnome.org/GNOME/gtk/issues/33

Any updates to fix this issue on Gnome desktop?

Looks like libcloudproviders is not integrated / active in GTK because it leads to crashes in many apps.
https://bugs.archlinux.org/task/62502
https://gitlab.gnome.org/GNOME/gtk/issues/33

should be fixed in latest libcloudproviders, but I don't see any release yet, so I brought up issue https://gitlab.gnome.org/World/libcloudproviders/issues/15

EDIT: I also tried compile git libcloudproviders, together with gtk+ 3.24.12 with enabled cloud flag and it looks really great. So lets push and make this happen on most widely used distros. Mostly needed to push libcloudproviders stable release.
nextcloud-integration

Yes, both Nextcloud as well as GTK have the support in the code base. It just needs to be enabled when compiling.

@juliushaertl Can you please give advice how exactly it can be done? (e.i. What flag is needed to make it work?)

Or do you have some docs/instructions for that?

Thanks in advance!

(I am trying to help the Fedora maintainer of nextcloud-client to add the support for libcloudproviders.)

Operating system:
Arch Linux (w/ GNOME)

OS language:
de_de

Client package (From Nextcloud or distro) (Linux only):
Snap, Flatpak, compiled from source

Just for the record (as seemingly comparable root cause): Issue also apperars on:

Operating System:
Debian 10 (Buster) with GNOME 3.30

Client package:
Debian Buster repository providing nextcloud-desktop 2.51

Yes, both Nextcloud as well as GTK have the support in the code base. It just needs to be enabled when compiling.

@juliushaertl Can you please give advice how exactly it can be done? (e.i. What flag is needed to make it work?)

Or do you have some docs/instructions for that?

Thanks in advance!

(I am trying to help the Fedora maintainer of nextcloud-client to add the support for libcloudproviders.)

Anyone in the know mind peeling back the curtain on this? The Fedora bug has stalled (been closed, actually) under NEEDINFO status.

I am on Fedora 33 Workstation (i.e. Gnome) and have nextcloud-client installed with dnf. Also I use the AppIndicator and KStatusNotifierItem Support Gnome extension. And this gives me a working and functional tray icon.

BUT: this does not work when I enable autostart of the nextcloud client in the settings. Then even though the client is running there is no tray icon. But if I open it manually, the tray icon is there (and a new instance of the client).
Very weird!

Also: What is the value added of installing nextcloud-client-nautilus alongside nextcloud-client on Fedora?

Also: What is the value added of installing nextcloud-client-nautilus alongside nextcloud-client on Fedora?

That package is for Nextcloud integration into Nautilus, so I believe that is what provides the synchronization status indicator icons and special right-click-menu items for files in Nextcloud-synchronized directories.

@wmutschl rebuild GTK with libcloudproviders support, stay away from extensions and also no need to autostart nextcloud.. (does not work with flatpak yet).
grafik

At least for GNOME this is fixed and since my report was only for this DE, I'll close it :+1:
Thanks for the work.

For Debian guys,

I sent MR with preparation to update libcloudprovider to 0.3.1, so hopefully we will see GTK with enabled libcloudproviders support soon!

@wmutschl rebuild GTK with libcloudproviders support, stay away from extensions and also no need to autostart nextcloud.. (does not work with flatpak yet).

Looks great. Do you have a tutorial or could you provide the commands on how to rebuild GTK with libcloudproviders support?

For people who don't want to stay away from extensions, this reply fixes my "Nextcloud Icon does not show up with autostart" issue.

@wmutschl It's actually just a meson flag. You can look at how Arch does it:
https://github.com/archlinux/svntogit-packages/blob/packages/gtk3/trunk/PKGBUILD

Was this page helpful?
0 / 5 - 0 ratings