{ lib, stdenv , fetchFromGitHub , nix-update-script , pantheon , wrapGAppsHook , pkgconfig , meson , ninja , vala , gala , gtk3 , libgee , granite , gettext , mutter , json-glib , python3 , elementary-gtk-theme , elementary-icon-theme }: stdenv.mkDerivation rec { pname = "wingpanel"; version = "2.3.2"; src = fetchFromGitHub { owner = "elementary"; repo = pname; rev = version; sha256 = "sha256-mXi600gufUK81Uks9p4+al0tCI7H9KpizZGyoomp42s="; }; passthru = { updateScript = nix-update-script { attrPath = "pantheon.${pname}"; }; }; nativeBuildInputs = [ gettext meson ninja pkgconfig python3 vala wrapGAppsHook ]; buildInputs = [ elementary-gtk-theme elementary-icon-theme gala granite gtk3 json-glib libgee mutter ]; patches = [ ./indicators.patch ]; postPatch = '' chmod +x meson/post_install.py patchShebangs meson/post_install.py ''; preFixup = '' gappsWrapperArgs+=( # this theme is required --prefix XDG_DATA_DIRS : "${elementary-gtk-theme}/share" ) ''; meta = with lib; { description = "The extensible top panel for Pantheon"; longDescription = '' Wingpanel is an empty container that accepts indicators as extensions, including the applications menu. ''; homepage = "https://github.com/elementary/wingpanel"; license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = pantheon.maintainers; }; }