aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/video/pitivi
diff options
context:
space:
mode:
authorBjørn Forsman <bjorn.forsman@gmail.com>2016-07-25 06:05:55 +0200
committerRok Garbas <rok@garbas.si>2016-07-25 06:05:55 +0200
commit245168060372cf84ce34fae8af6402b948d33689 (patch)
tree843ca53d4b5f8c2626858d1d7fc0f5610d799162 /pkgs/applications/video/pitivi
parentcbcee086502a18595608c847474b960dd799cfd4 (diff)
pitivi: 0.95 -> 0.96 (fixes startup error) (#17228)
* pitivi: 0.95 -> 0.96 (fixes startup error) The upgrade of gtk3 to v3.20 broke pitivi, causing it to segfault after the user closes the Welcome dialog. This release fixes that. New dependencies: gst-transcoder and dbus. (pitivi imports dbus if it finds the GNOME_DESKTOP_SESSION_ID environment variable. Without dbus there will be some ugly errors for GNOME desktop users.) * pitivi: use wrapGAppsHook instead of makeWrapper Allows us to remove preFixup. * pitivi: move meta section to the end Like most Nix package files are written.
Diffstat (limited to 'pkgs/applications/video/pitivi')
-rw-r--r--pkgs/applications/video/pitivi/default.nix57
1 files changed, 34 insertions, 23 deletions
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index d488a3718b74..4a831fe110f4 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -1,49 +1,60 @@
-{ stdenv, fetchurl, pkgconfig, intltool, itstool, makeWrapper
+{ stdenv, fetchurl, pkgconfig, intltool, itstool, wrapGAppsHook
, python3Packages, gst, gtk3, hicolor_icon_theme
, gobjectIntrospection, librsvg, gnome3, libnotify
+# for gst-transcoder:
+, which, meson, ninja
}:
let
- version = "0.95";
+ version = "0.96";
+
+ # 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.
+ gst-transcoder = stdenv.mkDerivation rec {
+ name = "gst-transcoder-1.8.0";
+ src = fetchurl {
+ name = "${name}.tar.gz";
+ url = "https://github.com/pitivi/gst-transcoder/archive/1.8.0.tar.gz";
+ sha256 = "0iggr6idmp7cmfsf6pkhfl3jq1bkga37jl5prbcl1zapkzi26fg6";
+ };
+ buildInputs = [ which meson ninja pkgconfig gobjectIntrospection ]
+ ++ (with gst; [ gstreamer gst-plugins-base ]);
+ };
+
in stdenv.mkDerivation rec {
name = "pitivi-${version}";
src = fetchurl {
url = "mirror://gnome/sources/pitivi/${version}/${name}.tar.xz";
- sha256 = "04ykw619aikhxk5wj7z44pvwl52053d1kamcxpscw0ixrh5j45az";
- };
-
- meta = with stdenv.lib; {
- description = "Non-Linear video editor utilizing the power of GStreamer";
- homepage = "http://pitivi.org/";
- longDescription = ''
- Pitivi is a video editor built upon the GStreamer Editing Services.
- It aims to be an intuitive and flexible application
- that can appeal to newbies and professionals alike.
- '';
- license = licenses.lgpl21Plus;
- platforms = platforms.linux;
+ sha256 = "115d37mvi32yds8gqj2yidkk6pap7szavhjf2hw0388ynydlc2zs";
};
- nativeBuildInputs = [ pkgconfig intltool itstool makeWrapper ];
+ nativeBuildInputs = [ pkgconfig intltool itstool wrapGAppsHook ];
buildInputs = [
gobjectIntrospection gtk3 librsvg gnome3.gnome_desktop
gnome3.defaultIconTheme
gnome3.gsettings_desktop_schemas libnotify
+ gst-transcoder
] ++ (with gst; [
gstreamer gst-editing-services
gst-plugins-base gst-plugins-good
gst-plugins-bad gst-plugins-ugly gst-libav gst-validate
]) ++ (with python3Packages; [
python pygobject3 gst-python pyxdg numpy pycairo sqlite3 matplotlib
+ dbus
]);
- preFixup = ''
- wrapProgram "$out/bin/pitivi" \
- --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
- --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
- --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
- --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$out/share:$GSETTINGS_SCHEMAS_PATH"
- '';
+ meta = with stdenv.lib; {
+ description = "Non-Linear video editor utilizing the power of GStreamer";
+ homepage = "http://pitivi.org/";
+ longDescription = ''
+ Pitivi is a video editor built upon the GStreamer Editing Services.
+ It aims to be an intuitive and flexible application
+ that can appeal to newbies and professionals alike.
+ '';
+ license = licenses.lgpl21Plus;
+ platforms = platforms.linux;
+ };
}