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

[24.11] Backport gnome updates/fixes #365374

Merged
merged 30 commits into from
Dec 21, 2024
Merged

Conversation

bjornfor
Copy link
Contributor

@bjornfor bjornfor commented Dec 15, 2024

Things done

This patch set is made by manually cherry-picking these commits, if
they applied cleanly:

git log --no-merges --oneline --grep=gnome $(git merge-base origin/master origin/release-24.11)..origin/master

Commit 785f561ddc30fdadf3fb2bccbecc348d5024602b
("gnome: replace alias with throw") was deliberately skipped, as I
think it is intended for the next NixOS release.

And then some were dropped as they had more dependencies (with conflicts), or would cause known regressions (as pointed out in code review).

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: GNOME GNOME desktop environment and its underlying platform 8.has: module (update) This PR changes an existing module in `nixos/` 6.topic: cinnamon Desktop environment labels Dec 15, 2024
@bjornfor bjornfor mentioned this pull request Dec 15, 2024
13 tasks
@bjornfor bjornfor marked this pull request as ready for review December 15, 2024 14:04
@bobby285271
Copy link
Member

I don't think any of the GNOME packagers use stable so you are on your own testing the changes :-)

For commits authored or fixed-up by me: Cinnamon polkit_gnome removal f145249 depends on a major Cinnamon bump, gedit (and libgedit-* friends) bump 70e1c8e 8c2c0a4 6a62c74 contains both API breaks and feature removals, the gnome-circle team commit 6ae9f74 breaks ofborg-eval-lib-tests.

@jtojnar
Copy link
Member

jtojnar commented Dec 15, 2024

Also 162f433 depends on 8fe8755.

@bjornfor
Copy link
Contributor Author

I don't think any of the GNOME packagers use stable so you are on your own testing the changes :-)

Oh :-(

(There are many regressions in NixOS 24.11; this is just a step towards fixing one issue: gnome remote desktop.)

For commits authored or fixed-up by me: Cinnamon polkit_gnome removal f145249 depends on a major Cinnamon bump, gedit (and libgedit-* friends) bump 70e1c8e 8c2c0a4 6a62c74 contains both API breaks and feature removals, the gnome-circle team commit 6ae9f74 breaks ofborg-eval-lib-tests.

Thanks! I dropped them all.

Also 162f433 depends on 8fe8755.

The dependent commit had a conflict, so I backed out (dropped 162f433).

@github-actions github-actions bot removed the 6.topic: cinnamon Desktop environment label Dec 15, 2024
@bjornfor
Copy link
Contributor Author

Result of nixpkgs-review pr 365374 run on x86_64-linux 1

8 packages marked as broken and skipped:
  • cot
  • cot.dist
  • mailnagWithPlugins
  • mailnagWithPlugins.dist
  • python312Packages.cot
  • python312Packages.cot.dist
  • tijolo
  • xmonad_log_applet
1 package blacklisted:
  • nixos-install-tools
3 packages failed to build:
  • quickgui
  • quickgui.debug
  • quickgui.pubcache
299 packages built:
  • OVMFFull
  • OVMFFull.fd
  • adapta-gtk-theme
  • almanah
  • alpaca
  • appvm
  • apx-gui
  • arc-theme
  • ayatana-indicator-datetime
  • ayatana-indicator-session
  • ayu-theme-gtk
  • blackbox-terminal
  • bubblemail
  • bubblemail.dist
  • budgie-analogue-clock-applet
  • budgie-control-center
  • budgie-control-center.debug
  • budgie-desktop
  • budgie-desktop-with-plugins
  • budgie-desktop.dev
  • budgie-desktop.man
  • budgie-gsettings-overrides
  • budgie-session
  • budgie-session.debug
  • budgie-session.man
  • budgie-user-indicator-redux
  • calls
  • calls.devdoc
  • cheese
  • cheese.devdoc
  • cheese.man
  • cherrytree
  • cinnamon-common
  • cinnamon-gsettings-overrides
  • cinnamon-screensaver
  • colima
  • collision
  • diffoscope
  • diffoscope.dist
  • diffoscope.man
  • dropbox-cli
  • dropbox-cli.nautilusExtension
  • eiciel
  • eiciel.nautilusExtension
  • endeavour
  • envision
  • envision-unwrapped
  • eolie
  • equilux-theme
  • evolution
  • evolution-data-server
  • evolution-data-server-gtk4
  • evolution-data-server-gtk4.dev
  • evolution-data-server.dev
  • evolution-ews
  • evolutionWithPlugins
  • file-roller
  • folks
  • folks.dev
  • folks.devdoc
  • garble
  • geany-with-vte
  • geary
  • germinal
  • gfbgraph
  • gfbgraph.dev
  • gfbgraph.devdoc
  • gnome-applets
  • gnome-boxes
  • gnome-browser-connector
  • gnome-builder
  • gnome-builder.devdoc
  • gnome-calendar
  • gnome-color-manager
  • gnome-console
  • gnome-contacts
  • gnome-control-center
  • gnome-control-center.debug
  • gnome-disk-utility
  • gnome-extensions-cli
  • gnome-extensions-cli.dist
  • gnome-flashback
  • gnome-initial-setup
  • gnome-maps
  • gnome-music
  • gnome-network-displays
  • gnome-notes
  • gnome-online-accounts
  • gnome-online-accounts-gtk
  • gnome-online-accounts.debug
  • gnome-online-accounts.dev
  • gnome-online-accounts.devdoc
  • gnome-online-accounts.man
  • gnome-panel
  • gnome-panel-with-modules
  • gnome-panel.dev
  • gnome-panel.man
  • gnome-photos
  • gnome-photos.installedTests
  • gnome-recipes
  • gnome-remote-desktop
  • gnome-secrets
  • gnome-session
  • gnome-session.debug
  • gnome-session.sessions
  • gnome-settings-daemon
  • gnome-shell
  • gnome-shell-extensions
  • gnome-shell.debug
  • gnome-shell.devdoc
  • gnome-terminal
  • gnome-tweaks
  • gnome-user-docs
  • gnome-user-share
  • gnome-weather
  • gnome.gvfs
  • gnome.gvfs.debug
  • gnome.nixos-gsettings-overrides
  • gnomeExtensions.ddterm
  • gnomeExtensions.drop-down-terminal
  • gnomeExtensions.easyScreenCast
  • gnomeExtensions.gsconnect
  • gnomeExtensions.gsconnect.installedTests
  • gnomeExtensions.gtk4-desktop-icons-ng-ding
  • grilo-plugins
  • gtkd
  • gtkterm
  • gtranslator
  • guake
  • guestfs-tools
  • insync-nautilus
  • ivyterm
  • kata-runtime
  • kermit-terminal
  • kermit-terminal.man
  • libgdata
  • libgdata.dev
  • libgdata.installedTests
  • libguestfs
  • libguestfs-with-appliance
  • libguestfs-with-appliance.guestfsd
  • libguestfs.guestfsd
  • libmsgraph
  • libmsgraph.dev
  • libmsgraph.devdoc
  • libzapojit
  • libzapojit.dev
  • lima
  • lima-bin
  • localsearch
  • lomiri.lomiri
  • lomiri.lomiri-session
  • lomiri.lomiri-system-settings
  • lomiri.lomiri-system-settings-unwrapped
  • lomiri.lomiri-system-settings-unwrapped.dev
  • lounge-gtk-theme
  • loupe
  • lxd-lts
  • lxterminal
  • magpie
  • magpie.debug
  • magpie.dev
  • magpie.devdoc
  • mate.mate-terminal
  • materia-theme
  • materia-theme-transparent
  • matrix-gtk-theme
  • mlterm
  • mlterm-wayland
  • mojave-gtk-theme
  • monitor
  • multipass
  • mutter
  • mutter.debug
  • mutter.dev
  • mutter.devdoc
  • mutter.man
  • mutter43
  • mutter43.debug
  • mutter43.dev
  • mutter43.devdoc
  • mutter43.man
  • nautilus
  • nautilus-open-any-terminal
  • nautilus-open-any-terminal.dist
  • nautilus-open-in-blackbox
  • nautilus-python
  • nautilus-python.dev
  • nautilus-python.devdoc
  • nautilus-python.doc
  • nautilus.dev
  • nautilus.devdoc
  • nemiver
  • nemo-fileroller
  • nemo-with-extensions
  • nemu
  • neovim-gtk
  • networkmanager-vpnc
  • open-watcom-bin
  • open-watcom-bin-unwrapped
  • orbiton
  • out-of-tree
  • pantheon-tweaks
  • pantheon.elementary-calendar
  • pantheon.elementary-code
  • pantheon.elementary-greeter
  • pantheon.elementary-gsettings-schemas
  • pantheon.elementary-mail
  • pantheon.elementary-session-settings
  • pantheon.elementary-shortcut-overlay
  • pantheon.elementary-tasks
  • pantheon.elementary-terminal
  • pantheon.file-roller-contract
  • pantheon.gala
  • pantheon.switchboard-plug-bluetooth
  • pantheon.switchboard-plug-mouse-touchpad
  • pantheon.switchboard-plug-onlineaccounts
  • pantheon.switchboard-plug-pantheon-shell
  • pantheon.switchboard-plug-power
  • pantheon.switchboard-plug-security-privacy
  • pantheon.switchboard-with-plugs
  • pantheon.wingpanel
  • pantheon.wingpanel-applications-menu
  • pantheon.wingpanel-indicator-a11y
  • pantheon.wingpanel-indicator-bluetooth
  • pantheon.wingpanel-indicator-datetime
  • pantheon.wingpanel-indicator-keyboard
  • pantheon.wingpanel-indicator-network
  • pantheon.wingpanel-indicator-nightlight
  • pantheon.wingpanel-indicator-notifications
  • pantheon.wingpanel-indicator-power
  • pantheon.wingpanel-indicator-sound
  • pantheon.wingpanel-quick-settings
  • pantheon.wingpanel-with-indicators
  • papers
  • papers.dev
  • papers.devdoc
  • phoc
  • phosh
  • phosh-mobile-settings
  • planify
  • pods
  • ptyxis
  • python311Packages.cot
  • python311Packages.cot.dist
  • python311Packages.guestfs
  • python311Packages.guestfs.dist
  • python312Packages.guestfs
  • python312Packages.guestfs.dist
  • qemu
  • qemu.debug
  • qemu.ga
  • qemu_full
  • qemu_full.debug
  • qemu_full.ga
  • qemu_kvm
  • qemu_kvm.debug
  • qemu_kvm.ga
  • qtemu
  • quickemu
  • remmina
  • roxterm
  • sakura
  • seabird
  • streamcontroller
  • stupidterm
  • terminator
  • terminator.dist
  • termite (termite-unwrapped)
  • termite.terminfo (termite-unwrapped.terminfo)
  • termonad
  • tilda
  • tilix
  • timeshift
  • timeshift-minimal
  • timeshift-unwrapped
  • tokyonight-gtk-theme
  • totem
  • tym
  • vagrant
  • vala-language-server
  • valent
  • vimix-gtk-themes
  • virt-manager
  • virt-v2v
  • virt-viewer
  • vmctl
  • vte
  • vte-gtk4
  • vte-gtk4.dev
  • vte-gtk4.devdoc
  • vte.dev
  • vte.devdoc
  • wingpanel-indicator-ayatana
  • xdg-desktop-portal-gtk
  • xemu
  • xemu.debug
  • xfce.xfce4-terminal
  • xfce.xfce4-terminal.dev

@bjornfor
Copy link
Contributor Author

3 packages failed to build:

* quickgui 
* quickgui.debug
* quickgui.pubcache

They also fail on the base branch (release-24.11). So there should be no build regressions, at least.

@bjornfor
Copy link
Contributor Author

I applied this to one of my systems -- no obvious regressions found.

lilyball and others added 11 commits December 19, 2024 15:54
This matches how `environment.gnome.excludePackages` works elsewhere,
and prevents evaluation from failing when an excluded package is not
available (e.g. by having a blocklisted license).

(cherry picked from commit 8e1ad9b)
Signed-off-by: Sefa Eyeoglu <[email protected]>
(cherry picked from commit dc27833)
Signed-off-by: Sefa Eyeoglu <[email protected]>
(cherry picked from commit 8816be7)
Signed-off-by: Sefa Eyeoglu <[email protected]>
(cherry picked from commit d769a8d)
Signed-off-by: Sefa Eyeoglu <[email protected]>
(cherry picked from commit ac1e883)
(cherry picked from commit 240d44b)
upstream determines the gjs path with `find_program('gjs')`, however
this fails to find anything when cross compiling because meson doesn't
know which paths to check.

the interaction between meson's `find_program` and `cross-file` is
documented here:
<https://mesonbuild.com/Reference-manual_functions.html#find_program>

(cherry picked from commit 7a9a2d8)
This reverts commit 8816be7.

Well this is not a desktop entry... I think.

This fixes opening Maps in GNOME (from the activity view) for me:
"JS ERROR: Error: Requiring GLib, version 2.0: Typelib file for namespace 'GLib',
version '2.0' not found".

I learned from the KDE docs[1] that *unlike desktop files*, dbus files should contain
full path to the application to start. I tried not using full path previously in a
sticky PR[2] and it just fails to start with `org.freedesktop.DBus.Error.Spawn.ExecFailed`.

[1]: https://develop.kde.org/docs/features/d-bus/dbus_autostart_services/#creating-a-service-file
[2]: linuxmint/sticky#118

(cherry picked from commit d37e098)
r-ryantm and others added 19 commits December 19, 2024 15:54
(cherry picked from commit 60ea1e3)
This mostly reverts commit dc27833 (except the "--replace" ->
"--replace-fail" part).

Same as d37e098 ('Revert "gnome-maps: remove absolute path in
desktop entry"'), this is not a desktop entry and dbus files should
contain full path to the application to start.

Closes NixOS#357955.

(cherry picked from commit f765c4f)
@bjornfor
Copy link
Contributor Author

Ok to merge?

@jtojnar jtojnar merged commit 550f5ca into NixOS:release-24.11 Dec 21, 2024
35 of 36 checks passed
@jtojnar
Copy link
Member

jtojnar commented Dec 21, 2024

Thanks.

@bjornfor bjornfor deleted the gnome-backports branch December 21, 2024 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: GNOME GNOME desktop environment and its underlying platform 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (update) This PR changes an existing module in `nixos/` 10.rebuild-darwin: 11-100 10.rebuild-linux: 101-500
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants