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.38 #24260

Closed
wants to merge 105 commits into from
Closed

gnome 3.38 #24260

wants to merge 105 commits into from

Conversation

q66
Copy link
Contributor

@q66 q66 commented Aug 13, 2020

This should now be more or less ready. Tested on aarch64 and on ppc64le-musl. Several "unstable" versions were used, since 3.38 shipped with them (e.g. gnome-online-accounts, gnome-contacts and the gnome-flashback components), shouldn't be a practical problem and we can update them later once tagged.

TODO

  • clean it up
  • better testing, make sure testsuite passes
  • import the useful bits from gnome 3.36 updates #21382, or rebase if it gets merged
  • make sure crossbuilds work
  • test on more platforms
  • fix the metapackages (they haven't been touched, possibly in [RFC] Restructure GNOME metapackage #22936)
  • drop the vala option in the rest of the packages probably gonna do that once this PR is merged

Stable updates

  • yelp-xsl -> 3.38.0
  • yelp-tools -> 3.38.0
  • yelp -> 3.38.0
  • vala -> 0.50.0
  • valadoc -> 0.50.0
  • valabind -> (revbump)
  • devhelp -> 3.38.0
  • gdl -> 3.34.0
  • libsoup -> 2.72.0
  • grilo -> 0.3.13
  • grilo-plugins -> 0.3.12
  • gtksourceview4 -> 4.8.0
  • tepl -> 5.0.0
  • glade3 -> 3.38.0
  • libhandy -> (revbump)
  • libhandy1 -> 1.0.0
  • libxfce4ui -> (revbump)
  • libdazzle -> 3.38.0
  • anjuta -> (revbump)
  • sysprof -> 3.38.0
  • tracker -> 2.3.6
  • tracker-miners -> 2.3.5
  • tracker3 -> 3.0.0 (new)
  • tracker3-miners -> 3.0.0 (new)
  • bijiben -> 3.36.3
  • graphene -> 1.10.2
  • amtk -> 5.2.0
  • io.elementary.code -> (revbump)
  • phodav -> 2.5
  • gsettings-desktop-schemas -> 3.38.0
  • glib-networking -> 2.66.0
  • at-spi2-core -> 2.38.0
  • at-spi2-atk -> 2.38.0
  • libgweather -> 3.36.1
  • gnome-menus -> 3.36.0
  • gnome-desktop -> 3.38.0
  • gnome-settings-daemon -> 3.38.0
  • mutter -> 3.38.0
  • cheese -> 3.38.0
  • evolution-data-server -> 3.38.0
  • folks -> 0.14.0
  • gnome-online-accounts -> 3.37.90
  • gvfs -> 1.46.0
  • gnome-control-center -> 3.38.0
  • dconf-editor -> 3.38.0
  • gjs -> 1.66.0
  • gnome-shell -> 3.38.0
  • gnome-shell-extensions -> 3.38.0
  • gdm -> 3.38.0
  • gnome-session -> 3.38.0
  • gnome-initial-setup -> 3.38.0
  • xdg-desktop-portal-gtk -> 1.8.0
  • nautilus -> 3.38.0
  • gnome-maps -> 3.38.0
  • evolution -> 3.38.0
  • evolution-ews -> 3.38.0
  • python3-atspi -> 2.38.0
  • python-atspi -> 2.38.0
  • orca -> 3.38.0
  • gnome-weather -> (revbump)
  • vte3 -> 0.62.0
  • gnome-terminal -> 3.38.0
  • gnome-getting-started-docs -> 3.36.2
  • gnome-user-docs -> 3.38.0
  • gnome-epub-thumbnailer -> 1.6
  • gnome-books -> (revbump)
  • gnome-characters -> (revbump)
  • gnome-documents -> (revbump)
  • gnome-font-viewer -> (revbump)
  • totem -> 3.38.0
  • gnome-screensaver -> (revbump + build fix)
  • gnome-clocks -> 3.38.0
  • epiphany -> 3.38.0
  • gnome-contacts -> 3.37.2
  • gnome-photos -> 3.37.91.1
  • eog -> 3.38.0
  • evince -> 3.38.0
  • file-roller -> 3.38.0
  • gnome-calendar -> 3.38.0
  • gnome-music -> 3.38.0
  • gedit -> 3.38.0
  • gedit-plugins -> 3.38.0
  • gnome-latex -> 3.38.0
  • baobab -> 3.38.0
  • gnome-boxes -> 3.38.0
  • gnome-calculator -> 3.38.0
  • gnome-disk-utility -> 3.38.0
  • gnome-screenshot -> 3.38.0
  • gnome-system-monitor -> 3.38.0
  • adwaita-icon-theme -> 3.38.0
  • gnome-backgrounds -> 3.38.0
  • simple-scan -> 3.38.0
  • rygel -> 0.40.0
  • gnome-builder -> 3.38.0
  • retro-gtk -> 1.0.0
  • gnome-games -> 3.38.0
  • gnome-panel -> 3.37.1
  • metacity -> 3.37.1
  • gnome-flashback -> 3.37.3
  • budgie-desktop -> (rebuild)

Merged

  • libsigc++3 -> 3.0.3 (new)
  • mm-common -> 1.0.1
  • glibmm -> 2.64.2
  • pangomm -> 2.42.1
  • libnotify -> 0.7.9
  • atk -> 2.36.0
  • gtk+3 -> 3.24.22
  • libportal -> 0.3 (new)
  • cogl -> 1.22.28
  • geocode-glib -> 3.26.2
  • gfbgraph -> 0.2.4
  • libgsf -> 1.14.47
  • libsecret -> 0.20.3
  • libchamplain -> 0.12.20
  • gom -> 0.4
  • gssdp -> 1.2.3
  • gtk-vnc -> 1.0.0 (drops unused gtk2 support)
  • gupnp -> 1.2.4
  • gnome-video-effects -> 0.5.0
  • glib -> 2.66.0
  • webkit2gtk -> 2.30.0
  • mozjs78 -> 78.2.0 (new)

No updates

  • polari (no newer stable version)
  • gtk4 (no stable version yet)

@q66
Copy link
Contributor Author

q66 commented Aug 13, 2020

cc @mnabid @Gottox

as for the existing 3.36 PR you can go ahead with it or if you want to wait for this one i don't mind either way

@mnabid
Copy link
Contributor

mnabid commented Aug 14, 2020

as for the existing 3.36 PR you can go ahead with it or if you want to wait for this one i don't mind either way

Well, GNOME 3.38 is a month away from releasing, so why not ? 👍 ( Also, I'm afraid I won't get enough time to work on #21382).

But @sgn was working on fixing do_check()s and cross builds for some packages (especially the evolution* ones) , so I'll leave the PR open for now.

@q66
Copy link
Contributor Author

q66 commented Aug 14, 2020

tests are now passing fully on the packages that have been touched, also did assorted minor tweaks

i've also taken the liberty to start dropping the vala option in templates and merge it back with gir; i've never been able to find a reason to split them in the first place, and splitting them is actively harmful with the current system, since vala always depends on gir; either way, there is not much of a reason to ever disable it

also, i decided against forcing having a do_check on things that are either problematic (like evolution-data-server) or require X11 - while we could hack around it with xvfb, as it is currently it's not worth it since it has to touch files outside the builddir, which we definitely want to avoid - plus it's a lot of boilerplate that could theoretically be avoided but we don't have the means of avoiding it right now (we'd need to add xvfb-run equivalent like some other distros have)

the latter two things will probably interest @sgn

@sgn
Copy link
Member

sgn commented Aug 14, 2020 via email

@q66 q66 mentioned this pull request Aug 15, 2020
@shizonic
Copy link
Contributor

How can I test this locally?

@q66
Copy link
Contributor Author

q66 commented Aug 17, 2020

just fetch it, apply it in your tree, build it with xbps-src as usual, and test it?

@shizonic
Copy link
Contributor

just fetch it, apply it in your tree, build it with xbps-src as usual, and test it?

I checked out this PR locally into a branch called gnome and built it successfully (every gnome related packages were updated to the version of this PR) but if I run xbps-install --repository hostdir/binpkgs gnome I get the message Package 'gnome' already installed.. What did I miss? Thank you so much for all your work I really appreciate it.

@q66
Copy link
Contributor Author

q66 commented Aug 20, 2020

the metapackage is unchanged, you have to run like xbps-install -R hostdir/binpkgs -Su

@shizonic
Copy link
Contributor

the metapackage is unchanged, you have to run like xbps-install -R hostdir/binpkgs -Su

Thank you so much it worked! :-) Awesome job man.

@toluschr
Copy link
Contributor

toluschr commented Aug 22, 2020

mutter with budgie-desktop is broken. Some component (I believe mutter itself) needs gsettings-desktop-schemas

@q66
Copy link
Contributor Author

q66 commented Aug 22, 2020

it works after installing it?

@toluschr
Copy link
Contributor

toluschr commented Aug 22, 2020

it works after installing it?

yes

@toluschr
Copy link
Contributor

GNOME works too. However, I think gdm is a dependency of gnome-shell, as gnome didn't start without it.

(gnome-shell:1710): Gjs-CRITICAL **: 20:41:40.895: JS ERROR: Error: Requiring Gdm, version none: Typelib file for namespace 'Gdm' (any version) not found

@q66
Copy link
Contributor Author

q66 commented Aug 22, 2020

ok, good to know - i already added the dependency to mutter, other distros already do so

@q66
Copy link
Contributor Author

q66 commented Aug 24, 2020

as for gnome-shell depending on gdm, we can't do that since gdm already depends on gnome-shell (in particular, gnome-shell does depend on the gdm typelib file, but separating them wouldn't help either, since xbps-src checks dependencies of subpackages, so it'd create a build-time cycle - so, nothing we can do without making this unnecessarily complex)

@shizonic
Copy link
Contributor

Do I have to rebuild every pkg if this PR gets updated? If not how do I manage to rebuild only the updated pkgs?

@fosslinux
Copy link
Contributor

cross seems to be severely broken, just tried cross building for aarch64 and at least 3 packages failed, didn't try to get any further though

You probably already know this anyway.

@q66
Copy link
Contributor Author

q66 commented Sep 13, 2020

what failed?

@fosslinux
Copy link
Contributor

fosslinux commented Sep 13, 2020

Away from home computer ATM but defiantly gsettings-desktop-schemas and I believe libsoup, I'll try again shortly.

@shizonic
Copy link
Contributor

finally released: https://help.gnome.org/misc/release-notes/3.38/ 👍

@nuclearforg
Copy link
Contributor

nuclearforg commented Sep 16, 2020

libsoup fails because of a regression in brotli (google/brotli#836) and now sysprof has to be explicitly disabled with -Dsysprof=disabled

@q66
Copy link
Contributor Author

q66 commented Sep 17, 2020

I restructured the metapackages; the following changes have been applied

  1. gnome-core is a core distribution without applications that can be replaced
  2. gnome is gnome-core plus core gnome applications that either don't take much space or are always useful (e.g. file-roller, evince, etc)
  3. gnome-apps is an extra bundle of things which are either big or niche or will usually be replaced (e.h. epiphany, evolution, gnome-boxes and the like)

i removed the direct dependencies on the libraries, as that just hides messed up dependencies in the actual app/other packages, by installing them directly rather than being installed through the individual components

@fosslinux
Copy link
Contributor

Will test shortly, thanks for all your work on this @q66!

@Gottox
Copy link
Member

Gottox commented Sep 17, 2020

[121/174] Linking target libsoup/libsoup-2.4.so.1.11.0
FAILED: libsoup/libsoup-2.4.so.1.11.0 
armv7l-linux-gnueabihf-gcc  -o libsoup/libsoup-2.4.so.1.11.0 libsoup/libsoup-2.4.so.1.11.0.p/meson-generated_.._soup-resources.c.o libsoup/libsoup-2.4.so.1.11.0.p/meson-generated_.._soup-enum-types.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-address.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-basic.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-digest.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-ntlm.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-negotiate.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-domain.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-domain-basic.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-domain-digest.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-auth-manager.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-body-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-body-output-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cache.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cache-client-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cache-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-client-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-connection.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-connection-auth.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-content-decoder.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-content-processor.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-content-sniffer.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-content-sniffer-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-converter-wrapper.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cookie.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cookie-jar.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cookie-jar-db.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-cookie-jar-text.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-date.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-directory-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-filter-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-form.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-hsts-enforcer.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-hsts-enforcer-db.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-hsts-policy.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-headers.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-init.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-io-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-logger.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-body.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-client-io.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-headers.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-io.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-queue.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-message-server-io.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-method.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-misc.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-multipart.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-multipart-input-stream.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-password-manager.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-path-map.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-proxy-resolver.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-proxy-resolver-default.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-proxy-resolver-wrapper.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-proxy-uri-resolver.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-request.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-request-data.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-request-file.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-request-http.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-requester.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-server.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-session.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-session-async.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-session-feature.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-session-sync.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-socket.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-socket-properties.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-status.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-tld.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-uri.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-value-utils.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-version.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-websocket.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-websocket-connection.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-websocket-extension.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-websocket-extension-deflate.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-websocket-extension-manager.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-xmlrpc.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-xmlrpc-old.c.o libsoup/libsoup-2.4.so.1.11.0.p/soup-brotli-decompressor.c.o -L/usr/armv7l-linux-gnueabihf/usr/lib -flto -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libsoup-2.4.so.1 -Wl,-z,relro -Wl,-z,now -Wl,--as-needed /usr/armv7l-linux-gnueabihf/usr/lib/libglib-2.0.so /usr/armv7l-linux-gnueabihf/usr/lib/libgobject-2.0.so /usr/armv7l-linux-gnueabihf/usr/lib/libgio-2.0.so /usr/armv7l-linux-gnueabihf/usr/lib/libxml2.so /usr/armv7l-linux-gnueabihf/usr/lib/libsqlite3.so /usr/armv7l-linux-gnueabihf/usr/lib/libpsl.so -R/usr/lib /usr/armv7l-linux-gnueabihf/usr/lib/libbrotlidec.so /usr/armv7l-linux-gnueabihf/usr/lib/libz.so -Wl,--end-group
armv7l-linux-gnueabihf-gcc: error: unrecognized command line option '-R'
[122/174] Compiling C object tests/tld-test.p/tld-test.c.o
[123/174] Compiling C object tests/ntlm-test-helper.p/ntlm-test-helper.c.o
[124/174] Compiling C object tests/brotli-decompressor-test.p/brotli-decompressor-test.c.o
[125/174] Compiling C object tests/timeout-test.p/timeout-test.c.o
[126/174] Compiling C object tests/streaming-test.p/streaming-test.c.o
[127/174] Compiling C object tests/ssl-test.p/ssl-test.c.o
[128/174] Compiling C object tests/uri-parsing-test.p/uri-parsing-test.c.o
[129/174] Compiling C object tests/websocket-test.p/websocket-test.c.o
ninja: build stopped: subcommand failed.
=> ERROR: libsoup-2.72.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:122
[tox@krusty gnome]$ 

On armv7hf

@sgn
Copy link
Member

sgn commented Sep 17, 2020

[121/174] Linking target libsoup/libsoup-2.4.so.1.11.0
FAILED: libsoup/libsoup-2.4.so.1.11.0 
armv7l-linux-gnueabihf-gcc: error: unrecognized command line option '-R'
=> ERROR:   in do_build() at common/build-style/meson.sh:122
[tox@krusty gnome]$ 

On armv7hf

Please rebase against newest master, it's fixed by 6335ec8

@q66
Copy link
Contributor Author

q66 commented Sep 18, 2020

added gnome-todo and bijiben into gnome-apps, fixed cross for bijiben and io.elementary.calendar plus added the missing rebuilds

@q66 q66 closed this Sep 18, 2020
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 18, 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