diff --git a/pkgs/additional/koreader-from-src/default.nix b/pkgs/additional/koreader-from-src/default.nix index 14bf8984..8158edc0 100644 --- a/pkgs/additional/koreader-from-src/default.nix +++ b/pkgs/additional/koreader-from-src/default.nix @@ -123,7 +123,7 @@ let libk2pdfopt-src-ko = fetchFromGitHub { owner = "koreader"; repo = "libk2pdfopt"; - name = "libk2pdfopt"; + name = "libk2pdfopt"; # where to unpack this in `srcs` rev = "09f1e011a618c8ec06b4caa67079682119d2aaa7"; hash = "sha256-37sZ46dG6Z1Wk7NrhKAKl5j9r1bN6g01cd5Iyt/2coM="; }; @@ -131,11 +131,19 @@ let lodepng-src-ko = fetchFromGitHub { owner = "lvandeve"; repo = "lodepng"; - name = "lodepng"; + name = "lodepng"; # where to unpack this in `srcs` rev = "d398e0f10d152a5d17fa30463474dc9f56523f9c"; hash = "sha256-ApOHUgU6X1rHwyjAHA/0Nt+buDFqY2ttXEnEvdrRl3A="; }; + lunasvg-src-ko = fetchFromGitHub { + owner = "sammycage"; + repo = "lunasvg"; + name = "lunasvg"; # where to unpack this in `srcs` + rev = "59d6f6ba835c1b7c7a0f9d4ea540ec3981777885"; + hash = "sha256-gW2ikakS6Omz5upmy26nAo/jkGHYO2kjlB3UmKJBh1k="; + }; + nanosvg-headers-ko = symlinkJoin { # koreader's heavily-patched mupdf is dependent on a koreader-specific `stb_image_write` extension to nanosvg. # nanosvg is used as a header-only library, so just patch that extension straight into the src. @@ -328,6 +336,7 @@ let LIBWEBP_DIR="${lib.getDev libwebp}" \ LODEPNG_DIR="$NIX_BUILD_TOP/lodepng" \ LPEG_ROCK="${rockspecFor "lpeg"}" \ + LUNASVG_DIR="$NIX_BUILD_TOP/lunasvg" \ LUAJIT="${luaEnv}/bin/luajit" \ LUAJIT_JIT="${luaEnv}/share/lua/5.1/jit" \ LUAJIT_LIB="${lib.getLib luaEnv}/lib/libluajit-5.1.so" \ @@ -415,6 +424,7 @@ stdenv.mkDerivation rec { leptonica-src-ko libk2pdfopt-src-ko lodepng-src-ko + lunasvg-src-ko tesseract-src-ko ] ++ (lib.mapAttrsToList (name: src: fetchgit ( @@ -468,7 +478,7 @@ stdenv.mkDerivation rec { --replace-fail ' -rm ' ' # -rm' # make some sources writable (only the `sourceRoot` is writable by default) - chmod -R u+w "$NIX_BUILD_TOP"/{fbink,kobo-usbms,leptonica,libk2pdfopt,lodepng,tesseract} + chmod -R u+w "$NIX_BUILD_TOP"/{fbink,kobo-usbms,leptonica,libk2pdfopt,lodepng,lunasvg,tesseract} # lots of places in Makefile.third (incorrectly) assume lib paths are relative to CURDIR, # so link /nix into CURDIR to allow them to work anyway @@ -524,7 +534,7 @@ stdenv.mkDerivation rec { skip_download() { # sed -i 's/DOWNLOAD_COMMAND .*/DOWNLOAD_COMMAND ""/' "base/thirdparty/$1/CMakeLists.txt" - sed -i "s:DOWNLOAD_COMMAND .*:DOWNLOAD_COMMAND rm -fd $1 \\&\\& ln -s $NIX_BUILD_TOP/$1 .:" "base/thirdparty/$1/CMakeLists.txt" + sed -i "s:DOWNLOAD_COMMAND .*:DOWNLOAD_COMMAND rm -fd $1 $1-build \\&\\& ln -s $NIX_BUILD_TOP/$1 $1 \\&\\& ln -s $NIX_BUILD_TOP/$1 $1-build :" "base/thirdparty/$1/CMakeLists.txt" } ${builtins.concatStringsSep "\n" ( @@ -537,6 +547,7 @@ stdenv.mkDerivation rec { skip_download kobo-usbms skip_download libk2pdfopt skip_download lodepng + skip_download lunasvg # outDir should match OUTPUT_DIR in koreader-base outDir="$NIX_BUILD_TOP/koreader/base/build/${stdenv.hostPlatform.config}" diff --git a/pkgs/additional/koreader-from-src/sources.nix b/pkgs/additional/koreader-from-src/sources.nix index 48d0bf57..4238466e 100644 --- a/pkgs/additional/koreader-from-src/sources.nix +++ b/pkgs/additional/koreader-from-src/sources.nix @@ -229,12 +229,12 @@ in # source.hash = "sha256-wb7ykJsndoq0DazHpfXieUcBBptowYqD/eTTN/EK/6g="; # # package: not in nixpkgs # }; - lunasvg = { - source.url = "https://github.com/sammycage/lunasvg.git"; - source.rev = "59d6f6ba835c1b7c7a0f9d4ea540ec3981777885"; - source.hash = "sha256-gW2ikakS6Omz5upmy26nAo/jkGHYO2kjlB3UmKJBh1k="; - # package: not in nixpkgs - }; + # lunasvg = { + # source.url = "https://github.com/sammycage/lunasvg.git"; + # source.rev = "59d6f6ba835c1b7c7a0f9d4ea540ec3981777885"; + # source.hash = "sha256-gW2ikakS6Omz5upmy26nAo/jkGHYO2kjlB3UmKJBh1k="; + # # package: not in nixpkgs + # }; minizip = { source.url = "https://github.com/nmoinvaz/minizip"; source.rev = "0b46a2b4ca317b80bc53594688883f7188ac4d08";