about summary refs log tree commit diff
path: root/pkgs/applications/video
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2017-11-05 00:01:48 +0000
committerGitHub <noreply@github.com>2017-11-05 00:01:48 +0000
commit7be7698612e9fb04752f2e3c0ac9e2907ec21eb5 (patch)
tree9c87c3798ad28cfaba29e55f7c8ba9e1bfdd1aab /pkgs/applications/video
parent0cabd5fa6782aa26167ce334a9b02338f8a7665f (diff)
parent7a9efec8edd064dec5fbd08bb3fa358a4844d746 (diff)
downloadnixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar.gz
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar.bz2
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar.lz
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar.xz
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.tar.zst
nixlib-7be7698612e9fb04752f2e3c0ac9e2907ec21eb5.zip
Merge pull request #25552 from antonxy/master
lightworks: init at 14.0.0
Diffstat (limited to 'pkgs/applications/video')
-rw-r--r--pkgs/applications/video/lightworks/default.nix87
1 files changed, 87 insertions, 0 deletions
diff --git a/pkgs/applications/video/lightworks/default.nix b/pkgs/applications/video/lightworks/default.nix
new file mode 100644
index 000000000000..9c6a49c55136
--- /dev/null
+++ b/pkgs/applications/video/lightworks/default.nix
@@ -0,0 +1,87 @@
+{ stdenv, fetchurl, dpkg, makeWrapper, patchelf, buildFHSUserEnv
+, gtk3, gnome3, gdk_pixbuf, cairo, libjpeg_original, glib, gnome2, mesa_glu
+, nvidia_cg_toolkit, zlib, openssl, portaudio
+}:
+let
+  fullPath = stdenv.lib.makeLibraryPath [
+    stdenv.cc.cc
+    gnome3.gtk
+    gdk_pixbuf
+    cairo
+    libjpeg_original
+    glib
+    gnome2.pango
+    mesa_glu
+    nvidia_cg_toolkit
+    zlib
+    openssl
+    portaudio
+  ];
+
+  lightworks = stdenv.mkDerivation rec {
+    version = "14.0.0";
+    name = "lightworks-${version}";
+    
+    src =
+      if stdenv.system == "x86_64-linux" then
+        fetchurl {
+          url = "http://downloads.lwks.com/v14/lwks-14.0.0-amd64.deb";
+          sha256 = "66eb9f9678d979db76199f1c99a71df0ddc017bb47dfda976b508849ab305033";
+        }
+      else throw "${name} is not supported on ${stdenv.system}";
+
+    buildInputs = [ dpkg makeWrapper ];
+
+    phases = [ "unpackPhase" "installPhase" ];
+    unpackPhase = "dpkg-deb -x ${src} ./";
+
+    installPhase = ''
+      mkdir -p $out/bin
+      substitute usr/bin/lightworks $out/bin/lightworks \
+        --replace "/usr/lib/lightworks" "$out/lib/lightworks"
+      chmod +x $out/bin/lightworks
+
+      cp -r usr/lib $out
+
+      # /usr/share/fonts is not normally searched
+      # This adds it to lightworks' search path while keeping the default
+      # using the FONTCONFIG_FILE env variable
+      echo "<?xml version='1.0'?>
+      <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
+      <fontconfig>
+          <dir>/usr/share/fonts/truetype</dir>
+          <include>/etc/fonts/fonts.conf</include>
+      </fontconfig>" > $out/lib/lightworks/fonts.conf
+
+      patchelf \
+        --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        $out/lib/lightworks/ntcardvt
+
+      wrapProgram $out/lib/lightworks/ntcardvt \
+        --prefix LD_LIBRARY_PATH : ${fullPath}:$out/lib/lightworks \
+        --set FONTCONFIG_FILE $out/lib/lightworks/fonts.conf
+       
+      cp -r usr/share $out/share
+    '';
+
+    dontPatchELF = true;
+
+    meta = {
+      description = "Professional Non-Linear Video Editor";
+      homepage = "https://www.lwks.com/";
+      license = stdenv.lib.licenses.unfree;
+      maintainers = [ stdenv.lib.maintainers.antonxy ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+
+# Lightworks expects some files in /usr/share/lightworks
+in buildFHSUserEnv rec {
+  name = "lightworks";
+
+  targetPkgs = pkgs: [
+      lightworks
+  ];
+
+  runScript = "lightworks";
+}