nixpkgs/pkgs/desktops/xfce/core/xfce4-panel.nix

60 lines
1.8 KiB
Nix
Raw Normal View History

{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui
, libxfce4ui_gtk3, libwnck, exo, garcon, xfconf, libstartup_notification
2018-07-14 14:37:27 +02:00
, makeWrapper, xfce4-mixer, hicolor-icon-theme, tzdata
, withGtk3 ? false, gtk3, gettext, glib-networking
}:
let
inherit (stdenv.lib) optional;
p_name = "xfce4-panel";
2015-03-12 22:46:47 +01:00
ver_maj = "4.12";
2018-03-21 21:37:49 +01:00
ver_min = "2";
in
stdenv.mkDerivation rec {
name = "${p_name}-${ver_maj}.${ver_min}";
src = fetchurl {
url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2";
2018-03-21 21:37:49 +01:00
sha256 = "1s8cvsrgmkmmm84g6mghpj2k4777gm22g5lrsf8pdy5qh6xql1a2";
};
patches = [ ./xfce4-panel-datadir.patch ];
patchFlags = "-p1";
postPatch = ''
for f in $(find . -name \*.sh); do
substituteInPlace $f --replace gettext ${gettext}/bin/gettext
done
2018-07-14 14:37:27 +02:00
substituteInPlace plugins/clock/clock.c \
--replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" \
--replace "if (!g_file_test (filename, G_FILE_TEST_IS_SYMLINK))" ""
'';
outputs = [ "out" "dev" "devdoc" ];
buildInputs =
[ pkgconfig intltool gtk libxfce4util exo libwnck
garcon xfconf libstartup_notification makeWrapper hicolor-icon-theme
2018-03-12 23:55:30 +01:00
] ++ xfce4-mixer.gst_plugins
++ optional withGtk3 gtk3;
propagatedBuildInputs = [ (if withGtk3 then libxfce4ui_gtk3 else libxfce4ui) ];
configureFlags = optional withGtk3 "--enable-gtk3";
postInstall = ''
wrapProgram "$out/bin/xfce4-panel" \
--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \
--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules"
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = http://www.xfce.org/projects/xfce4-panel;
description = "Xfce panel";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.eelco ];
};
}