From f7f1f47f9f1b57c4c9a43576ea8770ab2fac3dc5 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Sat, 15 Jan 2022 12:46:07 -0700 Subject: [PATCH 01/10] pdfstudioviewer: init at 2021.1.2 --- .../misc/pdfstudioviewer/default.nix | 91 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 93 insertions(+) create mode 100644 pkgs/applications/misc/pdfstudioviewer/default.nix diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix new file mode 100644 index 000000000000..c713a11e9a61 --- /dev/null +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -0,0 +1,91 @@ +{ stdenv, + lib, + makeWrapper, + fetchurl, + dpkg, + makeDesktopItem, + copyDesktopItems, + autoPatchelfHook, + gst_all_1, + sane-backends, + xorg, + gnome2, + alsa-lib, + libgccjit, + jdk11 + }: + +let + year = "2021"; + major = "1"; + minor = "2"; +in stdenv.mkDerivation rec { + pname = "pdfstudioviewer"; + version = "${year}.${major}.${minor}"; + autoPatchelfIgnoreMissingDeps = true; + + src = fetchurl { + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${year}_${major}_${minor}_linux64.deb"; + sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; + }; + + nativeBuildInputs = [ + gst_all_1.gst-libav + sane-backends + xorg.libXxf86vm + xorg.libXtst + gnome2.libgtkhtml + alsa-lib + libgccjit + autoPatchelfHook + makeWrapper + dpkg + copyDesktopItems + jdk11 # only for unpacking .jar.pack files + ]; + + desktopItems = [(makeDesktopItem { + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; + })]; + + unpackPhase = "dpkg-deb -x $src ."; + dontConfigure = true; + dontBuild = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + mkdir -p $out/share + mkdir -p $out/share/applications + mkdir -p $out/share/pixmaps + cp -r opt/${pname}${year} $out/share/ + ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ + makeWrapper $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 + ''; + + meta = with lib; { + homepage = "https://www.qoppa.com/pdfstudio/"; + description = "An easy to use, full-featured PDF editing software"; + license = licenses.unfree; + platforms = platforms.linux; + maintainers = [ maintainers.pwoelfel ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f6cb53114a47..8b148f470256 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24211,6 +24211,8 @@ with pkgs; pdfstudio = callPackage ../applications/misc/pdfstudio { }; + pdfstudioviewer = callPackage ../applications/misc/pdfstudioviewer { }; + aeolus = callPackage ../applications/audio/aeolus { }; aewan = callPackage ../applications/editors/aewan { }; From e14cabc709aa762a06dfbe4dbe922481ba8f7832 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:49:45 -0700 Subject: [PATCH 02/10] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index c713a11e9a61..f9f464f8bc91 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -21,7 +21,7 @@ let minor = "2"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; - version = "${year}.${major}.${minor}"; + version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; src = fetchurl { From 6114ed4314a6fe1965b2619bd06bbee7ba021215 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:50:06 -0700 Subject: [PATCH 03/10] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index f9f464f8bc91..d59685c0b403 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -25,7 +25,7 @@ in stdenv.mkDerivation rec { autoPatchelfIgnoreMissingDeps = true; src = fetchurl { - url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${year}_${major}_${minor}_linux64.deb"; + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${builtins.replaceStrings ["."] ["_"] version}_linux64.deb"; sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; From 05ad6b0a111a702cd044928057bd4b02ddecbc9d Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:50:18 -0700 Subject: [PATCH 04/10] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index d59685c0b403..c4dd518955e4 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -17,8 +17,6 @@ let year = "2021"; - major = "1"; - minor = "2"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; From 9ae0c9a972cdb79f1ce0a4916ed589f2e477ac84 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:11:32 -0700 Subject: [PATCH 05/10] Implemented reviewer suggestions --- .../misc/pdfstudioviewer/default.nix | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index c4dd518955e4..16549642dbec 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -43,16 +43,16 @@ in stdenv.mkDerivation rec { ]; desktopItems = [(makeDesktopItem { - name = "${pname}${year}"; - desktopName = "PDF Studio"; - genericName = "View and edit PDF files"; - exec = "${pname} %f"; - icon = "${pname}${year}"; - comment = "Views and edits PDF files"; - mimeType = "application/pdf"; - categories = "Office"; - type = "Application"; - terminal = false; + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; })]; unpackPhase = "dpkg-deb -x $src ."; @@ -68,7 +68,8 @@ in stdenv.mkDerivation rec { mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ - makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} + ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} + # makeWrapper $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 From cbee72024c30f9153f6e8db2c33d8f700d8b4722 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:16:17 -0700 Subject: [PATCH 06/10] file formatting --- .../misc/pdfstudioviewer/default.nix | 61 ++++++++++--------- 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 16549642dbec..87f99e7dc4f3 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,23 +1,24 @@ -{ stdenv, - lib, - makeWrapper, - fetchurl, - dpkg, - makeDesktopItem, - copyDesktopItems, - autoPatchelfHook, - gst_all_1, - sane-backends, - xorg, - gnome2, - alsa-lib, - libgccjit, - jdk11 - }: +{ stdenv +, lib +, makeWrapper +, fetchurl +, dpkg +, makeDesktopItem +, copyDesktopItems +, autoPatchelfHook +, gst_all_1 +, sane-backends +, xorg +, gnome2 +, alsa-lib +, libgccjit +, jdk11 +}: let year = "2021"; -in stdenv.mkDerivation rec { +in +stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; @@ -42,18 +43,20 @@ in stdenv.mkDerivation rec { jdk11 # only for unpacking .jar.pack files ]; - desktopItems = [(makeDesktopItem { - name = "${pname}${year}"; - desktopName = "PDF Studio"; - genericName = "View and edit PDF files"; - exec = "${pname} %f"; - icon = "${pname}${year}"; - comment = "Views and edits PDF files"; - mimeType = "application/pdf"; - categories = "Office"; - type = "Application"; - terminal = false; - })]; + desktopItems = [ + (makeDesktopItem { + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; + }) + ]; unpackPhase = "dpkg-deb -x $src ."; dontConfigure = true; From 61d6c0e234050451deb96e6ad441d3fe3b2dbc50 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:22:37 -0700 Subject: [PATCH 07/10] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Nikolay Korotkiy --- pkgs/applications/misc/pdfstudioviewer/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 87f99e7dc4f3..8915ccc7fff3 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -67,7 +67,6 @@ stdenv.mkDerivation rec { mkdir -p $out/bin mkdir -p $out/share - mkdir -p $out/share/applications mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ From 27fda8f14d8c3d2e4bd4c611dc3a552e1c4cfacb Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Wed, 19 Jan 2022 23:08:24 -0700 Subject: [PATCH 08/10] fixed buildInputs --- .../misc/pdfstudioviewer/default.nix | 45 ++++++------------- 1 file changed, 14 insertions(+), 31 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 8915ccc7fff3..fc588c5411a1 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,46 +1,29 @@ -{ stdenv -, lib -, makeWrapper -, fetchurl -, dpkg -, makeDesktopItem -, copyDesktopItems -, autoPatchelfHook -, gst_all_1 -, sane-backends -, xorg -, gnome2 -, alsa-lib -, libgccjit -, jdk11 -}: +{ stdenv, lib, fetchurl, dpkg, makeDesktopItem, copyDesktopItems +, autoPatchelfHook, makeWrapper, sane-backends, xorg, jdk11, gtk2, gtk3 }: -let - year = "2021"; -in -stdenv.mkDerivation rec { +let year = "2021"; +in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; + strictDeps = true; src = fetchurl { - url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${builtins.replaceStrings ["."] ["_"] version}_linux64.deb"; + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${ + builtins.replaceStrings [ "." ] [ "_" ] version + }_linux64.deb"; sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; + buildInputs = + [ xorg.libXrandr xorg.libXtst sane-backends xorg.libXxf86vm gtk2 gtk3 ]; + nativeBuildInputs = [ - gst_all_1.gst-libav - sane-backends - xorg.libXxf86vm - xorg.libXtst - gnome2.libgtkhtml - alsa-lib - libgccjit autoPatchelfHook - makeWrapper dpkg copyDesktopItems - jdk11 # only for unpacking .jar.pack files + jdk11 # for unpacking .jar.pack files + makeWrapper ]; desktopItems = [ @@ -71,7 +54,6 @@ stdenv.mkDerivation rec { cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} - # makeWrapper $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 @@ -87,6 +69,7 @@ stdenv.mkDerivation rec { description = "An easy to use, full-featured PDF editing software"; license = licenses.unfree; platforms = platforms.linux; + mainprogram = pname; maintainers = [ maintainers.pwoelfel ]; }; } From c625aff4d1a8257a10dbaf656adaa0723658d97c Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Wed, 19 Jan 2022 23:32:08 -0700 Subject: [PATCH 09/10] mainprogram -> mainProgram --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index fc588c5411a1..ad570dbca48e 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -69,7 +69,7 @@ in stdenv.mkDerivation rec { description = "An easy to use, full-featured PDF editing software"; license = licenses.unfree; platforms = platforms.linux; - mainprogram = pname; + mainProgram = pname; maintainers = [ maintainers.pwoelfel ]; }; } From a5b5ef0d37b9db663f6e845d93d15fe8e05e78bd Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Thu, 20 Jan 2022 00:18:43 -0700 Subject: [PATCH 10/10] Use jdk11 instead of packaged java to fix printing --- .../misc/pdfstudioviewer/default.nix | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) 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 '';