nixpkgs/pkgs/applications/video/kazam/default.nix
2018-03-07 14:33:58 +09:00

52 lines
1.8 KiB
Nix

{ stdenv, fetchurl, python3Packages, gst_all_1, makeWrapper, gobjectIntrospection
, gtk3, libwnck3, keybinder, intltool, libcanberra-gtk2 }:
python3Packages.buildPythonApplication rec {
name = "kazam-${version}";
version = "1.4.3";
namePrefix = "";
src = fetchurl {
url = "https://launchpad.net/kazam/stable/${version}/+download/kazam-${version}.tar.gz";
sha256 = "00bcn0yj9xrv87sf6xd3wpilsjgjpsj15zzpjh351ffpjnr0ica8";
};
# TODO: keybinder, appindicator3
buildInputs = with python3Packages;
[ pygobject3 pyxdg pycairo gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gobjectIntrospection gtk3 libwnck3 distutils_extra
intltool dbus-python ];
# TODO: figure out why PYTHONPATH is not passed automatically for those programs
pythonPath = with python3Packages;
[ pygobject3 pyxdg pycairo dbus-python ];
patches = [ ./datadir.patch ./bug_1190693.patch ];
prePatch = ''
rm setup.cfg
substituteInPlace kazam/backend/grabber.py --replace "/usr/bin/canberra-gtk-play" "${libcanberra-gtk2}/bin/canberra-gtk-play"
'';
# no tests
doCheck = false;
preFixup = ''
wrapProgram $out/bin/kazam \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix LD_LIBRARY_PATH ":" "${stdenv.lib.makeLibraryPath [ gtk3 gst_all_1.gstreamer keybinder ]}" \
--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \
--prefix XDG_DATA_DIRS : "${gtk3.out}/share" \
--set GST_REGISTRY "/tmp/kazam.gstreamer.registry";
'';
meta = with stdenv.lib; {
description = "A screencasting program created with design in mind";
homepage = https://code.launchpad.net/kazam;
license = licenses.lgpl3;
platforms = platforms.linux;
maintainers = [ maintainers.domenkozar ];
};
}