From fc497efb780802d2df568f0591674755645519a3 Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Sun, 7 Aug 2022 10:41:04 +0800 Subject: [PATCH] sioyek: unbreak on darwin --- pkgs/applications/misc/sioyek/default.nix | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/sioyek/default.nix b/pkgs/applications/misc/sioyek/default.nix index da66fd585ff2..49ca23ab3ded 100644 --- a/pkgs/applications/misc/sioyek/default.nix +++ b/pkgs/applications/misc/sioyek/default.nix @@ -2,6 +2,7 @@ , stdenv , installShellFiles , fetchFromGitHub +, freetype , gumbo , harfbuzz , jbig2dec @@ -25,17 +26,32 @@ stdenv.mkDerivation rec { sha256 = "sha256-F71JXgYaWAye+nlSrZvGjJ4ucvHTx3tPZHRC5QI4QiU="; }; - buildInputs = [ gumbo harfbuzz jbig2dec mupdf mujs openjpeg qt3d qtbase ]; + buildInputs = [ gumbo harfbuzz jbig2dec mupdf mujs openjpeg qt3d qtbase ] + ++ lib.optionals stdenv.isDarwin [ freetype ]; nativeBuildInputs = [ installShellFiles wrapQtAppsHook qmake ]; + qmakeFlags = lib.optionals stdenv.isDarwin [ "CONFIG+=non_portable" ]; + postPatch = '' + substituteInPlace pdf_viewer_build_config.pro \ + --replace "-lmupdf-threads" "-lgumbo -lharfbuzz -lfreetype -ljbig2dec -ljpeg -lopenjp2" substituteInPlace pdf_viewer/main.cpp \ --replace "/usr/share/sioyek" "$out/share" \ --replace "/etc/sioyek" "$out/etc" ''; - postInstall = '' + postInstall = if stdenv.isDarwin then '' + cp -r pdf_viewer/shaders sioyek.app/Contents/MacOS/shaders + cp pdf_viewer/prefs.config sioyek.app/Contents/MacOS/ + cp pdf_viewer/prefs_user.config sioyek.app/Contents/MacOS/ + cp pdf_viewer/keys.config sioyek.app/Contents/MacOS/ + cp pdf_viewer/keys_user.config sioyek.app/Contents/MacOS/ + cp tutorial.pdf sioyek.app/Contents/MacOS/ + + mkdir -p $out/Applications + cp -r sioyek.app $out/Applications + '' else '' install -Dm644 tutorial.pdf $out/share/tutorial.pdf cp -r pdf_viewer/shaders $out/share/ install -Dm644 -t $out/etc/ pdf_viewer/{keys,prefs}.config @@ -47,7 +63,7 @@ stdenv.mkDerivation rec { homepage = "https://sioyek.info/"; changelog = "https://github.com/ahrm/sioyek/releases"; license = licenses.gpl3Only; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; maintainers = [ maintainers.podocarp ]; }; }