Bug 28294 - xapps missing features
Summary: xapps missing features
Status: NEW
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: High major
Target Milestone: Mageia 8
Assignee: Joseph Wang
QA Contact:
URL: https://github.com/linuxmint/xapp/rel...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-05 02:16 CET by Joseph Wang
Modified: 2021-02-21 16:58 CET (History)
2 users (show)

See Also:
Source RPM: xapps-2.0.4-1.mga8.src.rpm
CVE:
Status comment:


Attachments

Description Joseph Wang 2021-02-05 02:16:39 CET
This is taken from bug 28129

 Michael Webster 2021-02-03 03:43:15 CET

Hi, this should fix the issue:

https://github.com/linuxmint/nemo/commit/b84f471ee019043f438e872b39b78258b9e60962

While working on this I noticed a few other problems with xapps - I'm unsure where the best place to bring them up so I'll just do it here:

XApp gtk3 module:

There is now a gtk module that a) adds a "Favorites" shortcut to all gtk3 file dialogs to allow access to these files, and b) improves panel icon reliability with apps created with the Web-App manager (https://github.com/linuxmint/webapp-manager).

This is enabled with an environment variable - see:
https://github.com/linuxmint/xapp/blob/master/data/80xapp-gtk3-module.sh

The default location for that (defined in data/meson.build) doesn't appear to be correct in mageia 8, at least it wasn't applying in my environment during testing, though it functioned ok if I exported it later in a terminal. It looks like it should go in /etc/X11/xinit.d for you.

XApp status-notifier support:

A while back we implemented StatusNotifier support in xapps (see https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem). 

There is a daemon that starts with the session - xapp-sn-watcher - that gives programs that support this something to contact and set up status icons. This is an alternative to xembed icons (GtkStatusIcon) which is deprecated in gtk3, and works with the xapp applet in cinnamon. There's an applet for mate and xfce4 as well (the xfce4 plugin has its own source packaging).

Anyhow I only mention this stuff because it doesn't appear they're currently being used here, and I'd recommend them for the UX improvements they provide. If you're purposely not using them, just ignore me. :)

Anyhow, let me know how that patch works. I'm hoping to get a new tagged release for xapps and nemo soon, which will include all of these fixes and more.

Mike



Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
Comment 1 Joseph Wang 2021-02-05 02:53:45 CET
Also the package is definitely broken, but when I put in the current apps, I get the wrong wait cursor.  Also the wait cursor appears for a few seconds as I think the startup apps are initializing.
Comment 2 Michael Webster 2021-02-05 04:11:27 CET
The xapp-sn-watcher service doesn't do anything but talk to other programs over dbus - the only thing I could possibly think of is there's a delay built in to it at startup, and it starts at a point during login that it can delay other things from starting immediately. It could be this delay is simply exposing the incorrect cursor briefly before the correct one is applied. Either way, this particular behavior is fixed in git, but hasn't been in a point release yet.

Honestly if you guys are in beta or close to release, I wouldn't bother with this one for now, it doesn't provide anything 'new', it's just an alternative and improved way of rendering status icons - it's not something I'd throw in at the last minute.

The gtk module I'd try to get in, however, as it's pretty harmless and complements the new favorites feature in nemo by making them accessible in gtk file dialogs.

CC: (none) => miketwebster

Comment 3 Aurelien Oudelet 2021-02-05 11:19:48 CET
Assigned to the package maintainer.

(Please set the status to 'assigned' if you are working on it)

Assignee: bugsquad => joequant
CC: (none) => ouaurelien
Target Milestone: --- => Mageia 8
Source RPM: xapps-2.0.4-2.mga8 => xapps-2.0.4-1.mga8.src.rpm

Aurelien Oudelet 2021-02-05 11:20:43 CET

URL: (none) => https://github.com/linuxmint/xapp/releases/tag/2.0.6

Comment 4 Aurelien Oudelet 2021-02-20 14:31:26 CET
Not that in current Cinnamon situation from Mageia 8:

When /usr/bin/cinnamon-launcher starts, it complains about missing:

Could not spawn StatusNotifier watcher (xapp-sn-watcher): L’exécution du processus fils « /usr/libexec/xapps/sn-watcher/xapp-sn-watcher »

i think this prevents us from displaying the mgaapplet status icon. mgaapplet is our own tool to update the distribution from the systray, without launching it from our Mageia Control Centre.

People like to be informed that an update is available.
It should be there.

Priority: Normal => High
Severity: normal => major

Comment 5 Aurelien Oudelet 2021-02-20 14:44:21 CET
Sorry, the Comment 4 is misleading.
mgaapplet does shows when updates are available (I triggered it by selecting Tainted repo in drakrpm-edit-media). So, this is OK for now.
But, the icon is missing at boot time.
Comment 6 Michael Webster 2021-02-20 16:26:24 CET
If this is the applet:
http://gitweb.mageia.org/software/mgaonline/tree/mgaapplet

Then it does use GtkStatusIcon as a fallback mechanism, so the xapp-sn-watcher process isn't necessary. The warning in the log is harmless - Cinnamon's xapp status applet attempts to run the process when it starts and throws this if it can't. Feel free to patch out the warning here:
https://github.com/linuxmint/xapp/blob/master/libxapp/xapp-status-icon-monitor.c#L296-L297

The legacy tray applet does work properly (the one that handles GtkStatusIcons) - the network icon (net_applet) is visible from the start.

The update icon showed up after a few minutes (and once I enabled an update repo and rebooted).

Playing around with my beta vm it looks as though the update check is delayed 5 minutes by default at login - which seemed to match behavior I observed. According to .xsession-errors it seems like the status icon isn't created until that time.

I could be mistaken about a lot of this - while I know cinnamon, I'm utterly unfamiliar with mageia.
Comment 7 Aurelien Oudelet 2021-02-20 17:36:16 CET
(In reply to Michael Webster from comment #6)
> If this is the applet:
> http://gitweb.mageia.org/software/mgaonline/tree/mgaapplet
> 
> Then it does use GtkStatusIcon as a fallback mechanism, so the
> xapp-sn-watcher process isn't necessary. The warning in the log is harmless
> - Cinnamon's xapp status applet attempts to run the process when it starts
> and throws this if it can't. Feel free to patch out the warning here:
> https://github.com/linuxmint/xapp/blob/master/libxapp/xapp-status-icon-
> monitor.c#L296-L297
> 
> The legacy tray applet does work properly (the one that handles
> GtkStatusIcons) - the network icon (net_applet) is visible from the start.
> 
> The update icon showed up after a few minutes (and once I enabled an update
> repo and rebooted).
> 
> Playing around with my beta vm it looks as though the update check is
> delayed 5 minutes by default at login - which seemed to match behavior I
> observed. According to .xsession-errors it seems like the status icon isn't
> created until that time.
> 
> I could be mistaken about a lot of this - while I know cinnamon, I'm utterly
> unfamiliar with mageia.

No, you're entirely right.
But, xapp-sn-watcher in Mageia with Cinnamon is a "plus-value", a better feature than legacy because of software that can populate the systray.
Comment 8 Michael Webster 2021-02-20 18:11:09 CET
I completely agree - I just assumed since you guys were doing 'release candidates' this meant avoiding any changes that could cause new regressions - I was just trying to put people at ease about trying to get this working.


The issue Joseph mentioned in the original comment may be addressed by these two commits:

https://github.com/linuxmint/xapp/commit/9349913edb9b871950dc59e9cbe07831bef22630
https://github.com/linuxmint/xapp/commit/0199e62a7d5b1ef24c5d521c498a9446d0e82862

Unfortunately we haven't gotten to actually tag a new release that would include those (among a couple of other unrelated fixees).

They remove the startup delay which may have been holding up the session (and possibly causing the issue with the pointer during login that he mentioned.
Comment 9 Joseph Wang 2021-02-21 16:58:08 CET
I considered adding the fixes, but when I did, I got what seemed to be startup delays and odd cursor behavior.  Since the system worked less well with the changes than without them, I thought it would be best not to include the fixes since I don't want to do anything that breaks the release.

Let me know if people think this is serious enough to require a fix in Mageia 8.

Note You need to log in before you can comment on or make changes to this bug.