Jump to content

GNOME: Difference between revisions

reformat code
(make the example using user-level home-manager to be consistent with the rest of the article)
(reformat code)
Line 145: Line 145:
Big [https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441 merge request] against Mutter improves the performance of the window manager by a lot (and is already used by Ubuntu). Not merged into nixpkgs due to [https://github.com/NixOS/nixpkgs/issues/197181 philosophy of nixpkgs], but users are free to add this overlay to get it too.
Big [https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441 merge request] against Mutter improves the performance of the window manager by a lot (and is already used by Ubuntu). Not merged into nixpkgs due to [https://github.com/NixOS/nixpkgs/issues/197181 philosophy of nixpkgs], but users are free to add this overlay to get it too.


For NixOS 24.05 (gnome 46), add the following:
For NixOS 24.05 (gnome 46), add the following to your NixOS configuration:
 
<syntaxhighlight lang="nix">
nixpkgs.overlays = [
        (final: prev: {
                gnome = prev.gnome.overrideScope (gnomeFinal: gnomePrev: {
                        mutter = gnomePrev.mutter.overrideAttrs ( old: {
                                src = pkgs.fetchgit {
                                        url = "https://gitlab.gnome.org/vanvugt/mutter.git";
                                        rev = "663f19bc02c1b4e3d1a67b4ad72d644f9b9d6970";
                                        sha256 = "sha256-I1s4yz5JEWJY65g+dgprchwZuPGP9djgYXrMMxDQGrs=";
                                };
                        });
                });
        })
];


<syntaxhighlight lang="nixos">
{
  nixpkgs.overlays = [
    (final: prev: {
      gnome = prev.gnome.overrideScope (
        gnomeFinal: gnomePrev: {
          mutter = gnomePrev.mutter.overrideAttrs (old: {
            src = pkgs.fetchgit {
              url = "https://gitlab.gnome.org/vanvugt/mutter.git";
              rev = "663f19bc02c1b4e3d1a67b4ad72d644f9b9d6970";
              sha256 = "sha256-I1s4yz5JEWJY65g+dgprchwZuPGP9djgYXrMMxDQGrs=";
            };
          });
        }
      );
    })
  ];
}
</syntaxhighlight>
</syntaxhighlight>