Merge pull request #330634 from r-ryantm/auto-update/circumflex
[NixPkgs.git] / pkgs / desktops / gnome / misc / gnome-panel / default.nix
blob71bfd89d4599cb23cf914202dfc42a02645f4e14
1 { stdenv
2 , lib
3 , fetchurl
4 , autoreconfHook
5 , dconf
6 , evolution-data-server
7 , gdm
8 , geocode-glib_2
9 , gettext
10 , glib
11 , gnome-desktop
12 , gnome-menus
13 , gnome
14 , gtk3
15 , itstool
16 , libgweather
17 , libwnck
18 , libxml2
19 , pkg-config
20 , polkit
21 , systemd
22 , wrapGAppsHook3
25 stdenv.mkDerivation rec {
26   pname = "gnome-panel";
27   version = "3.52.0";
29   outputs = [ "out" "dev" "man" ];
31   src = fetchurl {
32     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
33     hash = "sha256-nim6iHPN5A1AwpNKRk+PQ7ousbUisZFEfKon3XhTxdQ=";
34   };
36   patches = [
37     # Load modules from path in `NIX_GNOME_PANEL_MODULESDIR` environment variable
38     # instead of gnome-panel’s libdir so that the NixOS module can make gnome-panel
39     # load modules from other packages as well.
40     ./modulesdir-env-var.patch
41   ];
43   # make .desktop Exec absolute
44   postPatch = ''
45     patch -p0 <<END_PATCH
46     +++ gnome-panel/gnome-panel.desktop.in
47     @@ -7 +7 @@
48     -Exec=gnome-panel
49     +Exec=$out/bin/gnome-panel
50     END_PATCH
51   '';
53   preFixup = ''
54     gappsWrapperArgs+=(
55       --prefix XDG_DATA_DIRS : "${gnome-menus}/share"
56       --prefix XDG_CONFIG_DIRS : "${gnome-menus}/etc/xdg"
57     )
58   '';
60   nativeBuildInputs = [
61     autoreconfHook
62     gettext
63     itstool
64     libxml2
65     pkg-config
66     wrapGAppsHook3
67   ];
69   buildInputs = [
70     dconf
71     evolution-data-server
72     gdm
73     geocode-glib_2
74     glib
75     gnome-desktop
76     gnome-menus
77     gtk3
78     libgweather
79     libwnck
80     polkit
81     systemd
82   ];
84   configureFlags = [
85     "--enable-eds"
86   ];
88   enableParallelBuilding = true;
90   doCheck = true;
92   passthru = {
93     updateScript = gnome.updateScript {
94       packageName = pname;
95       attrPath = "gnome.${pname}";
96       versionPolicy = "odd-unstable";
97     };
98   };
100   meta = with lib; {
101     description = "Component of Gnome Flashback that provides panels and default applets for the desktop";
102     mainProgram = "gnome-panel";
103     homepage = "https://gitlab.gnome.org/GNOME/gnome-panel";
104     license = licenses.gpl2Plus;
105     maintainers = teams.gnome.members;
106     platforms = platforms.linux;
107   };