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

Pantheon 6.0.2 #130380

Merged
merged 79 commits into from
Sep 18, 2021
Merged

Pantheon 6.0.2 #130380

merged 79 commits into from
Sep 18, 2021

Conversation

bobby285271
Copy link
Member

@bobby285271 bobby285271 commented Jul 16, 2021

Motivation for this change

Related: release notes per package, 6.0 project board, 6.0.x / 6.1 project board.

Previous major updates
Notable changes
  • All Pantheon components have been bumped to their latest versions.
  • Mutter and GNOME settings daemon used in Pantheon now defaults to 3.38.
  • elementary-dpms-helper has been removed from nixpkgs.
  • elementary-settings-daemon no longer points to ubuntu's patched g-s-d but elementary's own settings daemon.
  • elementary-tasks, wingpanel-indicator-a11y and switchboard-plug-wacom are packaged.
  • services.touchegg option is created and enabled by default for Pantheon gestures control.
  • The default mail application has been changed from geary to elementary-mail.
  • Upstream translations for all Pantheon components are now correctly loaded and displayed.
Known issues
How to test on NixOS
  1. Clone the NixOS/nixpkgs repository and checkout to this PR, you can use the GitHub CLI tool gh.
$ gh repo clone NixOS/nixpkgs
$ cd nixpkgs
$ gh pr checkout 130380
  1. Save the following NixOS configuration file as configuration.nix, you can save the file to any directory.
{ pkgs, config, ... }: {
  environment.enableDebugInfo = true;
  services.xserver = {
    enable = true;
    layout = "us";
    desktopManager.pantheon.enable = true;
    desktopManager.pantheon.debug = true;
  };

  users.mutableUsers = false;

  users.extraUsers.test = {
    isNormalUser = true;
    uid = 1000;
    extraGroups = [ "wheel" "networkmanager" ];
    password = "test";
  };
  nixpkgs.config.allowAliases = false;

  virtualisation.qemu.options = [ "-device intel-hda -device hda-duplex" ];
  virtualisation.memorySize = 4096;
  virtualisation.diskSize = 8192;
}
  1. Run the following command to build the packages and create a virtual machine with the above configuration. Do not forget to adjust the path to the nixpkgs checkout (/path/to/nixpkgs) and the configuration (/path/to/configuration.nix). It will take some time to build the packages, so grab some coffee while waiting.
$ env NIX_PATH=nixpkgs=/path/to/nixpkgs:nixos-config=/path/to/configuration.nix nixos-rebuild build-vm
  1. You should see a message like this, run the command provided by the output:
Done. The virtual machine can be started by running /nix/store/...-nixos-vm/bin/run-nixos-vm
  1. A QEMU virtual machine will be launched, wait for LightDM to start and login with the password test.

  2. Test the upgrade and comment here if you find anything wrong.

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • 21.11 Release Notes (or backporting 21.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.

@github-actions github-actions bot added the 6.topic: pantheon The Pantheon desktop environment label Jul 16, 2021
@bobby285271 bobby285271 marked this pull request as draft July 16, 2021 15:56
@bobby285271 bobby285271 changed the title [wip] pantheon.switchboard: 2.4.0 -> 6.0.0, pantheon.switchboard-with-plugs: 2.4.0-with-plugs -> 6.0.0-with-plugs [WIP] Pantheon: upgrade core components to 6 Jul 17, 2021
@github-actions github-actions bot added the 6.topic: GNOME GNOME desktop environment and its underlying platform label Jul 17, 2021
@bobby285271 bobby285271 force-pushed the switchboard branch 2 times, most recently from fc0b2d3 to 364ca01 Compare July 17, 2021 10:05
@ofborg ofborg bot requested review from hedning, jtojnar, dasj19 and amaxine July 17, 2021 10:23
@bobby285271
Copy link
Member Author

bobby285271 commented Jul 18, 2021

Need some suggestions, shall we replace geary with elementary-mail by default?

Update: Done in fa72a44f95e34948fa9cefca910e2f595cc3eefe

@davidak
Copy link
Member

davidak commented Jul 18, 2021

shall we replace geary with elementary-mail by default?

if that's what they ship, sure. i expect it to be usable then

@bobby285271
Copy link
Member Author

Adding inter as a preinstalled font because of elementary/default-settings@57009a6

@bobby285271
Copy link
Member Author

bobby285271 commented Jul 18, 2021

I think most packaging has been done, waiting for the final release of elementary OS 6. Some apps haven' t got a new release yet like elementary-screenshot-tool, I try to keep track of them and upgrade them when possible.

Also there are some apps that are upgrading frequently like elementary-music, planing to track them in this PR as well so I don' t need to create too many PRs.

@bobby285271 bobby285271 changed the title [WIP] Pantheon: upgrade core components to 6 [WIP] Pantheon: upgrade to 6 Jul 18, 2021
@bobby285271
Copy link
Member Author

bobby285271 commented Jul 18, 2021

Need some help with pantheon.switchboard-plug-pantheon-shell and pantheon.elementary-settings-daemon.

By running io.elementary.switchboard and then click "Destkop", the app will crash with:

(.io.elementary.switchboard-wrapped_:80072): GLib-GIO-ERROR **: 19:05:14.917: Settings schema 'io.elementary.settings-daemon.prefers-color-scheme' is not installed
[1]    80072 trace trap (core dumped)  io.elementary.switchboard

Found a related issue elementary/switchboard-plug-pantheon-shell#243, and the problem seems to be elementary/settings-daemon. I found pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix but it seems to be a patched gnome-settings-daemon 3.34.1.

Update: I am pushing a workaround that is to rename the original pantheon.elementary-settings-daemon to gnome.gnome-settings-daemon334 and create another pantheon.elementary-settings-daemon package. Things look fine and the problem I mentioned was solved (but I don't know whether it will introduce other bugs or not), please comment here if you have any better ideas to handle this.

Update 2: Upgraded to gnome.gnome-settings-daemon336 gnome.gnome-settings-daemon338.

@bobby285271 bobby285271 force-pushed the switchboard branch 3 times, most recently from 12737dc to a5e8dec Compare July 18, 2021 13:13
@bobby285271
Copy link
Member Author

Rebased due to merge conflict in release note, hope this is the last force push (I think I have done ~150 force pushes here).

@davidak
Copy link
Member

davidak commented Sep 18, 2021

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

2 packages failed to build:
  • monitor
  • nixos-install-tools
98 packages built:
  • agenda
  • akira-unstable
  • appeditor
  • bookworm
  • cipher
  • cozy
  • elementary-planner
  • ephemeral
  • fondo
  • formatter
  • gnome.gnome-settings-daemon338
  • gnome.mutter338
  • gnonograms
  • hashit
  • ideogram
  • khronos
  • minder
  • nasc
  • notejot
  • notes-up
  • pantheon.appcenter
  • pantheon.contractor
  • pantheon.elementary-calculator
  • pantheon.elementary-calendar
  • pantheon.elementary-camera
  • pantheon.elementary-capnet-assist
  • pantheon.elementary-code
  • pantheon.elementary-default-settings
  • pantheon.elementary-dock
  • pantheon.elementary-feedback
  • pantheon.elementary-files
  • pantheon.elementary-greeter
  • pantheon.elementary-gsettings-schemas
  • pantheon.elementary-gtk-theme
  • pantheon.elementary-mail
  • pantheon.elementary-music
  • pantheon.elementary-notifications
  • pantheon.elementary-onboarding
  • pantheon.elementary-photos
  • pantheon.elementary-screenshot
  • pantheon.elementary-session-settings
  • pantheon.elementary-settings-daemon
  • pantheon.elementary-shortcut-overlay
  • pantheon.elementary-tasks
  • pantheon.elementary-terminal
  • pantheon.elementary-videos
  • pantheon.elementary-wallpapers
  • pantheon.epiphany
  • pantheon.gala
  • pantheon.granite
  • pantheon.notes-up
  • pantheon.pantheon-agent-geoclue2
  • pantheon.pantheon-agent-polkit
  • pantheon.sideload
  • pantheon.switchboard
  • pantheon.switchboard-plug-a11y
  • pantheon.switchboard-plug-about
  • pantheon.switchboard-plug-applications
  • pantheon.switchboard-plug-bluetooth
  • pantheon.switchboard-plug-datetime
  • pantheon.switchboard-plug-display
  • pantheon.switchboard-plug-keyboard
  • pantheon.switchboard-plug-mouse-touchpad
  • pantheon.switchboard-plug-network
  • pantheon.switchboard-plug-notifications
  • pantheon.switchboard-plug-onlineaccounts
  • pantheon.switchboard-plug-pantheon-shell
  • pantheon.switchboard-plug-power
  • pantheon.switchboard-plug-printers
  • pantheon.switchboard-plug-security-privacy
  • pantheon.switchboard-plug-sharing
  • pantheon.switchboard-plug-sound
  • pantheon.switchboard-plug-wacom
  • pantheon.switchboard-with-plugs
  • pantheon.touchegg
  • 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-session
  • pantheon.wingpanel-indicator-sound
  • pantheon.wingpanel-with-indicators
  • ping
  • regextester
  • sequeler
  • snippetpixie
  • spice-up
  • taxi
  • tootle
  • torrential
  • touchegg
  • vocal

@bobby285271
Copy link
Member Author

If there are no other merge blockers, can I merge this once rebuild on my system finishes and the system works?

I am on NixOS 21.11.git.1b16dbeb557 now, looks good on my side :-)

@ofborg eval

Copy link
Member

@davidak davidak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look good

Builds, works

I'm using this changes on my main system for about 2 months and all major issues are resolved. Further improvements can be made by new pull requests.

Thanks for this huge contribution @bobby285271! ✨

@davidak davidak merged commit 69f341a into NixOS:master Sep 18, 2021
@davidak
Copy link
Member

davidak commented Sep 18, 2021

FYI: nixos-install-tools is not broken anymore in master. This PR did not break it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
8 participants