Bug 259058

Summary: x11/mate-panel update to 1.26 left system inoperable.
Product: Ports & Packages Reporter: rkoberman
Component: Individual Port(s)Assignee: freebsd-gnome (Nobody) <gnome>
Status: Closed FIXED    
Severity: Affects Some People CC: ericbsd, gnome, jcfyecrayz, jonc, junchoon, lantw44, nc, np, olgeni, radicleparticles
Priority: --- Flags: bugzilla: maintainer-feedback? (gnome)
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Message log output from mate upgrade
none
[patch] update mate-themes to 3.22.23 (fixes mate-panel 1.26.1 with Traditional* themes selected)
ericbsd: maintainer-approval+, ericbsd: maintainer-approval+
[patch] undo mate-panel downgrade after mate-themes update seems to fix newer mate-panel jcfyecrayz: maintainer-approval? (ericbsd)

Description rkoberman 2021-10-11 03:21:15 UTC
Created attachment 228574 [details]
Message log output from mate upgrade

NOTE: this is not a problem with x11/mate as the metaport was unchanged. The ports that x11/mate and x11/mate-base depend on were updated to 1.26. This causes confusion and prevents my entering this as a problem with any specific port. I have been unable to pin this down to a specific port. The install was done with portmaster.

First, while installing the update to x11-fm/caja, mate-terminal crashed and killed the upgrade at that point. The log showed caja deinstalled but the new version was not installed. 

After that, I move to work in a vty and re-installed caja and re-installed caja and the remaining ports. After restarting X, the panel did not appear and the desktop was jumping 24 pixels up and down, though nothing was ever rendered in the panel space. I tried switching to a vty, but nothing happened for a while. Then after 10-15 seconds, it flipped to vty0. I switched back to X. mate-panel had stopped restarting and the display had stabilized, but no panel. After a few minutes the display froze. I logged in remotely and rebooted the system. When I started X (startx), the same thing repeated.

After two attempts, I backed off the upgrades to 1.24 and the system returned to normal.
Comment 1 Tomoaki AOKI 2021-10-11 04:34:31 UTC
For me, upgrade itself went OK, resolution and color depth are OK but no panel.
Fortunately, I've created snapshot of /usr/local, var/db before upgrade and rolling back to the snapshot made everything as before (profiles doesn't seem to be polluted).
Comment 2 rkoberman 2021-10-11 22:29:52 UTC
I have changes the title of this bug as it is increasingly clear that mate-panel is at the center of the problem. I found 3211 of the message:
pid ?????? (mate-panel), jid 0, uid 9381: exited on signal 6 (core dumped)

Other than the crash of mate-terminal during the install of caja, there were no other cores. If I get time, I will build gnome-panel with debug symbols.
Comment 3 rkoberman 2021-10-11 22:30:09 UTC
I have changes the title of this bug as it is increasingly clear that mate-panel is at the center of the problem. I found 3211 of the message:
pid ?????? (mate-panel), jid 0, uid 9381: exited on signal 6 (core dumped)

Other than the crash of mate-terminal during the install of caja, there were no other cores. If I get time, I will build gnome-panel with debug symbols.
Comment 4 Tomoaki AOKI 2021-10-12 22:16:26 UTC
Installed devel/gdb and got backtrace from mate-panel.core.
stable/13 at git 156db3557332, amd64 using latest x11/nvidia-driver port.
As I've missingly deleted the mate-panel.core. So need re-upgrading mate to obtain more info.

Reading symbols from /usr/local/bin/mate-panel...
(No debugging symbols found in /usr/local/bin/mate-panel)
[New LWP 100487]
[New LWP 100624]
[New LWP 100625]
[New LWP 100626]
[New LWP 100627]
Core was generated by `mate-panel'.
Program terminated with signal SIGABRT, Aborted.
Sent by thr_kill() from pid 2871 and user 1001.
#0  0x00000008016634ca in thr_kill () from /lib/libc.so.7
[Current thread is 1 (LWP 100487)]
(gdb) bt
#0  0x00000008016634ca in thr_kill () at /lib/libc.so.7
#1  0x00000008015d42e4 in raise () at /lib/libc.so.7
#2  0x000000080168e26c in abort () at /lib/libc.so.7
#3  0x00000008015b6941 in  () at /lib/libc.so.7
#4  0x0000000800ee8570 in  () at /usr/local/lib/libcairo.so.2
#5  0x000000000025e605 in  ()
#6  0x000000000025df5c in  ()
#7  0x00000000002718c5 in  ()
#8  0x000000000026e2f9 in  ()
#9  0x0000000801202c46 in g_closure_invoke () at /usr/local/lib/libgobject-2.0.so.0
#10 0x000000080121833c in  () at /usr/local/lib/libgobject-2.0.so.0
#11 0x00000008012195e1 in g_signal_emit_valist () at /usr/local/lib/libgobject-2.0.so.0
#12 0x00000008012199ce in g_signal_emit () at /usr/local/lib/libgobject-2.0.so.0
#13 0x0000000800bb0449 in gtk_widget_size_allocate_with_baseline () at /usr/local/lib/libgtk-3.so.0
#14 0x000000000026f780 in  ()
#15 0x0000000801202ec5 in  () at /usr/local/lib/libgobject-2.0.so.0
#16 0x0000000801219017 in g_signal_emit_valist () at /usr/local/lib/libgobject-2.0.so.0
#17 0x00000008012199ce in g_signal_emit () at /usr/local/lib/libgobject-2.0.so.0
#18 0x0000000800bd1bd2 in  () at /usr/local/lib/libgtk-3.so.0
#19 0x0000000801202c46 in g_closure_invoke () at /usr/local/lib/libgobject-2.0.so.0
#20 0x000000080121833c in  () at /usr/local/lib/libgobject-2.0.so.0
#21 0x00000008012195e1 in g_signal_emit_valist () at /usr/local/lib/libgobject-2.0.so.0
#22 0x00000008012199ce in g_signal_emit () at /usr/local/lib/libgobject-2.0.so.0
#23 0x0000000800bae2b3 in gtk_widget_show () at /usr/local/lib/libgtk-3.so.0
#24 0x0000000000277541 in panel_profile_load ()
#25 0x0000000000241890 in main ()
(gdb)
Comment 5 Tomoaki AOKI 2021-10-12 22:20:52 UTC
Forgot to mention.
I got error message below when running `mate-panel --replace` on mate-terminal, invoked from caja. mate-panel.core I used to get info on my previous post was generated with this action. (The one with start-up time was overwritten by this.)

Assertion failed: (CAIRO_REFERENCE_COUNT_HAS_REFERENCE (&surface->ref_count)), function cairo_surface_reference, file cairo-surface.c, line 930.
zsh: abort      mate-panel --replace
Comment 6 commit-hook freebsd_committer 2021-10-13 18:08:55 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0d45d70a5fdf13af63c2363ae7c57a1def43415f

commit 0d45d70a5fdf13af63c2363ae7c57a1def43415f
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2021-10-13 18:06:54 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2021-10-13 18:07:49 +0000

    x11/mate-panel: Revert to 1.24.2 and bump PORTEPOCH

    This reverts commit 224bd2de4725bb7478058e7fdf6269256dc0426e and aee69f0a3cd5142a93e5a736ce3a0592c08926b3.

    PR:     259058

 x11/mate-panel/Makefile  | 6 +++++-
 x11/mate-panel/distinfo  | 8 +++++---
 x11/mate-panel/pkg-plist | 4 ----
 3 files changed, 10 insertions(+), 8 deletions(-)
Comment 7 Neel Chauhan freebsd_committer 2021-10-13 18:09:40 UTC
I decided to revert mate-panel to the earlier 1.24.2 version to prevent these crashes.

Does reverting work for you?
Comment 8 Jonathan Chen 2021-10-13 19:18:02 UTC
At an application level, I resolved this by:
$ dconf write /org/mate/desktop/interface/gtk-theme "'BlueMenta'"
(caveat: dconf require X11 $DISPLAY, which is a whole new pain)

I was using the "TraditionalOk" theme which was causing the display to jump up and down. All the other themes I tried appeared to work fine.
Comment 9 rkoberman 2021-10-14 05:36:29 UTC
(In reply to Neel Chauhan from comment #7)
Unfortunately, I could not complete the upgrade. mate-applets requires libmatepanelapplet-4.0 >= 1.25.2. This is a file installed by mate-panel. So I can't build mate-applets. Looks like I will be rolling back to 1.24 again, though it will be faster this time.
Comment 10 Tomoaki AOKI 2021-10-14 14:55:25 UTC
(In reply to Neel Chauhan from comment #7)
Thanks! Panel is back now.

Additional note:
  I am using "TraditionalOk" theme as Jonathan.
  So possibly 1.26 + other theme could help for me, too.
  As mate-applets 1.26 (already updated one) seems working with
  mate-panel 1.24 at least applets I'm using, something needed
  for "TraditionalOk" theme are broken or deleted on mate-panel 1.26.

  Reading rkoberman's comment and tried rebuilding mate-applets,
  I could reproduced broken build just as rkoberman claims.
Comment 11 rkoberman 2021-10-14 17:00:17 UTC
I'm running the most recent ports of all mate ports except mate-panel (1.24.2) and mate-applets (1.24.1) and everything appears to be running normally.

I cam also confirm that I am not running the default theme. I was running "Green". It's no longer in the list of themes. I used it because it retained to old, wider scrollbars with up and down arrows for all mate and most other applications. Firefox is an annoying exception. I can believe that this is directly tied to the problem with mate-panel.
Comment 12 John Hein 2021-10-15 00:15:13 UTC
(In reply to Neel Chauhan from comment #7)
Now building mate-applets fails because mate-panel is too old:

configure: error: Package requirements (libmatepanelapplet-4.0 >= 1.25.2) were not met:

Package dependency requirement 'libmatepanelapplet-4.0 >= 1.25.2' could not be satisfied.
Package 'libmatepanelapplet-4.0' has version '1.24.2', required version is '>= 1.25.2'

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables MATE_APPLETS4_CFLAGS
and MATE_APPLETS4_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
+ echo '===>  Script "configure" failed unexpectedly.'
===>  Script "configure" failed unexpectedly.
Comment 13 Jonathan Chen 2021-10-15 00:29:04 UTC
I can confirm that the ports tree as at 342d9a81ac246b02e2c2f38ae7bf667157031f94  Thu Oct 14 18:10:40 2021 +0000 (graphics/vulkan-tools: update to 1.2.196) does not complete successfully due to mate-applets-1.26.0 build failure.
Comment 14 John Hein 2021-10-15 16:37:22 UTC
For those that had a problem with the new mate-panel, is it possible there is some incompatibility due to saved state - in places like ~/.local, ~/.cache, ~/.config, etc.?

Maybe try again with the new mate-panel where you use a new home directory or move away "dot" directories/files?

If you try that, please report back here.
Comment 15 Jonathan Chen 2021-10-15 19:23:36 UTC
@John Hein - the issue with mate-panel 1.26 is that it's incompatible with some themes. This is what I have tried with a brand new user (with no config files to start with):
 1. Login - (it works)
 2. System - Preferences - Look and Feel - Appearance
 3. Change the Theme to "TraditionalOk"
 4. The menu-panels disappear and the icons on the Desktop jump up and down.
 5. Change to BlueMenta - the panels come back.
Comment 16 ddrinnon 2021-10-15 23:06:56 UTC
(In reply to John Hein from comment #12)

I have the same build issue x11/mate-applets:

Package dependency requirement 'libmatepanelapplet-4.0 >= 1.25.2' could not be satisfied.
Package 'libmatepanelapplet-4.0' has version '1.24.2', required version is '>= 1.25.2'

Should this be a new bug report?
Comment 17 rkoberman 2021-10-16 06:20:49 UTC
(In reply to ddrinnon from comment #16)
I would not recommend opening a new ticket. It is all a part of the same issue.

There are two work-arounds available:
1. Roll back gnome-applets to 1.24.1. That is what I did. (Revert 2b8e2746329e81543f0502f64c41321bf0447ac7)
2. Change your theme to one that does not trigger the problem.
   You can change the properties by reverting mate-panel to 1.26.1 and run mate-appearance-properties to change themes. Revert 0d45d70a5fdf13af63c2363ae7c57a1def43415f to get back to 1.26.1.

Jonathan Chen has confirmed that Traditional0k will fail. BlueMenta works. 

I really would like to track down the particular option that triggers the failure, but it will take a bit to even confirm which themes work and which do not. Hopefully I can test them tomorrow. Then I need to figure out where these are stored to track down the exact cause.. I've looked at the expected places and found nothing. So far DuckDuckGo has not helped.
Comment 18 rkoberman 2021-10-17 06:41:56 UTC
Doing a quick test, all of the standard mate themes work with mate-panel-1.26.1. HighContrast failes stating:
This theme will not look as intended because the require GTK++ theme 'HightContrast' is not installed.

TraditionalGreen ana TraditionalOk both cause mate-panel to die and the desktop to jump up and down by the 24 pixels that the panel should occupy.

Tomorrow I will try to track down what causes the problem by examining the things that are unique to the two Traditional themes.

At this time, mate-panel-1.26.1 probably can be re-committed with a note that switching to a non-Traditional theme will prevent the crashes. This may be easily done by opening a terminal window and entering "mate-appearance-properties" and selecting any other standard theme except HighCOntrast. If you have  "Custom" theme, it may also cause mate-panel to crash. This will allow mate-applets-1-26-0 to build.
Comment 19 John Hein 2021-10-18 22:53:18 UTC
(In reply to rkoberman from comment #18)
I can reproduce the failures with TraditionalOk and TraditionalGreen with mate-3.22.14

When I manually run mate-panel on the command line with the Traditional* themes selected, I get the following error message (which explains the core dump):

Assertion failed: (CAIRO_REFERENCE_COUNT_HAS_REFERENCE (&surface->ref_count)), function cairo_surface_reference, file cairo-surface.c, line 930. 


When I update to mate-3.22.23, however, mate-panel 1.26.1 does not core dump.

It is probably wise to update mate-themes in step with the other mate ports as a general guideline.  3.22.14 is from 2019.  3.22.23 is from Sep 2021.
Comment 20 John Hein 2021-10-18 22:57:50 UTC
Created attachment 228814 [details]
[patch] update mate-themes to 3.22.23 (fixes mate-panel 1.26.1 with Traditional* themes selected)

Attached is the update for the latest mate-themes.

After that is committed, it seems that the mate-panel 1.26.1 update should be resurrected.
Comment 21 John Hein 2021-10-18 22:59:12 UTC
(In reply to John Hein from comment #20)
p.s. And updating mate-panel to 1.26.1 will get mate-applets building again.
Comment 22 John Hein 2021-10-18 23:02:15 UTC
(In reply to John Hein from comment #19)
Everywhere I wrote mate-3.22* should have read mate-themes-3.22*
Comment 23 John Hein 2021-10-19 00:47:24 UTC
(In reply to rkoberman from comment #18)
Correction: mate-themes-3.22.14 is from Sep 2017.
Comment 24 commit-hook freebsd_committer 2021-10-19 11:12:21 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=87b212647e3b8079849e639537ba564c18a41fc2

commit 87b212647e3b8079849e639537ba564c18a41fc2
Author:     Eric Turgeon <ericbsd@FreeBSD.org>
AuthorDate: 2021-10-19 11:07:50 +0000
Commit:     Eric Turgeon <ericbsd@FreeBSD.org>
CommitDate: 2021-10-19 11:11:26 +0000

    x11-themes/mate-themes: updated to 3.22.23

    PR:     259058
    Reported by:    John Hein

 x11-themes/mate-themes/Makefile  |  20 +-
 x11-themes/mate-themes/distinfo  |   6 +-
 x11-themes/mate-themes/pkg-plist | 893 +++++++++++++++++++++++++++++++--------
 3 files changed, 736 insertions(+), 183 deletions(-)
Comment 25 rkoberman 2021-10-19 14:16:03 UTC
Ports are still out of sync. mate-themes has now been updated, but mate-panel remains at 1.24.1 and needs to be moved to 1.26 now that mate-themes is updated.
Comment 26 Eric Turgeon freebsd_committer 2021-10-19 18:04:03 UTC
(In reply to rkoberman from comment #25)

Good thing you noticed that https://github.com/freebsd/freebsd-ports/commit/0d45d70a5fdf13af63c2363ae7c57a1def43415f. I was not aware of that revert. That would have broken GhostBSD again.

I am getting tired of people making changes that affect GhsotBDS directly.
Comment 27 John Hein 2021-10-19 20:21:36 UTC
Created attachment 228844 [details]
[patch] undo mate-panel downgrade after mate-themes update seems to fix newer mate-panel

(In reply to Eric Turgeon from comment #26)
Yes, leaving mate-applets broken for a week after the revert is probably less responsive than we want.  Seems like there have been quite a few of these kinds of commits without ownership of the fallout of late.


Anyway, thanks, Eric for the quick response on mate-themes.  I think we should also now commit the update of mate-panel to 1.26.1 (or "uncommit" the revert if you like).  That will, as discussed here, get mate-applets building again.
Comment 28 commit-hook freebsd_committer 2021-10-19 23:38:25 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=674d093cd09349d36e8dec9c0dcdf05daf0fc988

commit 674d093cd09349d36e8dec9c0dcdf05daf0fc988
Author:     Eric Turgeon <ericbsd@FreeBSD.org>
AuthorDate: 2021-10-19 23:34:33 +0000
Commit:     Eric Turgeon <ericbsd@FreeBSD.org>
CommitDate: 2021-10-19 23:37:24 +0000

    x11/mate-panel: Revert "x11/mate-panel: Revert to 1.24.2 and bump PORTEPOCH"

    This reverts commit 0d45d70a5fdf13af63c2363ae7c57a1def43415f.

    It should have never been reverted at the first place.

    PR:             259058
    Reported by:    John Hein

 x11/mate-panel/Makefile  | 6 +-----
 x11/mate-panel/distinfo  | 8 +++-----
 x11/mate-panel/pkg-plist | 4 ++++
 3 files changed, 8 insertions(+), 10 deletions(-)
Comment 29 Eric Turgeon freebsd_committer 2021-10-19 23:43:16 UTC
(In reply to John Hein from comment #27)

I did revert the commit. It will be at the same stats that it was before the revert that should have never happened.
Comment 30 Eric Turgeon freebsd_committer 2021-10-19 23:48:29 UTC
I will close this. If there is a problem, we can reopen it.
Comment 31 ddrinnon 2021-10-20 00:08:54 UTC
x11/mate-applets is still failing even with mate-applets-1.26.0 on my FreeBSD_12-RELEASE Poudriere system:

checking for MATE_APPLETS4... no
configure: error: Package requirements (libmatepanelapplet-4.0 >= 1.25.2) were not met:

Package dependency requirement 'libmatepanelapplet-4.0 >= 1.25.2' could not be satisfied.
Package 'libmatepanelapplet-4.0' has version '1.24.2', required version is '>= 1.25.2'


Should I open a new bug report?
Comment 32 Eric Turgeon freebsd_committer 2021-10-20 00:15:59 UTC
(In reply to ddrinnon from comment #31)
Did you update mate-pannel?
Comment 33 Eric Turgeon freebsd_committer 2021-10-20 00:22:08 UTC
This "Package 'libmatepanelapplet-4.0' has version '1.24.2', required version is '>= 1.25.2'" mean you still have mate-panel 1.24.2 update your ports tree.
Comment 34 ddrinnon 2021-10-20 00:34:29 UTC
Yes, I updated my ports tree.

I even deleted mate-panel-1.24.2,1.pkg from my Poudriere repo and re-ran my script that invokes a ports tree update and then does the bulk build, but it looks like other mate ports are looking for 1.24, not 2.26:

[00:00:35] Deleting mate-base-1.26.0.pkg: missing dependency: mate-panel-1.24.2,1
[00:00:35] Deleting mate-media-1.26.0.pkg: missing dependency: mate-panel-1.24.2,1
[00:00:35] Deleting mate-notification-daemon-1.26.0.pkg: missing dependency: mate-panel-1.24.2,1
[00:00:35] Deleting mate-power-manager-1.26.0.pkg: missing dependency: mate-panel-1.24.2,1
[00:00:35] Deleting mate-utils-1.26.0.pkg: missing dependency: mate-panel-1.24.2,1

So, mate-panel 1.24 gets built again.  But then mate-applets fails as I outlined before.
Comment 35 Jonathan Chen 2021-10-20 00:37:15 UTC
The PORT_EPOCH was bumped in the downgrade.

This means that the upgrade to mate-panel 1.26 now also requires the PORT_EPOCH to be set to "1".
Comment 36 ddrinnon 2021-10-20 00:40:01 UTC
Where does PORT_EPOCH get changed?
Comment 37 rkoberman 2021-10-20 00:49:01 UTC
The current port in the repo is 1.26.1,1. o it is back at version 1.26.1 (matching the rest of mate) and with the PORTEPOCH set to '1'. I believe everything will be fine once the changes are fully propagated. I just did  pull and downloaded the correct version of both mate-themes and mate-panel.

I believe the closed state is correct and the issue is resolved.
Comment 38 ddrinnon 2021-10-20 00:59:09 UTC
I updated the ports tree again and now poudriere has the latest mate-panel in the tree.  It looks like everything Mate is building okay now.  Thank you!
Comment 39 John Hein 2021-10-20 01:30:50 UTC
(In reply to Eric Turgeon from comment #30)
Eric, you removed PORTEPOCH=1.  As you may already be aware, that makes the port version go backwards.  Please restore that.
Comment 40 John Hein 2021-10-20 22:19:20 UTC
(In reply to John Hein from comment #39)
Eric, bapt@ restored the PORTEPOCH in commit 502d7bd453f3ca41a2bcf97a88643c3a51817892
Comment 41 Jim D. 2021-11-14 05:22:04 UTC
Had problems with Mate-1.24. Read all of the above and proceeded with removing 1.24 and installing 1.26. Unfortunately, x11-themes/mate-icon-theme (1.26.0) appears to compile cleanly, but the install bombs out with scads of "Unable to access file 

/usr/ports/z11-themes/mate-icon-theme/work/stage/usr/local/share/icons/<fn>/
<size>/status/<fn#2>.png

No such file or directory" messages.
Comment 42 Jim D. 2021-11-14 05:23:02 UTC
Had problems with Mate-1.24. Read all of the above and proceeded with removing 1.24 and installing 1.26. Unfortunately, x11-themes/mate-icon-theme (1.26.0) appears to compile cleanly, but the install bombs out with scads of "Unable to access file 

/usr/ports/z11-themes/mate-icon-theme/work/stage/usr/local/share/icons/<fn>/
<size>/status/<fn#2>.png

No such file or directory" messages.
Comment 43 John Hein 2021-11-15 04:04:38 UTC
(In reply to Jim D. from comment #42)
Open up a separate bug if you can reliably reproduce this with a clean build and the latest ports tree.