diff --git a/pkgs/by-name/fa/fancy-cat/0001-changes.patch b/pkgs/by-name/fa/fancy-cat/0001-changes.patch new file mode 100644 index 000000000000..87bfc8e149d7 --- /dev/null +++ b/pkgs/by-name/fa/fancy-cat/0001-changes.patch @@ -0,0 +1,22 @@ +diff --git a/build.zig b/build.zig +index 5a16b8a..3c36c20 100755 +--- a/build.zig ++++ b/build.zig +@@ -5,7 +5,7 @@ fn addMupdfStatic(exe: *std.Build.Step.Compile, b: *std.Build, prefix: []const u + exe.addLibraryPath(.{ .cwd_relative = b.fmt("{s}/lib", .{prefix}) }); + + exe.addObjectFile(.{ .cwd_relative = b.fmt("{s}/lib/libmupdf.a", .{prefix}) }); +- exe.addObjectFile(.{ .cwd_relative = b.fmt("{s}/lib/libmupdf-third.a", .{prefix}) }); ++ exe.addObjectFile(.{ .cwd_relative = b.fmt("{s}/lib/libmupdf.a", .{prefix}) }); + + exe.linkLibC(); + } +@@ -22,7 +22,7 @@ fn addMupdfDynamic(exe: *std.Build.Step.Compile, target: std.Target) void { + exe.addLibraryPath(.{ .cwd_relative = "/home/linuxbrew/.linuxbrew/lib" }); + + const linux_libs = [_][]const u8{ +- "mupdf-third", "harfbuzz", ++ "mupdf", "harfbuzz", + "freetype", "jbig2dec", + "jpeg", "openjp2", + "gumbo", "mujs", diff --git a/pkgs/by-name/fa/fancy-cat/build.zig.zon.nix b/pkgs/by-name/fa/fancy-cat/build.zig.zon.nix new file mode 100644 index 000000000000..0a1c36bb8b96 --- /dev/null +++ b/pkgs/by-name/fa/fancy-cat/build.zig.zon.nix @@ -0,0 +1,44 @@ +# generated by zon2nix (https://github.com/nix-community/zon2nix) + +{ + linkFarm, + fetchzip, +}: + +linkFarm "zig-packages" [ + { + name = "fastb64z-1.0.0-AAAAAPufAAC1oOmqjUybDgnEHsOlgJKIjnUWwFy3i3TJ"; + path = fetchzip { + url = "https://github.com/freref/fastb64z/archive/fa3f34a4528609a8778124641b080e90d93c357a.tar.gz"; + hash = "sha256-yz1XRRsX0Uh7lmPBKSkzDJIxValM5VvbI5avpa530nE="; + }; + } + { + name = "fzwatch-0.1.0-AAAAAFwxAACmGB7IN0835JkUIEuY_0zDJr_KGkZZQ2SI"; + path = fetchzip { + url = "https://github.com/freref/fzwatch/archive/6d5b49ed5a8ee3ed08f0e80b8f340cc3c8c8ac6e.tar.gz"; + hash = "sha256-rBbCdwTaq0DVBiUMzq2q72jgtaTIdjqivMI8dq+BaPM="; + }; + } + { + name = "vaxis-0.1.0-BWNV_K3yCACrTy3A5cbZElLyICx5a2O2EzPxmgVRcbKJ"; + path = fetchzip { + url = "https://github.com/freref/libvaxis/archive/6a37605dde55898dcca4769dd3eb1e333959c209.tar.gz"; + hash = "sha256-5DW2V2bVsHtSw7UMGvJ+P0FpXIf5kTNjrq2SMqU6FIk="; + }; + } + { + name = "zg-0.13.4-AAAAAGiZ7QLz4pvECFa_wG4O4TP4FLABHHbemH2KakWM"; + path = fetchzip { + url = "https://codeberg.org/atman/zg/archive/4a002763419a34d61dcbb1f415821b83b9bf8ddc.tar.gz"; + hash = "sha256-fo3l6cjkrr/godElTGnQzalBsasN7J73IDIRmw7v1gA="; + }; + } + { + name = "zigimg-0.1.0-lly-O-NTEABwkjg9_WM4uLQr_TtL-7jp375PsZJyugGN"; + path = fetchzip { + url = "https://github.com/TUSF/zigimg/archive/5102e09be233d372e9e05f4cb2ffbefba30bc1c0.tar.gz"; + hash = "sha256-0HYK5A8Jlx1WD1hdU07r+m2AXl6UuazFiZd7P3uh/wY="; + }; + } +] diff --git a/pkgs/by-name/fa/fancy-cat/package.nix b/pkgs/by-name/fa/fancy-cat/package.nix new file mode 100644 index 000000000000..fe02dca67c4e --- /dev/null +++ b/pkgs/by-name/fa/fancy-cat/package.nix @@ -0,0 +1,60 @@ +{ + callPackage, + fetchFromGitHub, + freetype, + gumbo, + harfbuzz, + jbig2dec, + lib, + libjpeg, + libz, + mujs, + mupdf, + openjpeg, + stdenv, + zig, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "fancy-cat"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "freref"; + repo = "fancy-cat"; + tag = "v${finalAttrs.version}"; + hash = "sha256-ziHtPfK9GOxKF800kk+kh12Fwh91xbjDYx9wv2pLZWI="; + }; + + patches = [ ./0001-changes.patch ]; + + nativeBuildInputs = [ + zig.hook + ]; + + zigBuildFlags = [ "--release=fast" ]; + + buildInputs = [ + mupdf + harfbuzz + freetype + jbig2dec + libjpeg + openjpeg + gumbo + mujs + libz + ]; + + postPatch = '' + ln -s ${callPackage ./build.zig.zon.nix { }} $ZIG_GLOBAL_CACHE_DIR/p + ''; + + meta = { + description = "PDF viewer for terminals using the Kitty image protocol"; + homepage = "https://github.com/freref/fancy-cat"; + license = lib.licenses.agpl3Plus; + maintainers = with lib.maintainers; [ ciflire ]; + mainProgram = "fancy-cat"; + inherit (zig.meta) platforms; + }; +})