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

Update to Gnome-40 #29974

Merged
merged 95 commits into from
Apr 9, 2021
Merged

Update to Gnome-40 #29974

merged 95 commits into from
Apr 9, 2021

Conversation

Gottox
Copy link
Member

@Gottox Gottox commented Apr 3, 2021

Platforms:

  • aarch64-musl
  • aarch64
  • armv6l-musl
  • armv6l
  • armv7l-musl
  • armv7l
  • i686
  • ppc-musl
  • ppc
  • ppc64-musl
  • ppc64
  • ppc64le-musl
  • ppc64le
  • ppcle-musl
  • ppcle
  • x86_64-musl
    • compile
    • check
  • x86_64
    • compile
    • check

TODO

  • update vala
  • update tracker-miners
  • functional test
  • python3-gobject tests fail on x86_64
  • gspell tests fail on x86_64
  • dconf tests fail on x86_64
  • glib tests fail on x86_64-musl
  • gobject-introspection fails on cross armv7hf

@ericonr
Copy link
Member

ericonr commented Apr 3, 2021

Might want to compare to #29959 and paper's branch ;)

@Gottox
Copy link
Member Author

Gottox commented Apr 3, 2021

duplicate of #29959.

@oreo639
Copy link
Member

oreo639 commented Apr 3, 2021

I haven't tested this, but, assuming this works I have no issues with this superseding my pr. (less work for me, and my pr was simply meant to be just enough to be functional)

However I still have a few comments/questions:
You probably want to double check the mutter commit(s) as it seems a little messed up. (also double check the changes in the second mutter commit)

Doesn't gnome-shell still depend on gtk+3 as well?
https://github.com/GNOME/gnome-shell/blob/master/meson.build#L84
https://src.fedoraproject.org/rpms/gnome-shell/blob/rawhide/f/gnome-shell.spec#_55

@Gottox
Copy link
Member Author

Gottox commented Apr 3, 2021

@oreo639 I'll rebase on you're PR once I've got the initial webkit2gtk update done.

@Gottox Gottox force-pushed the gnome40 branch 2 times, most recently from 28d5bbc to c513a35 Compare April 3, 2021 18:12
@oreo639 oreo639 mentioned this pull request Apr 3, 2021
8 tasks
@Gottox
Copy link
Member Author

Gottox commented Apr 3, 2021

@q66 waiting till you update webkitgtk and patches.

common/shlibs Outdated Show resolved Hide resolved
srcpkgs/mutter/template Outdated Show resolved Hide resolved
@Gottox Gottox force-pushed the gnome40 branch 7 times, most recently from c59a2a2 to 9c56aee Compare April 4, 2021 09:14
@Gottox
Copy link
Member Author

Gottox commented Apr 4, 2021

Blocked by: #29689

@Gottox
Copy link
Member Author

Gottox commented Apr 5, 2021

gobject-introspection-1.68.0_1 build error on armv7hf:

[69/99] Generating gir-glib with a custom command
FAILED: gir/GLib-2.0.gir 
/builddir/gobject-introspection-1.68.0/build/tools/g-ir-scanner --output=gir/GLib-2.0.gir --no-libtool --quiet --reparse-validate --add-include-path /builddir/gobject-introspection-1.68.0/build/gir --add-include-path /builddir/gobject-introspection-1.68.0/gir --use-binary-wrapper=/usr/bin/g-ir-scanner-qemuwrapper --use-ldd-wrapper=/usr/bin/g-ir-scanner-lddwrapper --identifier-prefix=G --symbol-prefix=g --symbol-prefix=glib --c-include=glib.h --namespace=GLib --nsversion=2.0 --library=glib-2.0 --library=gobject-2.0 --external-library --pkg=glib-2.0 --cflags-begin -I/usr/armv7l-linux-gnueabihf/usr/include/glib-2.0 -I/usr/armv7l-linux-gnueabihf/usr/lib32/glib-2.0/include -DGLIB_COMPILATION -D__G_I18N_LIB_H__ -DGETTEXT_PACKAGE=Dummy --cflags-end /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/gobject/glib-types.h /usr/armv7l-linux-gnueabihf/usr/lib32/glib-2.0/include/glibconfig.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib-unix.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/galloca.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/garray.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gasyncqueue.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gatomic.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gbacktrace.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gbase64.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gbitlock.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gbookmarkfile.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gbytes.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gcharset.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gchecksum.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gconvert.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gdataset.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gdate.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gdatetime.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gdir.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/genviron.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gerror.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gfileutils.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/ggettext.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/ghash.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/ghmac.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/ghook.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/ghostutils.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gi18n-lib.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gi18n.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/giochannel.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gkeyfile.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/glist.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmacros.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmain.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmappedfile.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmarkup.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmem.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gmessages.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gnode.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/goption.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gpattern.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gpoll.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gprimes.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gprintf.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gqsort.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gquark.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gqueue.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/grand.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/grcbox.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/grefcount.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/grefstring.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gregex.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gscanner.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gsequence.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gshell.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gslice.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gslist.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gspawn.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gstdio.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gstrfuncs.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gstring.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gstringchunk.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gstrvbuilder.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtestutils.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gthread.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gthreadpool.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtimer.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtimezone.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtrashstack.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtree.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gtypes.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gunicode.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/guri.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gutils.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/guuid.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gvariant.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gvarianttype.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gversion.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gversionmacros.h /usr/armv7l-linux-gnueabihf/usr/include/glib-2.0/glib/gwin32.h ../gir/glib-2.0.c
Traceback (most recent call last):
  File "/builddir/gobject-introspection-1.68.0/build/tools/g-ir-scanner", line 98, in <module>
    from giscanner.scannermain import scanner_main
  File "/builddir/gobject-introspection-1.68.0/build/giscanner/scannermain.py", line 35, in <module>
    from giscanner.ast import Include, Namespace
  File "/builddir/gobject-introspection-1.68.0/build/giscanner/ast.py", line 29, in <module>
    from .sourcescanner import CTYPE_TYPEDEF, CSYMBOL_TYPE_TYPEDEF
  File "/builddir/gobject-introspection-1.68.0/build/giscanner/sourcescanner.py", line 34, in <module>
    from giscanner._giscanner import SourceScanner as CSourceScanner
ImportError: Error loading shared library /builddir/gobject-introspection-1.68.0/build/giscanner/_giscanner.cpython-39-x86_64-linux-gnu.so: Exec format error
[70/99] Linking target girepository/cmph/cmph-bdz-test
[71/99] Linking target girepository/gthash-test
[72/99] Linking target girepository/libgirepository-1.0.so.1.0.0
ninja: build stopped: subcommand failed.
=> ERROR: gobject-introspection-1.68.0_1: do_build: '${make_cmd} -C ${meson_builddir} ${makejobs} ${make_build_args} ${make_build_target}' exited with 1
=> ERROR:   in do_build() at common/build-style/meson.sh:132

@Gottox
Copy link
Member Author

Gottox commented Apr 5, 2021

😄

Screenshot from 2021-04-05 21-56-31

😞

Screenshot from 2021-04-05 23-57-59

@ericonr
Copy link
Member

ericonr commented Apr 5, 2021

Have you tried on real hardware? I can give it a test drive.

@ericonr
Copy link
Member

ericonr commented Apr 5, 2021

Btw, please include https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2010 as a backport.

And I would bump common/shlibs for all the GNOME packages as well (there's a high chance they will be using newly available functions from other GNOME pieces).

@Gottox
Copy link
Member Author

Gottox commented Apr 6, 2021

Have you tried on real hardware? I can give it a test drive.

Not yet. I at least want to have some stability on qemu. Atm it's pretty much unusable on it.

@Gottox
Copy link
Member Author

Gottox commented Apr 6, 2021

Btw, please include https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2010 as a backport.
applied
And I would bump common/shlibs for all the GNOME packages as well (there's a high chance they will be using newly available functions from other GNOME pieces).
Good idea

The glib fix has no effect on the stability issues in qemu.

But I see a second issue in dmesg:

[  128.022735] gsd-usb-protect[1585]: segfault at 8 ip 000055b7a42fd118 sp 00007fffa0c72190 error 4 in gsd-usb-protection[55b7a42fb000+3000]

@Gottox
Copy link
Member Author

Gottox commented Apr 6, 2021

https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/issues/585

That looks like my exact issue.

The issue is tracked for fedora here: https://bugzilla.redhat.com/show_bug.cgi?id=1937073

@Gottox
Copy link
Member Author

Gottox commented Apr 6, 2021

Okay, what I found out so far:

  • this issue seems to happen only on VMs so far (at least the issues mention that)
  • there's a relation between the session crash and the crash of the gsd service.

The actual session log looks like this:

** (gsd-usb-protection:2366): WARNING **: 08:00:25.614: Failed to connect to the screen saver: Error calling StartServiceByName for org.gnome.ScreenSaver: Timeout was reached

(gsd-usb-protection:2366): GLib-GIO-CRITICAL **: 08:00:25.614: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed
gnome-session-binary[1914]: WARNING: App 'org.gnome.SettingsDaemon.UsbProtection.desktop' respawning too quickly
gnome-session-binary[1914]: WARNING: Application 'org.gnome.SettingsDaemon.UsbProtection.desktop' killed by signal 11

(process:2476): Gtk-WARNING **: 08:00:25.669: Locale not supported by C library.
	Using the fallback 'C' locale.
Window manager warning: Failed to create DRM buffer wrapper: drmModeAddFB does not support format 'AR24' (0x34325241)
Window manager warning: Failed to create DRM buffer wrapper: drmModeAddFB does not support format 'AR24' (0x34325241)

(gnome-shell:1976): mutter-CRITICAL **: 08:00:26.173: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed

@Gottox Gottox merged commit d2622f0 into void-linux:master Apr 9, 2021
@thegarlynch
Copy link
Contributor

Wait, gnome 40 is not different package ? i thought it is different in windows 8 and windows 10 kind of way

@oreo639
Copy link
Member

oreo639 commented Apr 12, 2021

Void Linux is a rolling release distro meaning that there is only one version of Void Linux and that is constantly being updated with the latest versions of packages (with patches and bugfixes if necessary).

Gnome 40 is a new version of the GNOME desktop environment but isn't a separate DE. (it is meant to replace Gnome 3.38) The packaging in Void will reflect that.

There is a versioning scheme that exists with other "stable" distros (which just means that the packages stay the same for that release of the distro and only get patched with bugfixes and security fixes).

@Gottox
Copy link
Member Author

Gottox commented Apr 12, 2021

There are several changes in the frontend, but from a packaging perspective it's very much like a Gnome 3.40.

@thegarlynch
Copy link
Contributor

Holyshit, it's great. Did they improved the performance or something ? it runs smoother compared to previous version of gnome i've run

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 11, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants