diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index ad570dbca48e..9dc01108e657 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,11 +1,19 @@ -{ stdenv, lib, fetchurl, dpkg, makeDesktopItem, copyDesktopItems -, autoPatchelfHook, makeWrapper, sane-backends, xorg, jdk11, gtk2, gtk3 }: +{ stdenv +, lib +, fetchurl +, dpkg +, makeDesktopItem +, copyDesktopItems +, autoPatchelfHook +, sane-backends +, jdk11 +}: let year = "2021"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; - autoPatchelfIgnoreMissingDeps = true; + autoPatchelfIgnoreMissingDeps = false; strictDeps = true; src = fetchurl { @@ -15,15 +23,15 @@ in stdenv.mkDerivation rec { sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; - buildInputs = - [ xorg.libXrandr xorg.libXtst sane-backends xorg.libXxf86vm gtk2 gtk3 ]; + buildInputs = [ + sane-backends + jdk11 + ]; nativeBuildInputs = [ autoPatchelfHook dpkg copyDesktopItems - jdk11 # for unpacking .jar.pack files - makeWrapper ]; desktopItems = [ @@ -42,9 +50,12 @@ in stdenv.mkDerivation rec { ]; unpackPhase = "dpkg-deb -x $src ."; - dontConfigure = true; dontBuild = true; + postPatch = '' + substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}" + ''; + installPhase = '' runHook preInstall @@ -52,15 +63,10 @@ in stdenv.mkDerivation rec { mkdir -p $out/share mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ + rm -rf $out/share/${pname}${year}/jre ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} - #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. - for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do - jar_file=`echo "$pfile" | awk '{ print substr($0,1,length($0)-5) }'` - unpack200 -r "$pfile" "$jar_file" - done - runHook postInstall '';