about summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2024-08-31 11:00:48 +0200
committerJan Tojnar <jtojnar@gmail.com>2024-09-01 14:16:31 +0200
commite1093690a83c83c5ac25cbd94d6fc668a92bc426 (patch)
tree7d6133b74aa591838db478839f3673c804ae69e0 /pkgs/desktops
parent771f47b485b0b05b2aa0e166a73e3a5fd4a0e2fa (diff)
gnome-panel: Move from gnome scope to top-level
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome/default.nix6
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/default.nix113
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/modulesdir-env-var.patch31
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix74
4 files changed, 2 insertions, 222 deletions
diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix
index 10f48ccc606dc..fe540be7325e0 100644
--- a/pkgs/desktops/gnome/default.nix
+++ b/pkgs/desktops/gnome/default.nix
@@ -51,10 +51,6 @@ in
 
   gnome-flashback = callPackage ./misc/gnome-flashback { };
 
-  gnome-panel = callPackage ./misc/gnome-panel { };
-
-  gnome-panel-with-modules = callPackage ./misc/gnome-panel/wrapper.nix { };
-
 }) // lib.optionalAttrs config.allowAliases {
 #### Legacy aliases. They need to be outside the scope or they will shadow the attributes from parent scope.
   libgnome-keyring = lib.warn "The ‘gnome.libgnome-keyring’ was moved to top-level. Please use ‘pkgs.libgnome-keyring’ directly." pkgs.libgnome-keyring; # Added on 2024-06-22.
@@ -114,6 +110,8 @@ in
   gnome-nibbles = lib.warn "The ‘gnome.gnome-nibbles’ was moved to top-level. Please use ‘pkgs.gnome-nibbles’ directly." pkgs.gnome-nibbles; # Added on 2024-08-11.
   gnome-notes = lib.warn "The ‘gnome.gnome-notes’ was moved to top-level. Please use ‘pkgs.gnome-notes’ directly." pkgs.gnome-notes; # Added on 2024-08-11.
   gnome-packagekit = lib.warn "The ‘gnome.gnome-packagekit’ was moved to top-level. Please use ‘pkgs.gnome-packagekit’ directly." pkgs.gnome-packagekit; # Added on 2024-06-22.
+  gnome-panel = lib.warn "The ‘gnome.gnome-panel’ was moved to top-level. Please use ‘pkgs.gnome-panel’ directly." pkgs.gnome-panel; # Added on 2024-08-31.
+  gnome-panel-with-modules = lib.warn "The ‘gnome.gnome-panel-with-modules’ was moved to top-level. Please use ‘pkgs.gnome-panel-with-modules’ directly." pkgs.gnome-panel-with-modules; # Added on 2024-08-31.
   gnome-power-manager = lib.warn "The ‘gnome.gnome-power-manager’ was moved to top-level. Please use ‘pkgs.gnome-power-manager’ directly." pkgs.gnome-power-manager; # Added on 2024-08-11.
   gnome-remote-desktop = lib.warn "The ‘gnome.gnome-remote-desktop’ was moved to top-level. Please use ‘pkgs.gnome-remote-desktop’ directly." pkgs.gnome-remote-desktop; # Added on 2024-08-11.
   gnome-robots = lib.warn "The ‘gnome.gnome-robots’ was moved to top-level. Please use ‘pkgs.gnome-robots’ directly." pkgs.gnome-robots; # Added on 2024-08-11.
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/pkgs/desktops/gnome/misc/gnome-panel/default.nix
deleted file mode 100644
index 17ecae10933cb..0000000000000
--- a/pkgs/desktops/gnome/misc/gnome-panel/default.nix
+++ /dev/null
@@ -1,113 +0,0 @@
-{
-  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 (finalAttrs: {
-  pname = "gnome-panel";
-  version = "3.52.0";
-
-  outputs = [
-    "out"
-    "dev"
-    "man"
-  ];
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gnome-panel/${lib.versions.majorMinor finalAttrs.version}/gnome-panel-${finalAttrs.version}.tar.xz";
-    hash = "sha256-nim6iHPN5A1AwpNKRk+PQ7ousbUisZFEfKon3XhTxdQ=";
-  };
-
-  patches = [
-    # Load modules from path in `NIX_GNOME_PANEL_MODULESDIR` environment variable
-    # instead of gnome-panel’s libdir so that the NixOS module can make gnome-panel
-    # load modules from other packages as well.
-    ./modulesdir-env-var.patch
-  ];
-
-  # make .desktop Exec absolute
-  postPatch = ''
-    patch -p0 <<END_PATCH
-    +++ gnome-panel/gnome-panel.desktop.in
-    @@ -7 +7 @@
-    -Exec=gnome-panel
-    +Exec=$out/bin/gnome-panel
-    END_PATCH
-  '';
-
-  preFixup = ''
-    gappsWrapperArgs+=(
-      --prefix XDG_DATA_DIRS : "${gnome-menus}/share"
-      --prefix XDG_CONFIG_DIRS : "${gnome-menus}/etc/xdg"
-    )
-  '';
-
-  nativeBuildInputs = [
-    autoreconfHook
-    gettext
-    itstool
-    libxml2
-    pkg-config
-    wrapGAppsHook3
-  ];
-
-  buildInputs = [
-    dconf
-    evolution-data-server
-    gdm
-    geocode-glib_2
-    glib
-    gnome-desktop
-    gnome-menus
-    gtk3
-    libgweather
-    libwnck
-    polkit
-    systemd
-  ];
-
-  configureFlags = [
-    "--enable-eds"
-  ];
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  passthru = {
-    updateScript = gnome.updateScript {
-      packageName = "gnome-panel";
-      attrPath = "gnome.gnome-panel";
-      versionPolicy = "odd-unstable";
-    };
-  };
-
-  meta = with lib; {
-    description = "Component of Gnome Flashback that provides panels and default applets for the desktop";
-    mainProgram = "gnome-panel";
-    homepage = "https://gitlab.gnome.org/GNOME/gnome-panel";
-    license = licenses.gpl2Plus;
-    maintainers = teams.gnome.members;
-    platforms = platforms.linux;
-  };
-})
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/modulesdir-env-var.patch b/pkgs/desktops/gnome/misc/gnome-panel/modulesdir-env-var.patch
deleted file mode 100644
index 40638bf123d2a..0000000000000
--- a/pkgs/desktops/gnome/misc/gnome-panel/modulesdir-env-var.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/gnome-panel/gp-module-manager.c b/gnome-panel/gp-module-manager.c
-index 58447fd84..7af99de7d 100644
---- a/gnome-panel/gp-module-manager.c
-+++ b/gnome-panel/gp-module-manager.c
-@@ -49,8 +49,16 @@ load_modules (GpModuleManager *self)
- {
-   GDir *dir;
-   const gchar *name;
-+  const gchar *modules_dir;
- 
--  dir = g_dir_open (MODULESDIR, 0, NULL);
-+  modules_dir = g_getenv ("NIX_GNOME_PANEL_MODULESDIR");
-+
-+  if (!modules_dir) {
-+    g_warning ("The NIX_GNOME_PANEL_MODULESDIR environment variable was not set, modules will not be loaded.");
-+    return;
-+  }
-+
-+  dir = g_dir_open (modules_dir, 0, NULL);
-   if (!dir)
-     return;
- 
-@@ -63,7 +71,7 @@ load_modules (GpModuleManager *self)
-       if (!g_str_has_suffix (name, ".so"))
-         continue;
- 
--      path = g_build_filename (MODULESDIR, name, NULL);
-+      path = g_build_filename (modules_dir, name, NULL);
-       module = gp_module_new_from_path (path);
-       g_free (path);
- 
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix b/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
deleted file mode 100644
index a1c0dc0c0320d..0000000000000
--- a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
+++ /dev/null
@@ -1,74 +0,0 @@
-{
-  stdenv,
-  lib,
-  buildEnv,
-  gnome,
-  xorg,
-  glib,
-  wrapGAppsHook3,
-  panelModulePackages ? [ ],
-}:
-
-let
-  inherit (gnome) gnome-panel gnome-flashback;
-
-  # We always want to find the built-in panel applets.
-  selectedPanelModulePackages = [
-    gnome-panel
-    gnome-flashback
-  ] ++ panelModulePackages;
-
-  panelModulesEnv = buildEnv {
-    name = "gnome-panel-modules-env";
-    paths = selectedPanelModulePackages;
-    pathsToLink = [ "/lib/gnome-panel/modules" ];
-  };
-in
-stdenv.mkDerivation {
-  pname = "${gnome-panel.pname}-with-modules";
-  inherit (gnome-panel) version;
-
-  nativeBuildInputs = [
-    glib
-    wrapGAppsHook3
-  ];
-
-  buildInputs =
-    selectedPanelModulePackages
-    ++ lib.forEach selectedPanelModulePackages (x: x.buildInputs or [ ]);
-
-  dontUnpack = true;
-  dontConfigure = true;
-  dontBuild = true;
-
-  preferLocalBuild = true;
-  allowSubstitutes = false;
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out
-    ${xorg.lndir}/bin/lndir -silent ${gnome-panel} $out
-
-    rm -r $out/lib/gnome-panel/modules
-    ${xorg.lndir}/bin/lndir -silent ${panelModulesEnv} $out
-
-    rm $out/share/applications/gnome-panel.desktop
-
-    substitute ${gnome-panel}/share/applications/gnome-panel.desktop \
-      $out/share/applications/gnome-panel.desktop --replace \
-      "Exec=${gnome-panel}/bin/gnome-panel" "Exec=$out/bin/gnome-panel"
-
-    runHook postInstall
-  '';
-
-  preFixup = ''
-    gappsWrapperArgs+=(
-      --set NIX_GNOME_PANEL_MODULESDIR "$out/lib/gnome-panel/modules"
-    )
-  '';
-
-  meta = gnome-panel.meta // {
-    outputsToInstall = [ "out" ];
-  };
-}