about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/desktops/gnome/apps/gnome-text-editor/default.nix49
-rw-r--r--pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix64
-rw-r--r--pkgs/desktops/gnome/core/gnome-bluetooth/default.nix6
-rw-r--r--pkgs/desktops/gnome/core/gnome-control-center/default.nix166
-rw-r--r--pkgs/desktops/gnome/core/gnome-session/ctl.nix19
-rw-r--r--pkgs/desktops/gnome/core/gnome-session/default.nix68
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix89
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix88
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/default.nix149
-rw-r--r--pkgs/desktops/gnome/core/gnome-tour/default.nix49
-rw-r--r--pkgs/desktops/gnome/core/mutter/43/default.nix110
-rw-r--r--pkgs/desktops/gnome/core/mutter/default.nix141
-rw-r--r--pkgs/desktops/gnome/games/gnome-2048/default.nix37
-rw-r--r--pkgs/desktops/gnome/misc/gnome-applets/default.nix54
-rw-r--r--pkgs/desktops/gnome/misc/gnome-flashback/default.nix357
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/default.nix61
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix33
17 files changed, 807 insertions, 733 deletions
diff --git a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
index 0ea81c6d103fd..1cbe5a2c32c7d 100644
--- a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
@@ -1,32 +1,33 @@
-{ lib
-, stdenv
-, meson
-, fetchurl
-, python3
-, pkg-config
-, gtk4
-, glib
-, gtksourceview5
-, gsettings-desktop-schemas
-, wrapGAppsHook4
-, ninja
-, gnome
-, cairo
-, enchant
-, icu
-, itstool
-, libadwaita
-, editorconfig-core-c
-, libxml2
-, desktop-file-utils
+{
+  lib,
+  stdenv,
+  meson,
+  fetchurl,
+  python3,
+  pkg-config,
+  gtk4,
+  glib,
+  gtksourceview5,
+  gsettings-desktop-schemas,
+  wrapGAppsHook4,
+  ninja,
+  gnome,
+  cairo,
+  enchant,
+  icu,
+  itstool,
+  libadwaita,
+  editorconfig-core-c,
+  libxml2,
+  desktop-file-utils,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-text-editor";
   version = "46.3";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major finalAttrs.version}/gnome-text-editor-${finalAttrs.version}.tar.xz";
     hash = "sha256-AFtIEEqQm+Zq4HRI0rxXBsfRE3gQV6JP9tpVvfMkxz0=";
   };
 
@@ -67,4 +68,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
index 6c63a486eef76..b7d155ad1cfcb 100644
--- a/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
@@ -1,38 +1,44 @@
-{ stdenv
-, lib
-, fetchurl
-, fetchpatch
-, gnome
-, adwaita-icon-theme
-, meson
-, ninja
-, pkg-config
-, gtk3
-, gettext
-, glib
-, udev
-, itstool
-, libxml2
-, wrapGAppsHook3
-, libnotify
-, libcanberra-gtk3
-, gobject-introspection
-, gtk-doc
-, docbook-xsl-nons
-, docbook_xml_dtd_43
-, python3
-, gsettings-desktop-schemas
+{
+  stdenv,
+  lib,
+  fetchurl,
+  fetchpatch,
+  gnome,
+  adwaita-icon-theme,
+  meson,
+  ninja,
+  pkg-config,
+  gtk3,
+  gettext,
+  glib,
+  udev,
+  itstool,
+  libxml2,
+  wrapGAppsHook3,
+  libnotify,
+  libcanberra-gtk3,
+  gobject-introspection,
+  gtk-doc,
+  docbook-xsl-nons,
+  docbook_xml_dtd_43,
+  python3,
+  gsettings-desktop-schemas,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-bluetooth";
   version = "3.34.5";
 
   # TODO: split out "lib"
-  outputs = [ "out" "dev" "devdoc" "man" ];
+  outputs = [
+    "out"
+    "dev"
+    "devdoc"
+    "man"
+  ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-bluetooth/${lib.versions.majorMinor finalAttrs.version}/gnome-bluetooth-${finalAttrs.version}.tar.xz";
     sha256 = "bJSeUsi+zCBU2qzWBJAfZs5c9wml+pHEu3ysyTm1Pqk=";
   };
 
@@ -82,7 +88,7 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
+      packageName = "gnome-bluetooth";
       attrPath = "gnome.gnome-bluetooth_1_0";
       freeze = true;
     };
@@ -96,4 +102,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
index 9e4944221c150..75a7b8127ed9d 100644
--- a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
@@ -26,7 +26,7 @@
   gsettings-desktop-schemas,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-bluetooth";
   version = "46.1";
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-bluetooth/${lib.versions.major version}/gnome-bluetooth-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-bluetooth/${lib.versions.major finalAttrs.version}/gnome-bluetooth-${finalAttrs.version}.tar.xz";
     hash = "sha256-VsRKFwNFmOlgdFivrhvnXz3l798OYjVfCbpY/HvDEqw=";
   };
 
@@ -86,4 +86,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/pkgs/desktops/gnome/core/gnome-control-center/default.nix
index 59f8b2b8e746b..47ce218c6dd70 100644
--- a/pkgs/desktops/gnome/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-control-center/default.nix
@@ -1,74 +1,75 @@
-{ fetchurl
-, lib
-, stdenv
-, substituteAll
-, accountsservice
-, adwaita-icon-theme
-, colord
-, colord-gtk4
-, cups
-, dbus
-, docbook-xsl-nons
-, fontconfig
-, gdk-pixbuf
-, gettext
-, glib
-, glib-networking
-, gcr_4
-, glibc
-, gnome-bluetooth
-, gnome-color-manager
-, gnome-desktop
-, gnome-online-accounts
-, gnome-settings-daemon
-, gnome-tecla
-, gnome
-, gsettings-desktop-schemas
-, gsound
-, gst_all_1
-, gtk4
-, ibus
-, json-glib
-, libgtop
-, libgudev
-, libadwaita
-, libkrb5
-, libjxl
-, libpulseaudio
-, libpwquality
-, librsvg
-, webp-pixbuf-loader
-, libsecret
-, libsoup_3
-, libwacom
-, libXi
-, libxml2
-, libxslt
-, meson
-, modemmanager
-, mutter
-, networkmanager
-, networkmanagerapplet
-, libnma-gtk4
-, ninja
-, pkg-config
-, polkit
-, python3
-, samba
-, setxkbmap
-, shadow
-, shared-mime-info
-, sound-theme-freedesktop
-, tracker
-, tracker-miners
-, tzdata
-, udisks2
-, upower
-, libepoxy
-, gnome-user-share
-, gnome-remote-desktop
-, wrapGAppsHook4
-, xorgserver
+{
+  fetchurl,
+  lib,
+  stdenv,
+  substituteAll,
+  accountsservice,
+  adwaita-icon-theme,
+  colord,
+  colord-gtk4,
+  cups,
+  dbus,
+  docbook-xsl-nons,
+  fontconfig,
+  gdk-pixbuf,
+  gettext,
+  glib,
+  glib-networking,
+  gcr_4,
+  glibc,
+  gnome-bluetooth,
+  gnome-color-manager,
+  gnome-desktop,
+  gnome-online-accounts,
+  gnome-settings-daemon,
+  gnome-tecla,
+  gnome,
+  gsettings-desktop-schemas,
+  gsound,
+  gst_all_1,
+  gtk4,
+  ibus,
+  json-glib,
+  libgtop,
+  libgudev,
+  libadwaita,
+  libkrb5,
+  libjxl,
+  libpulseaudio,
+  libpwquality,
+  librsvg,
+  webp-pixbuf-loader,
+  libsecret,
+  libsoup_3,
+  libwacom,
+  libXi,
+  libxml2,
+  libxslt,
+  meson,
+  modemmanager,
+  mutter,
+  networkmanager,
+  networkmanagerapplet,
+  libnma-gtk4,
+  ninja,
+  pkg-config,
+  polkit,
+  python3,
+  samba,
+  setxkbmap,
+  shadow,
+  shared-mime-info,
+  sound-theme-freedesktop,
+  tracker,
+  tracker-miners,
+  tzdata,
+  udisks2,
+  upower,
+  libepoxy,
+  gnome-user-share,
+  gnome-remote-desktop,
+  wrapGAppsHook4,
+  xorgserver,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -147,11 +148,10 @@ stdenv.mkDerivation (finalAttrs: {
     tracker-miners # for search locations dialog
     udisks2
     upower
-  ] ++ (with gst_all_1; [
     # For animations in Mouse panel.
-    gst-plugins-base
-    gst-plugins-good
-  ]);
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+  ];
 
   nativeCheckInputs = [
     dbus
@@ -177,13 +177,15 @@ stdenv.mkDerivation (finalAttrs: {
   postInstall = ''
     # Pull in WebP and JXL support for gnome-backgrounds.
     # In postInstall to run before gappsWrapperArgsHook.
-    export GDK_PIXBUF_MODULE_FILE="${gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
-      extraLoaders = [
-        libjxl
-        librsvg
-        webp-pixbuf-loader
-      ];
-    }}"
+    export GDK_PIXBUF_MODULE_FILE="${
+      gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
+        extraLoaders = [
+          libjxl
+          librsvg
+          webp-pixbuf-loader
+        ];
+      }
+    }"
   '';
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
index 10b59d660bef1..fbdad96f92368 100644
--- a/pkgs/desktops/gnome/core/gnome-session/ctl.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
@@ -1,12 +1,13 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, meson
-, ninja
-, pkg-config
-, glib
-, systemd
-, wrapGAppsHook3
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  meson,
+  ninja,
+  pkg-config,
+  glib,
+  systemd,
+  wrapGAppsHook3,
 }:
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix
index f7aa278fe8cc9..74eb9dbd09ec0 100644
--- a/pkgs/desktops/gnome/core/gnome-session/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/default.nix
@@ -1,42 +1,46 @@
-{ fetchurl
-, lib
-, stdenv
-, substituteAll
-, meson
-, ninja
-, pkg-config
-, gnome
-, adwaita-icon-theme
-, glib
-, gtk3
-, gsettings-desktop-schemas
-, gnome-desktop
-, dbus
-, json-glib
-, libICE
-, xmlto
-, docbook_xsl
-, docbook_xml_dtd_412
-, python3
-, libxslt
-, gettext
-, makeWrapper
-, systemd
-, xorg
-, libepoxy
-, bash
-, gnome-session-ctl
+{
+  fetchurl,
+  lib,
+  stdenv,
+  substituteAll,
+  meson,
+  ninja,
+  pkg-config,
+  gnome,
+  adwaita-icon-theme,
+  glib,
+  gtk3,
+  gsettings-desktop-schemas,
+  gnome-desktop,
+  dbus,
+  json-glib,
+  libICE,
+  xmlto,
+  docbook_xsl,
+  docbook_xml_dtd_412,
+  python3,
+  libxslt,
+  gettext,
+  makeWrapper,
+  systemd,
+  xorg,
+  libepoxy,
+  bash,
+  gnome-session-ctl,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-session";
   # Also bump ./ctl.nix when bumping major version.
   version = "46.0";
 
-  outputs = [ "out" "sessions" ];
+  outputs = [
+    "out"
+    "sessions"
+  ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-session/${lib.versions.major finalAttrs.version}/gnome-session-${finalAttrs.version}.tar.xz";
     hash = "sha256-xuFiSvYJC8ThoZH+Imir+nqN4HgxynpX8hfmeb97mlQ=";
   };
 
@@ -133,4 +137,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
index 6e87a2ab6e3b5..ff0fbbffb0667 100644
--- a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
@@ -1,52 +1,53 @@
-{ stdenv
-, lib
-, fetchpatch
-, substituteAll
-, fetchurl
-, meson
-, ninja
-, pkg-config
-, gnome
-, perl
-, gettext
-, gtk3
-, glib
-, libnotify
-, libgnomekbd
-, lcms2
-, libpulseaudio
-, alsa-lib
-, libcanberra-gtk3
-, upower
-, colord
-, libgweather
-, polkit
-, gsettings-desktop-schemas
-, geoclue2
-, systemd
-, libgudev
-, libwacom
-, libxslt
-, libxml2
-, modemmanager
-, networkmanager
-, gnome-desktop
-, geocode-glib_2
-, docbook_xsl
-, wrapGAppsHook3
-, python3
-, tzdata
-, nss
-, gcr_4
-, gnome-session-ctl
+{
+  stdenv,
+  lib,
+  fetchpatch,
+  substituteAll,
+  fetchurl,
+  meson,
+  ninja,
+  pkg-config,
+  gnome,
+  perl,
+  gettext,
+  gtk3,
+  glib,
+  libnotify,
+  libgnomekbd,
+  lcms2,
+  libpulseaudio,
+  alsa-lib,
+  libcanberra-gtk3,
+  upower,
+  colord,
+  libgweather,
+  polkit,
+  gsettings-desktop-schemas,
+  geoclue2,
+  systemd,
+  libgudev,
+  libwacom,
+  libxslt,
+  libxml2,
+  modemmanager,
+  networkmanager,
+  gnome-desktop,
+  geocode-glib_2,
+  docbook_xsl,
+  wrapGAppsHook3,
+  python3,
+  tzdata,
+  nss,
+  gcr_4,
+  gnome-session-ctl,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-settings-daemon";
   version = "43.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major finalAttrs.version}/gnome-settings-daemon-${finalAttrs.version}.tar.xz";
     sha256 = "NRO7JPxvgYFmciOmSgZ1NP3M879mMmqUA9OLDw1gE9A=";
   };
 
@@ -125,4 +126,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.pantheon.members;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
index 4284a68ee3e70..f5b1f89805d48 100644
--- a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
@@ -1,49 +1,50 @@
-{ stdenv
-, lib
-, substituteAll
-, fetchurl
-, meson
-, ninja
-, pkg-config
-, gnome
-, perl
-, gettext
-, gtk3
-, glib
-, libnotify
-, libgnomekbd
-, libpulseaudio
-, alsa-lib
-, libcanberra-gtk3
-, upower
-, colord
-, libgweather
-, polkit
-, gsettings-desktop-schemas
-, geoclue2
-, systemd
-, libgudev
-, libwacom
-, libxslt
-, libxml2
-, modemmanager
-, networkmanager
-, gnome-desktop
-, geocode-glib_2
-, docbook_xsl
-, wrapGAppsHook3
-, python3
-, tzdata
-, gcr_4
-, gnome-session-ctl
+{
+  stdenv,
+  lib,
+  substituteAll,
+  fetchurl,
+  meson,
+  ninja,
+  pkg-config,
+  gnome,
+  perl,
+  gettext,
+  gtk3,
+  glib,
+  libnotify,
+  libgnomekbd,
+  libpulseaudio,
+  alsa-lib,
+  libcanberra-gtk3,
+  upower,
+  colord,
+  libgweather,
+  polkit,
+  gsettings-desktop-schemas,
+  geoclue2,
+  systemd,
+  libgudev,
+  libwacom,
+  libxslt,
+  libxml2,
+  modemmanager,
+  networkmanager,
+  gnome-desktop,
+  geocode-glib_2,
+  docbook_xsl,
+  wrapGAppsHook3,
+  python3,
+  tzdata,
+  gcr_4,
+  gnome-session-ctl,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-settings-daemon";
   version = "46.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major finalAttrs.version}/gnome-settings-daemon-${finalAttrs.version}.tar.xz";
     hash = "sha256-C5oPZPoYqOfgm0yVo/dU+gM8LNvS3DVwHwYYVywcs9c=";
   };
 
@@ -103,7 +104,6 @@ stdenv.mkDerivation rec {
   # we're using plain
   env.NIX_CFLAGS_COMPILE = "-DG_DISABLE_CAST_CHECKS";
 
-
   postPatch = ''
     for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl; do
       chmod +x $f
@@ -113,8 +113,8 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
-      attrPath = "gnome.${pname}";
+      packageName = "gnome-settings-daemon";
+      attrPath = "gnome.gnome-settings-daemon";
     };
   };
 
@@ -123,4 +123,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix
index f84908eff0741..f218e6640adec 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -1,66 +1,68 @@
-{ fetchurl
-, fetchpatch
-, substituteAll
-, lib, stdenv
-, meson
-, ninja
-, pkg-config
-, gnome
-, json-glib
-, gettext
-, libsecret
-, python3
-, polkit
-, networkmanager
-, gi-docgen
-, at-spi2-core
-, unzip
-, shared-mime-info
-, libgweather
-, libjxl
-, librsvg
-, webp-pixbuf-loader
-, geoclue2
-, perl
-, desktop-file-utils
-, libpulseaudio
-, libical
-, gobject-introspection
-, wrapGAppsHook4
-, libxslt
-, gcr_4
-, accountsservice
-, gdk-pixbuf
-, gdm
-, upower
-, ibus
-, libnma-gtk4
-, gnome-desktop
-, gsettings-desktop-schemas
-, gnome-keyring
-, glib
-, gjs
-, mutter
-, evolution-data-server-gtk4
-, gtk4
-, libadwaita
-, sassc
-, systemd
-, pipewire
-, gst_all_1
-, adwaita-icon-theme
-, gnome-bluetooth
-, gnome-clocks
-, gnome-settings-daemon
-, gnome-autoar
-, gnome-tecla
-, asciidoc
-, bash-completion
-, mesa
-, libGL
-, libXi
-, libX11
-, libxml2
+{
+  fetchurl,
+  fetchpatch,
+  substituteAll,
+  lib,
+  stdenv,
+  meson,
+  ninja,
+  pkg-config,
+  gnome,
+  json-glib,
+  gettext,
+  libsecret,
+  python3,
+  polkit,
+  networkmanager,
+  gi-docgen,
+  at-spi2-core,
+  unzip,
+  shared-mime-info,
+  libgweather,
+  libjxl,
+  librsvg,
+  webp-pixbuf-loader,
+  geoclue2,
+  perl,
+  desktop-file-utils,
+  libpulseaudio,
+  libical,
+  gobject-introspection,
+  wrapGAppsHook4,
+  libxslt,
+  gcr_4,
+  accountsservice,
+  gdk-pixbuf,
+  gdm,
+  upower,
+  ibus,
+  libnma-gtk4,
+  gnome-desktop,
+  gsettings-desktop-schemas,
+  gnome-keyring,
+  glib,
+  gjs,
+  mutter,
+  evolution-data-server-gtk4,
+  gtk4,
+  libadwaita,
+  sassc,
+  systemd,
+  pipewire,
+  gst_all_1,
+  adwaita-icon-theme,
+  gnome-bluetooth,
+  gnome-clocks,
+  gnome-settings-daemon,
+  gnome-autoar,
+  gnome-tecla,
+  asciidoc,
+  bash-completion,
+  mesa,
+  libGL,
+  libXi,
+  libX11,
+  libxml2,
 }:
 
 let
@@ -70,7 +72,10 @@ stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-shell";
   version = "46.4";
 
-  outputs = [ "out" "devdoc" ];
+  outputs = [
+    "out"
+    "devdoc"
+  ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${lib.versions.major finalAttrs.version}/gnome-shell-${finalAttrs.version}.tar.xz";
@@ -191,13 +196,15 @@ stdenv.mkDerivation (finalAttrs: {
   postInstall = ''
     # Pull in WebP and JXL support for gnome-backgrounds.
     # In postInstall to run before gappsWrapperArgsHook.
-    export GDK_PIXBUF_MODULE_FILE="${gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
-      extraLoaders = [
-        libjxl
-        librsvg
-        webp-pixbuf-loader
-      ];
-    }}"
+    export GDK_PIXBUF_MODULE_FILE="${
+      gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
+        extraLoaders = [
+          libjxl
+          librsvg
+          webp-pixbuf-loader
+        ];
+      }
+    }"
   '';
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome/core/gnome-tour/default.nix b/pkgs/desktops/gnome/core/gnome-tour/default.nix
index 0cc5c596bb5c2..6c4fdddcf662a 100644
--- a/pkgs/desktops/gnome/core/gnome-tour/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-tour/default.nix
@@ -1,31 +1,32 @@
-{ lib
-, stdenv
-, rustPlatform
-, gettext
-, meson
-, ninja
-, fetchurl
-, pkg-config
-, gtk4
-, glib
-, gdk-pixbuf
-, desktop-file-utils
-, appstream-glib
-, wrapGAppsHook4
-, python3
-, gnome
-, libadwaita
-, librsvg
-, rustc
-, cargo
+{
+  lib,
+  stdenv,
+  rustPlatform,
+  gettext,
+  meson,
+  ninja,
+  fetchurl,
+  pkg-config,
+  gtk4,
+  glib,
+  gdk-pixbuf,
+  desktop-file-utils,
+  appstream-glib,
+  wrapGAppsHook4,
+  python3,
+  gnome,
+  libadwaita,
+  librsvg,
+  rustc,
+  cargo,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-tour";
   version = "46.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-tour/${lib.versions.major finalAttrs.version}/gnome-tour-${finalAttrs.version}.tar.xz";
     hash = "sha256-8yZSqp1+8GQ3YM5jkyCCz9NkHnczt2xCm3jQl4O3xGo=";
   };
 
@@ -60,7 +61,7 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
+      packageName = "gnome-tour";
     };
   };
 
@@ -72,4 +73,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/core/mutter/43/default.nix b/pkgs/desktops/gnome/core/mutter/43/default.nix
index cef4edf84c0ff..9ea4503952637 100644
--- a/pkgs/desktops/gnome/core/mutter/43/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/43/default.nix
@@ -1,60 +1,66 @@
-{ fetchurl
-, runCommand
-, lib
-, fetchpatch
-, stdenv
-, pkg-config
-, gnome
-, gettext
-, gobject-introspection
-, cairo
-, colord
-, lcms2
-, pango
-, json-glib
-, libstartup_notification
-, libcanberra
-, ninja
-, xvfb-run
-, xkeyboard_config
-, libxcvt
-, libxkbfile
-, libXdamage
-, libxkbcommon
-, libXtst
-, libinput
-, libdrm
-, gsettings-desktop-schemas
-, glib
-, gtk3
-, gnome-desktop
-, pipewire
-, libgudev
-, libwacom
-, xwayland
-, mesa
-, meson
-, gnome-settings-daemon
-, xorgserver
-, python3
-, wayland-scanner
-, wrapGAppsHook3
-, gi-docgen
-, sysprof
-, libsysprof-capture
-, desktop-file-utils
-, libcap_ng
-, egl-wayland
-, graphene
-, wayland
-, wayland-protocols
+{
+  fetchurl,
+  runCommand,
+  lib,
+  fetchpatch,
+  stdenv,
+  pkg-config,
+  gnome,
+  gettext,
+  gobject-introspection,
+  cairo,
+  colord,
+  lcms2,
+  pango,
+  json-glib,
+  libstartup_notification,
+  libcanberra,
+  ninja,
+  xvfb-run,
+  xkeyboard_config,
+  libxcvt,
+  libxkbfile,
+  libXdamage,
+  libxkbcommon,
+  libXtst,
+  libinput,
+  libdrm,
+  gsettings-desktop-schemas,
+  glib,
+  gtk3,
+  gnome-desktop,
+  pipewire,
+  libgudev,
+  libwacom,
+  xwayland,
+  mesa,
+  meson,
+  gnome-settings-daemon,
+  xorgserver,
+  python3,
+  wayland-scanner,
+  wrapGAppsHook3,
+  gi-docgen,
+  sysprof,
+  libsysprof-capture,
+  desktop-file-utils,
+  libcap_ng,
+  egl-wayland,
+  graphene,
+  wayland,
+  wayland-protocols,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "mutter";
   version = "43.8";
 
-  outputs = [ "out" "dev" "man" "devdoc" ];
+  outputs = [
+    "out"
+    "dev"
+    "man"
+    "devdoc"
+  ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz";
@@ -175,7 +181,7 @@ stdenv.mkDerivation (finalAttrs: {
     libdir = "${finalAttrs.finalPackage}/lib/mutter-11";
 
     tests = {
-      libdirExists = runCommand "mutter-libdir-exists" {} ''
+      libdirExists = runCommand "mutter-libdir-exists" { } ''
         if [[ ! -d ${finalAttrs.finalPackage.libdir} ]]; then
           echo "passthru.libdir should contain a directory, “${finalAttrs.finalPackage.libdir}” is not one."
           exit 1
diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix
index 78b21f4d215f2..54687cbb0f946 100644
--- a/pkgs/desktops/gnome/core/mutter/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/default.nix
@@ -1,75 +1,81 @@
-{ fetchurl
-, runCommand
-, lib
-, stdenv
-, pkg-config
-, gnome
-, gettext
-, gobject-introspection
-, cairo
-, colord
-, lcms2
-, pango
-, libstartup_notification
-, libcanberra
-, ninja
-, xvfb-run
-, libxcvt
-, libICE
-, libX11
-, libXcomposite
-, libXcursor
-, libXdamage
-, libXext
-, libXfixes
-, libXi
-, libXtst
-, libxkbfile
-, xkeyboard_config
-, libxkbcommon
-, libXrender
-, libxcb
-, libXrandr
-, libXinerama
-, libXau
-, libinput
-, libdrm
-, libei
-, libdisplay-info
-, gsettings-desktop-schemas
-, glib
-, atk
-, gtk4
-, fribidi
-, harfbuzz
-, gnome-desktop
-, pipewire
-, libgudev
-, libwacom
-, libSM
-, xwayland
-, mesa
-, meson
-, gnome-settings-daemon
-, xorgserver
-, python3
-, wayland-scanner
-, wrapGAppsHook4
-, gi-docgen
-, sysprof
-, libsysprof-capture
-, desktop-file-utils
-, egl-wayland
-, graphene
-, wayland
-, wayland-protocols
+{
+  fetchurl,
+  runCommand,
+  lib,
+  stdenv,
+  pkg-config,
+  gnome,
+  gettext,
+  gobject-introspection,
+  cairo,
+  colord,
+  lcms2,
+  pango,
+  libstartup_notification,
+  libcanberra,
+  ninja,
+  xvfb-run,
+  libxcvt,
+  libICE,
+  libX11,
+  libXcomposite,
+  libXcursor,
+  libXdamage,
+  libXext,
+  libXfixes,
+  libXi,
+  libXtst,
+  libxkbfile,
+  xkeyboard_config,
+  libxkbcommon,
+  libXrender,
+  libxcb,
+  libXrandr,
+  libXinerama,
+  libXau,
+  libinput,
+  libdrm,
+  libei,
+  libdisplay-info,
+  gsettings-desktop-schemas,
+  glib,
+  atk,
+  gtk4,
+  fribidi,
+  harfbuzz,
+  gnome-desktop,
+  pipewire,
+  libgudev,
+  libwacom,
+  libSM,
+  xwayland,
+  mesa,
+  meson,
+  gnome-settings-daemon,
+  xorgserver,
+  python3,
+  wayland-scanner,
+  wrapGAppsHook4,
+  gi-docgen,
+  sysprof,
+  libsysprof-capture,
+  desktop-file-utils,
+  egl-wayland,
+  graphene,
+  wayland,
+  wayland-protocols,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "mutter";
   version = "46.4";
 
-  outputs = [ "out" "dev" "man" "devdoc" ];
+  outputs = [
+    "out"
+    "dev"
+    "man"
+    "devdoc"
+  ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz";
@@ -139,7 +145,6 @@ stdenv.mkDerivation (finalAttrs: {
     xwayland
     wayland
     wayland-protocols
-  ] ++ [
     # X11 client
     gtk4
     libICE
@@ -184,7 +189,7 @@ stdenv.mkDerivation (finalAttrs: {
     libdir = "${finalAttrs.finalPackage}/lib/mutter-14";
 
     tests = {
-      libdirExists = runCommand "mutter-libdir-exists" {} ''
+      libdirExists = runCommand "mutter-libdir-exists" { } ''
         if [[ ! -d ${finalAttrs.finalPackage.libdir} ]]; then
           echo "passthru.libdir should contain a directory, “${finalAttrs.finalPackage.libdir}” is not one."
           exit 1
diff --git a/pkgs/desktops/gnome/games/gnome-2048/default.nix b/pkgs/desktops/gnome/games/gnome-2048/default.nix
index fc04ee0b8f1e7..88e373497bbe0 100644
--- a/pkgs/desktops/gnome/games/gnome-2048/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-2048/default.nix
@@ -1,26 +1,27 @@
-{ lib
-, stdenv
-, fetchurl
-, fetchpatch
-, wrapGAppsHook3
-, meson
-, vala
-, pkg-config
-, ninja
-, itstool
-, clutter-gtk
-, libgee
-, libgnome-games-support
-, gnome
-, gtk3
+{
+  lib,
+  stdenv,
+  fetchurl,
+  fetchpatch,
+  wrapGAppsHook3,
+  meson,
+  vala,
+  pkg-config,
+  ninja,
+  itstool,
+  clutter-gtk,
+  libgee,
+  libgnome-games-support,
+  gnome,
+  gtk3,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-twenty-forty-eight";
   version = "3.38.2";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-2048/${lib.versions.majorMinor version}/gnome-2048-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-2048/${lib.versions.majorMinor finalAttrs.version}/gnome-2048-${finalAttrs.version}.tar.xz";
     sha256 = "0s5fg4z5in1h39fcr69j1qc5ynmg7a8mfprk3mc3c0csq3snfwz2";
   };
 
@@ -63,4 +64,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/misc/gnome-applets/default.nix b/pkgs/desktops/gnome/misc/gnome-applets/default.nix
index 0270045dad7df..179e9a0d6d740 100644
--- a/pkgs/desktops/gnome/misc/gnome-applets/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-applets/default.nix
@@ -1,32 +1,34 @@
-{ lib, stdenv
-, fetchurl
-, gettext
-, itstool
-, libxml2
-, pkg-config
-, gnome-panel
-, gtk3
-, glib
-, libwnck
-, libgtop
-, libnotify
-, upower
-, wirelesstools
-, linuxPackages
-, adwaita-icon-theme
-, libgweather
-, gucharmap
-, tracker
-, polkit
-, gnome
+{
+  lib,
+  stdenv,
+  fetchurl,
+  gettext,
+  itstool,
+  libxml2,
+  pkg-config,
+  gnome-panel,
+  gtk3,
+  glib,
+  libwnck,
+  libgtop,
+  libnotify,
+  upower,
+  wirelesstools,
+  linuxPackages,
+  adwaita-icon-theme,
+  libgweather,
+  gucharmap,
+  tracker,
+  polkit,
+  gnome,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-applets";
   version = "3.52.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-applets/${lib.versions.majorMinor finalAttrs.version}/gnome-applets-${finalAttrs.version}.tar.xz";
     hash = "sha256-bz07QoZW/21bHT7lzLfs49Kxi1S/BFes9DtxHlXi1iw=";
   };
 
@@ -64,8 +66,8 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
-      attrPath = "gnome.${pname}";
+      packageName = "gnome-applets";
+      attrPath = "gnome.gnome-applets";
       versionPolicy = "odd-unstable";
     };
   };
@@ -78,4 +80,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
index 770d389d77d12..89880a68e14ec 100644
--- a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
@@ -1,43 +1,40 @@
-{ stdenv
-, lib
-, autoreconfHook
-, fetchurl
-, gettext
-, glib
-, gnome-bluetooth
-, gnome-desktop
-, gnome-panel
-, gnome-session
-, gnome
-, gsettings-desktop-schemas
-, gtk3
-, ibus
-, libcanberra-gtk3
-, libpulseaudio
-, libxkbfile
-, libxml2
-, pkg-config
-, polkit
-, gdm
-, systemd
-, upower
-, pam
-, wrapGAppsHook3
-, writeTextFile
-, xkeyboard_config
-, xorg
-, nixosTests
-, runCommand
-, buildEnv
+{
+  stdenv,
+  lib,
+  autoreconfHook,
+  fetchurl,
+  gettext,
+  glib,
+  gnome-bluetooth,
+  gnome-desktop,
+  gnome-panel,
+  gnome-session,
+  gnome,
+  gsettings-desktop-schemas,
+  gtk3,
+  ibus,
+  libcanberra-gtk3,
+  libpulseaudio,
+  libxkbfile,
+  libxml2,
+  pkg-config,
+  polkit,
+  gdm,
+  systemd,
+  upower,
+  pam,
+  wrapGAppsHook3,
+  writeTextFile,
+  xkeyboard_config,
+  xorg,
+  nixosTests,
+  runCommand,
+  buildEnv,
 }:
-let
-  pname = "gnome-flashback";
-  version = "3.52.1";
 
+let
   # From data/sessions/Makefile.am
-  requiredComponentsCommon = enableGnomePanel:
-    [ ]
-    ++ lib.optional enableGnomePanel "gnome-panel";
+  requiredComponentsCommon = enableGnomePanel: [ ] ++ lib.optional enableGnomePanel "gnome-panel";
   requiredComponentsGsd = [
     "org.gnome.SettingsDaemon.A11ySettings"
     "org.gnome.SettingsDaemon.Color"
@@ -56,143 +53,171 @@ let
     "org.gnome.SettingsDaemon.Wacom"
     "org.gnome.SettingsDaemon.XSettings"
   ];
-  requiredComponents = wmName: enableGnomePanel: "RequiredComponents=${lib.concatStringsSep ";" ([ wmName ] ++ requiredComponentsCommon enableGnomePanel ++ requiredComponentsGsd)};";
+  requiredComponents =
+    wmName: enableGnomePanel:
+    "RequiredComponents=${
+      lib.concatStringsSep ";" (
+        [ wmName ] ++ requiredComponentsCommon enableGnomePanel ++ requiredComponentsGsd
+      )
+    };";
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "gnome-flashback";
+  version = "3.52.1";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-flashback/${lib.versions.majorMinor finalAttrs.version}/gnome-flashback-${finalAttrs.version}.tar.xz";
+    hash = "sha256-ugRhPNrbYr2iBkN8BHKZ4WAlzeG9gJXglKp3dpx4YDo=";
+  };
+
+  # make .desktop Execs absolute
+  postPatch = ''
+    patch -p0 <<END_PATCH
+    +++ data/applications/gnome-flashback.desktop.in
+    @@ -4 +4 @@
+    -Exec=gnome-flashback
+    +Exec=$out/bin/gnome-flashback
+    END_PATCH
+  '';
+
+  postInstall = ''
+    # Check that our expected RequiredComponents match the stock session files, but then don't install them.
+    # They can be installed using mkSessionForWm.
+    grep '${requiredComponents "metacity" true}' $out/share/gnome-session/sessions/gnome-flashback-metacity.session || (echo "RequiredComponents have changed, please update gnome-flashback/default.nix."; false)
+
+    rm -r $out/share/gnome-session
+    rm -r $out/share/xsessions
+    rm $out/libexec/gnome-flashback-metacity
+  '';
+
+  nativeBuildInputs = [
+    autoreconfHook
+    gettext
+    libxml2
+    pkg-config
+    wrapGAppsHook3
+  ];
 
-  gnome-flashback = stdenv.mkDerivation rec {
-    name = "${pname}-${version}";
+  buildInputs = [
+    glib
+    gnome-bluetooth
+    gnome-desktop
+    gsettings-desktop-schemas
+    gtk3
+    ibus
+    libcanberra-gtk3
+    libpulseaudio
+    libxkbfile
+    xorg.libXxf86vm
+    polkit
+    gdm
+    gnome-panel
+    systemd
+    upower
+    pam
+    xkeyboard_config
+  ];
 
-    src = fetchurl {
-      url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
-      hash = "sha256-ugRhPNrbYr2iBkN8BHKZ4WAlzeG9gJXglKp3dpx4YDo=";
+  doCheck = true;
+
+  enableParallelBuilding = true;
+
+  PKG_CONFIG_LIBGNOME_PANEL_LAYOUTSDIR = "${placeholder "out"}/share/gnome-panel/layouts";
+  PKG_CONFIG_LIBGNOME_PANEL_MODULESDIR = "${placeholder "out"}/lib/gnome-panel/modules";
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = "gnome-flashback";
+      attrPath = "gnome.gnome-flashback";
+      versionPolicy = "odd-unstable";
     };
 
-    # make .desktop Execs absolute
-    postPatch = ''
-      patch -p0 <<END_PATCH
-      +++ data/applications/gnome-flashback.desktop.in
-      @@ -4 +4 @@
-      -Exec=gnome-flashback
-      +Exec=$out/bin/gnome-flashback
-      END_PATCH
-    '';
-
-    postInstall = ''
-      # Check that our expected RequiredComponents match the stock session files, but then don't install them.
-      # They can be installed using mkSessionForWm.
-      grep '${requiredComponents "metacity" true}' $out/share/gnome-session/sessions/gnome-flashback-metacity.session || (echo "RequiredComponents have changed, please update gnome-flashback/default.nix."; false)
-
-      rm -r $out/share/gnome-session
-      rm -r $out/share/xsessions
-      rm $out/libexec/gnome-flashback-metacity
-    '';
-
-    nativeBuildInputs = [
-      autoreconfHook
-      gettext
-      libxml2
-      pkg-config
-      wrapGAppsHook3
-    ];
-
-    buildInputs = [
-      glib
-      gnome-bluetooth
-      gnome-desktop
-      gsettings-desktop-schemas
-      gtk3
-      ibus
-      libcanberra-gtk3
-      libpulseaudio
-      libxkbfile
-      xorg.libXxf86vm
-      polkit
-      gdm
-      gnome-panel
-      systemd
-      upower
-      pam
-      xkeyboard_config
-    ];
-
-    doCheck = true;
-
-    enableParallelBuilding = true;
-
-    PKG_CONFIG_LIBGNOME_PANEL_LAYOUTSDIR = "${placeholder "out"}/share/gnome-panel/layouts";
-    PKG_CONFIG_LIBGNOME_PANEL_MODULESDIR = "${placeholder "out"}/lib/gnome-panel/modules";
-
-    passthru = {
-      updateScript = gnome.updateScript {
-        packageName = pname;
-        attrPath = "gnome.${pname}";
-        versionPolicy = "odd-unstable";
+    mkWmApplication =
+      {
+        wmName,
+        wmLabel,
+        wmCommand,
+      }:
+      writeTextFile {
+        name = "gnome-flashback-${wmName}-wm";
+        destination = "/share/applications/${wmName}.desktop";
+        text = ''
+          [Desktop Entry]
+          Type=Application
+          Encoding=UTF-8
+          Name=${wmLabel}
+          Exec=${wmCommand}
+          NoDisplay=true
+          X-GNOME-WMName=${wmLabel}
+          X-GNOME-Autostart-Phase=WindowManager
+          X-GNOME-Provides=windowmanager
+          X-GNOME-Autostart-Notify=false
+        '';
       };
 
-      mkWmApplication = { wmName, wmLabel, wmCommand }:
-        writeTextFile {
-          name = "gnome-flashback-${wmName}-wm";
-          destination = "/share/applications/${wmName}.desktop";
-          text = ''
-            [Desktop Entry]
-            Type=Application
-            Encoding=UTF-8
-            Name=${wmLabel}
-            Exec=${wmCommand}
-            NoDisplay=true
-            X-GNOME-WMName=${wmLabel}
-            X-GNOME-Autostart-Phase=WindowManager
-            X-GNOME-Provides=windowmanager
-            X-GNOME-Autostart-Notify=false
-          '';
-        };
-
-      mkGnomeSession = { wmName, wmLabel, enableGnomePanel }:
-        writeTextFile {
-          name = "gnome-flashback-${wmName}-gnome-session";
-          destination = "/share/gnome-session/sessions/gnome-flashback-${wmName}.session";
-          text = ''
-            [GNOME Session]
-            Name=GNOME Flashback (${wmLabel})
-            ${requiredComponents wmName enableGnomePanel}
-          '';
-        };
-
-      mkSessionForWm = { wmName, wmLabel, wmCommand }:
-        writeTextFile
-          {
-            name = "gnome-flashback-${wmName}-xsession";
-            destination = "/share/xsessions/gnome-flashback-${wmName}.desktop";
-            text = ''
-              [Desktop Entry]
-              Name=GNOME Flashback (${wmLabel})
-              Comment=This session logs you into GNOME Flashback with ${wmLabel}
-              Exec=${gnome-session}/bin/gnome-session --session=gnome-flashback-${wmName}
-              TryExec=${wmCommand}
-              Type=Application
-              DesktopNames=GNOME-Flashback;GNOME;
-            '';
-          } // {
-          providedSessions = [ "gnome-flashback-${wmName}" ];
-        };
-
-      mkSystemdTargetForWm = { wmName, wmLabel, wmCommand, enableGnomePanel }:
-        runCommand "gnome-flashback-${wmName}.target" { } ''
-          mkdir -p $out/lib/systemd/user
-          cp -r "${gnome-flashback}/lib/systemd/user/gnome-session@gnome-flashback-metacity.target.d" \
-            "$out/lib/systemd/user/gnome-session@gnome-flashback-${wmName}.target.d"
+    mkGnomeSession =
+      {
+        wmName,
+        wmLabel,
+        enableGnomePanel,
+      }:
+      writeTextFile {
+        name = "gnome-flashback-${wmName}-gnome-session";
+        destination = "/share/gnome-session/sessions/gnome-flashback-${wmName}.session";
+        text = ''
+          [GNOME Session]
+          Name=GNOME Flashback (${wmLabel})
+          ${requiredComponents wmName enableGnomePanel}
         '';
+      };
 
-      tests = { inherit (nixosTests) gnome-flashback; };
-    };
+    mkSessionForWm =
+      {
+        wmName,
+        wmLabel,
+        wmCommand,
+      }:
+      writeTextFile {
+        name = "gnome-flashback-${wmName}-xsession";
+        destination = "/share/xsessions/gnome-flashback-${wmName}.desktop";
+        text = ''
+          [Desktop Entry]
+          Name=GNOME Flashback (${wmLabel})
+          Comment=This session logs you into GNOME Flashback with ${wmLabel}
+          Exec=${gnome-session}/bin/gnome-session --session=gnome-flashback-${wmName}
+          TryExec=${wmCommand}
+          Type=Application
+          DesktopNames=GNOME-Flashback;GNOME;
+        '';
+      }
+      // {
+        providedSessions = [ "gnome-flashback-${wmName}" ];
+      };
 
-    meta = with lib; {
-      description = "GNOME 2.x-like session for GNOME 3";
-      mainProgram = "gnome-flashback";
-      homepage = "https://gitlab.gnome.org/GNOME/gnome-flashback";
-      license = licenses.gpl2;
-      maintainers = teams.gnome.members;
-      platforms = platforms.linux;
+    mkSystemdTargetForWm =
+      {
+        wmName,
+        wmLabel,
+        wmCommand,
+        enableGnomePanel,
+      }:
+      runCommand "gnome-flashback-${wmName}.target" { } ''
+        mkdir -p $out/lib/systemd/user
+        cp -r "${finalAttrs.gnome-flashback}/lib/systemd/user/gnome-session@gnome-flashback-metacity.target.d" \
+          "$out/lib/systemd/user/gnome-session@gnome-flashback-${wmName}.target.d"
+      '';
+
+    tests = {
+      inherit (nixosTests) gnome-flashback;
     };
   };
-in
-gnome-flashback
+
+  meta = with lib; {
+    description = "GNOME 2.x-like session for GNOME 3";
+    mainProgram = "gnome-flashback";
+    homepage = "https://gitlab.gnome.org/GNOME/gnome-flashback";
+    license = licenses.gpl2;
+    maintainers = teams.gnome.members;
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/pkgs/desktops/gnome/misc/gnome-panel/default.nix
index 71bfd89d4599c..17ecae10933cb 100644
--- a/pkgs/desktops/gnome/misc/gnome-panel/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-panel/default.nix
@@ -1,35 +1,40 @@
-{ stdenv
-, lib
-, fetchurl
-, autoreconfHook
-, dconf
-, evolution-data-server
-, gdm
-, geocode-glib_2
-, gettext
-, glib
-, gnome-desktop
-, gnome-menus
-, gnome
-, gtk3
-, itstool
-, libgweather
-, libwnck
-, libxml2
-, pkg-config
-, polkit
-, systemd
-, wrapGAppsHook3
+{
+  stdenv,
+  lib,
+  fetchurl,
+  autoreconfHook,
+  dconf,
+  evolution-data-server,
+  gdm,
+  geocode-glib_2,
+  gettext,
+  glib,
+  gnome-desktop,
+  gnome-menus,
+  gnome,
+  gtk3,
+  itstool,
+  libgweather,
+  libwnck,
+  libxml2,
+  pkg-config,
+  polkit,
+  systemd,
+  wrapGAppsHook3,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-panel";
   version = "3.52.0";
 
-  outputs = [ "out" "dev" "man" ];
+  outputs = [
+    "out"
+    "dev"
+    "man"
+  ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    url = "mirror://gnome/sources/gnome-panel/${lib.versions.majorMinor finalAttrs.version}/gnome-panel-${finalAttrs.version}.tar.xz";
     hash = "sha256-nim6iHPN5A1AwpNKRk+PQ7ousbUisZFEfKon3XhTxdQ=";
   };
 
@@ -91,8 +96,8 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
-      attrPath = "gnome.${pname}";
+      packageName = "gnome-panel";
+      attrPath = "gnome.gnome-panel";
       versionPolicy = "odd-unstable";
     };
   };
@@ -105,4 +110,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix b/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
index 10b81eaad62cd..9fb6d3c2d1ddd 100644
--- a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
+++ b/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
@@ -1,17 +1,21 @@
-{ stdenv
-, lib
-, buildEnv
-, gnome-panel
-, gnome-flashback
-, xorg
-, glib
-, wrapGAppsHook3
-, panelModulePackages ? [ ]
+{
+  stdenv,
+  lib,
+  buildEnv,
+  gnome-panel,
+  gnome-flashback,
+  xorg,
+  glib,
+  wrapGAppsHook3,
+  panelModulePackages ? [ ],
 }:
 
 let
   # We always want to find the built-in panel applets.
-  selectedPanelModulePackages = [ gnome-panel gnome-flashback ] ++ panelModulePackages;
+  selectedPanelModulePackages = [
+    gnome-panel
+    gnome-flashback
+  ] ++ panelModulePackages;
 
   panelModulesEnv = buildEnv {
     name = "gnome-panel-modules-env";
@@ -28,8 +32,9 @@ stdenv.mkDerivation {
     wrapGAppsHook3
   ];
 
-  buildInputs = selectedPanelModulePackages ++
-    lib.forEach selectedPanelModulePackages (x: x.buildInputs or [ ]);
+  buildInputs =
+    selectedPanelModulePackages
+    ++ lib.forEach selectedPanelModulePackages (x: x.buildInputs or [ ]);
 
   dontUnpack = true;
   dontConfigure = true;
@@ -62,5 +67,7 @@ stdenv.mkDerivation {
     )
   '';
 
-  meta = gnome-panel.meta // { outputsToInstall = [ "out" ]; };
+  meta = gnome-panel.meta // {
+    outputsToInstall = [ "out" ];
+  };
 }