diff options
Diffstat (limited to 'pkgs/development/libraries/libdbusmenu/default.nix')
-rw-r--r-- | pkgs/development/libraries/libdbusmenu/default.nix | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libdbusmenu/default.nix b/pkgs/development/libraries/libdbusmenu/default.nix new file mode 100644 index 000000000000..3e633f9a3659 --- /dev/null +++ b/pkgs/development/libraries/libdbusmenu/default.nix @@ -0,0 +1,59 @@ +{ stdenv, fetchurl, lib, file +, pkgconfig, intltool +, glib, dbus_glib, json_glib +, gobjectIntrospection, vala, gnome_doc_utils +, gtkVersion ? null, gtk2 ? null, gtk3 ? null }: + +with lib; + +stdenv.mkDerivation rec { + name = let postfix = if gtkVersion == null then "glib" else "gtk${gtkVersion}"; + in "libdbusmenu-${postfix}-${version}"; + version = "${versionMajor}.${versionMinor}"; + versionMajor = "12.10"; + versionMinor = "2"; + + src = fetchurl { + url = "${meta.homepage}/${versionMajor}/${version}/+download/libdbusmenu-${version}.tar.gz"; + sha256 = "9d6ad4a0b918b342ad2ee9230cce8a095eb601cb0cee6ddc1122d0481f9d04c9"; + }; + + nativeBuildInputs = [ pkgconfig intltool ]; + + buildInputs = [ + glib dbus_glib json_glib + gobjectIntrospection vala gnome_doc_utils + ] ++ optional (gtkVersion != null) (if gtkVersion == "2" then gtk2 else gtk3); + + postPatch = '' + substituteInPlace {configure,ltmain.sh,m4/libtool.m4} \ + --replace /usr/bin/file ${file}/bin/file + ''; + + # https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/libdbusmenu + preConfigure = '' + export HAVE_VALGRIND_TRUE="#" + export HAVE_VALGRIND_FALSE="" + ''; + + configureFlags = [ + "CFLAGS=-Wno-error" + "--sysconfdir=/etc" + "--localstatedir=/var" + (if gtkVersion == null then "--disable-gtk" else "--with-gtk=${gtkVersion}") + "--disable-scrollkeeper" + ] ++ optional (gtkVersion != "2") "--disable-dumper"; + + installFlags = [ + "sysconfdir=\${out}/etc" + "localstatedir=\${TMPDIR}" + ]; + + meta = { + description = "A library for passing menu structures across DBus"; + homepage = "https://launchpad.net/dbusmenu"; + license = with licenses; [ gpl3 lgpl21 lgpl3 ]; + platforms = platforms.linux; + maintainers = [ maintainers.msteen ]; + }; +} |