about summary refs log tree commit diff
path: root/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
diff options
context:
space:
mode:
authorBobby Rong <rjl931189261@126.com>2023-10-06 16:40:53 +0800
committerBobby Rong <rjl931189261@126.com>2023-10-06 18:22:07 +0800
commitf6345cd25941b8eb17a7e7768b9a3de0b494eb43 (patch)
tree016baee047fc44644a3829c85ff491dfafacd4ba /pkgs/desktops/gnome/misc/gnome-flashback/default.nix
parent55c124cadbbae4001dabc128e29edd113d795f6b (diff)
gnome.gnome-panel-with-modules: init
Setting X_GNOME_PANEL_MODULESDIR in gnome-session wrapper is confusing to me.
Diffstat (limited to 'pkgs/desktops/gnome/misc/gnome-flashback/default.nix')
-rw-r--r--pkgs/desktops/gnome/misc/gnome-flashback/default.nix26
1 files changed, 6 insertions, 20 deletions
diff --git a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
index cfe0903cce7b0..fd2abf1b51fc9 100644
--- a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
@@ -23,6 +23,7 @@
 , upower
 , pam
 , wrapGAppsHook
+, makeWrapper
 , writeTextFile
 , xkeyboard_config
 , xorg
@@ -127,7 +128,7 @@ let
         versionPolicy = "odd-unstable";
       };
 
-      mkSessionForWm = { wmName, wmLabel, wmCommand, enableGnomePanel, panelModulePackages }:
+      mkSessionForWm = { wmName, wmLabel, wmCommand, enableGnomePanel }:
         let
           wmApplication = writeTextFile {
             name = "gnome-flashback-${wmName}-wm";
@@ -156,28 +157,15 @@ let
             '';
           };
 
-          # gnome-panel will only look for applets in a single directory so symlink them into here.
-          panelModulesEnv = buildEnv {
-            name = "gnome-panel-modules-env";
-            # We always want to find the built-in panel applets.
-            paths = [ gnome-panel gnome-flashback ] ++ panelModulePackages;
-            pathsToLink = [ "/lib/gnome-panel/modules" ];
-          };
-
           executable = stdenv.mkDerivation {
             name = "gnome-flashback-${wmName}";
-            nativeBuildInputs = [ glib wrapGAppsHook ];
-            buildInputs = [ gnome-flashback ] ++ lib.optionals enableGnomePanel ([ gnome-panel ] ++ panelModulePackages);
 
-            # We want to use the wrapGAppsHook mechanism to wrap gnome-session
-            # with the environment that gnome-flashback and gnome-panel need to
-            # run, including the configured applet packages. This is only possible
-            # in the fixup phase, so turn everything else off.
+            nativeBuildInputs = [ makeWrapper ];
+
             dontUnpack = true;
             dontConfigure = true;
             dontBuild = true;
             dontInstall = true;
-            dontWrapGApps = true; # We want to do the wrapping ourselves.
 
             # gnome-flashback and gnome-panel need to be added to XDG_DATA_DIRS so that their .desktop files can be found by gnome-session.
             # We need to pass the --builtin flag so that gnome-session invokes gnome-session-binary instead of systemd.
@@ -186,9 +174,7 @@ let
               makeWrapper ${gnome-session}/bin/gnome-session $out \
                 --add-flags "--session=gnome-flashback-${wmName} --builtin" \
                 --set-default XDG_CURRENT_DESKTOP 'GNOME-Flashback:GNOME' \
-                --prefix XDG_DATA_DIRS : '${lib.makeSearchPath "share" ([ wmApplication gnomeSession gnome-flashback ] ++ lib.optional enableGnomePanel gnome-panel)}' \
-                "''${gappsWrapperArgs[@]}" \
-                ${lib.optionalString enableGnomePanel "--set NIX_GNOME_PANEL_MODULESDIR '${panelModulesEnv}/lib/gnome-panel/modules'"}
+                --prefix XDG_DATA_DIRS : '${lib.makeSearchPath "share" [ wmApplication gnomeSession gnome-flashback ]}'
             '';
           };
 
@@ -211,7 +197,7 @@ let
         };
 
       mkSystemdTargetForWm = { wmName, wmLabel, wmCommand, enableGnomePanel }:
-        runCommand "gnome-flashback-${wmName}.target" {} ''
+        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"