diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix index 276c2fa787f..a2b295facad 100644 --- a/pkgs/applications/video/pitivi/default.nix +++ b/pkgs/applications/video/pitivi/default.nix @@ -1,12 +1,25 @@ -{ stdenv, fetchFromGitHub, fetchurl, pkgconfig, intltool, itstool, python3, wrapGAppsHook -, python3Packages, gst_all_1, gtk3 -, gobject-introspection, librsvg, gnome3, libnotify, gsound -, meson, ninja, gsettings-desktop-schemas +{ stdenv +, fetchFromGitHub +, fetchurl +, pkg-config +, intltool +, itstool +, python3 +, wrapGAppsHook +, python3Packages +, gst_all_1 +, gtk3 +, gobject-introspection +, librsvg +, gnome3 +, libnotify +, gsound +, meson +, ninja +, gsettings-desktop-schemas }: let - version = "0.999"; - # gst-transcoder will eventually be merged with gstreamer (according to # gst-transcoder 1.8.0 release notes). For now the only user is pitivi so we # don't bother exposing the package to all of nixpkgs. @@ -19,20 +32,30 @@ let rev = version; sha256 = "16skiz9akavssii529v9nr8zd54w43livc14khdyzv164djg9q8f"; }; - nativeBuildInputs = [ pkgconfig meson ninja gobject-introspection python3 ]; - buildInputs = with gst_all_1; [ gstreamer gst-plugins-base ]; + nativeBuildInputs = [ + pkg-config + meson + ninja + gobject-introspection + python3 + ]; + buildInputs = with gst_all_1; [ + gstreamer + gst-plugins-base + ]; }; in python3Packages.buildPythonApplication rec { - name = "pitivi-${version}"; - - src = fetchurl { - url = "mirror://gnome/sources/pitivi/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "0mxp2p4gg976fp1vj3rb5rmpl5mqfzncm9vw2719irl32f1qlvyb"; - }; + pname = "pitivi"; + version = "0.999"; format = "other"; + src = fetchurl { + url = "mirror://gnome/sources/pitivi/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0mxp2p4gg976fp1vj3rb5rmpl5mqfzncm9vw2719irl32f1qlvyb"; + }; + patches = [ # By default, the build picks up environment variables like PYTHONPATH # and saves them to the generated binary. This would make the build-time @@ -40,25 +63,51 @@ in python3Packages.buildPythonApplication rec { ./prevent-closure-contamination.patch ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + intltool + itstool + python3 + wrapGAppsHook + ]; + + buildInputs = [ + gobject-introspection + gtk3 + librsvg + gnome3.gnome-desktop + gsound + gnome3.adwaita-icon-theme + gsettings-desktop-schemas + libnotify + gst-transcoder + ] ++ (with gst_all_1; [ + gstreamer + gst-editing-services + gst-plugins-base + (gst-plugins-good.override { gtkSupport = true; }) + gst-plugins-bad + gst-plugins-ugly + gst-libav + gst-validate + ]); + + pythonPath = with python3Packages; [ + pygobject3 + gst-python + pyxdg + numpy + pycairo + matplotlib + dbus-python + ]; + postPatch = '' patchShebangs ./getenvvar.py ''; - nativeBuildInputs = [ meson ninja pkgconfig intltool itstool python3 wrapGAppsHook ]; - - buildInputs = [ - gobject-introspection gtk3 librsvg gnome3.gnome-desktop gsound - gnome3.adwaita-icon-theme - gsettings-desktop-schemas libnotify - gst-transcoder - ] ++ (with gst_all_1; [ - gstreamer gst-editing-services - gst-plugins-base (gst-plugins-good.override { gtkSupport = true; }) - gst-plugins-bad gst-plugins-ugly gst-libav gst-validate - ]); - - pythonPath = with python3Packages; [ pygobject3 gst-python pyxdg numpy pycairo matplotlib dbus-python ]; - passthru = { updateScript = gnome3.updateScript { packageName = "pitivi";