ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / gn / gnome-panel / wrapper.nix
blob5490c0f6258b9f026ba173ff26ef967b1c3dede8
2   stdenv,
3   lib,
4   buildEnv,
5   gnome-panel,
6   gnome-flashback,
7   xorg,
8   glib,
9   wrapGAppsHook3,
10   panelModulePackages ? [ ],
13 let
14   # We always want to find the built-in panel applets.
15   selectedPanelModulePackages = [
16     gnome-panel
17     gnome-flashback
18   ] ++ panelModulePackages;
20   panelModulesEnv = buildEnv {
21     name = "gnome-panel-modules-env";
22     paths = selectedPanelModulePackages;
23     pathsToLink = [ "/lib/gnome-panel/modules" ];
24   };
26 stdenv.mkDerivation {
27   pname = "${gnome-panel.pname}-with-modules";
28   inherit (gnome-panel) version;
30   nativeBuildInputs = [
31     glib
32     wrapGAppsHook3
33   ];
35   buildInputs =
36     selectedPanelModulePackages
37     ++ lib.forEach selectedPanelModulePackages (x: x.buildInputs or [ ]);
39   dontUnpack = true;
40   dontConfigure = true;
41   dontBuild = true;
43   preferLocalBuild = true;
44   allowSubstitutes = false;
46   installPhase = ''
47     runHook preInstall
49     mkdir -p $out
50     ${xorg.lndir}/bin/lndir -silent ${gnome-panel} $out
52     rm -r $out/lib/gnome-panel/modules
53     ${xorg.lndir}/bin/lndir -silent ${panelModulesEnv} $out
55     rm $out/share/applications/gnome-panel.desktop
57     ln -s ${gnome-panel}/share/applications/gnome-panel.desktop \
58       $out/share/applications/gnome-panel.desktop
60     runHook postInstall
61   '';
63   preFixup = ''
64     gappsWrapperArgs+=(
65       --set NIX_GNOME_PANEL_MODULESDIR "$out/lib/gnome-panel/modules"
66     )
67   '';
69   meta = gnome-panel.meta // {
70     outputsToInstall = [ "out" ];
71   };