diff options
author | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
---|---|---|
committer | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
commit | c4625b175f8200f643fd6e11010932ea44c78433 (patch) | |
tree | bce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix | |
parent | 49f735974dd103039ddc4cb576bb76555164a9e7 (diff) | |
parent | d661aa56a8843e991261510c1bb28fdc2f6975ae (diff) |
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie
git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7
git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix b/infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix new file mode 100644 index 000000000000..da413915e37e --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/applications/video/lightworks/default.nix @@ -0,0 +1,87 @@ +{ stdenv, fetchurl, dpkg, makeWrapper, buildFHSUserEnv +, gtk3, gdk-pixbuf, cairo, libjpeg_original, glib, gnome2, libGLU +, nvidia_cg_toolkit, zlib, openssl, portaudio +}: +let + fullPath = stdenv.lib.makeLibraryPath [ + stdenv.cc.cc + gtk3 + gdk-pixbuf + cairo + libjpeg_original + glib + gnome2.pango + libGLU + nvidia_cg_toolkit + zlib + openssl + portaudio + ]; + + lightworks = stdenv.mkDerivation rec { + version = "14.0.0"; + pname = "lightworks"; + + src = + if stdenv.hostPlatform.system == "x86_64-linux" then + fetchurl { + url = "http://downloads.lwks.com/v14/lwks-14.0.0-amd64.deb"; + sha256 = "66eb9f9678d979db76199f1c99a71df0ddc017bb47dfda976b508849ab305033"; + } + else throw "${pname}-${version} is not supported on ${stdenv.hostPlatform.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 'urn:fontconfig: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; + }; + +# Lightworks expects some files in /usr/share/lightworks +in buildFHSUserEnv { + name = lightworks.name; + + targetPkgs = pkgs: [ + lightworks + ]; + + runScript = "lightworks"; + + 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" ]; + }; +} |