diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4344773bd54..1bb79d0c44e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -9951,6 +9951,12 @@ fingerprint = "2CD2 B030 BD22 32EF DF5A 008A 3618 20A4 5DB4 1E9A"; }]; }; + podocarp = { + email = "xdjiaxd@gmail.com"; + github = "podocarp"; + githubId = 10473184; + name = "Jia Xiaodong"; + }; polendri = { email = "paul@ijj.li"; github = "polendri"; diff --git a/pkgs/applications/misc/sioyek/default.nix b/pkgs/applications/misc/sioyek/default.nix new file mode 100644 index 00000000000..7ffb24cb419 --- /dev/null +++ b/pkgs/applications/misc/sioyek/default.nix @@ -0,0 +1,56 @@ +{ lib +, stdenv +, installShellFiles +, fetchFromGitHub +, gumbo +, harfbuzz +, jbig2dec +, mupdf +, openjpeg +, qt3d +, qtbase +, qmake +, wrapQtAppsHook +}: + +stdenv.mkDerivation rec { + pname = "sioyek"; + version = "1.2.0"; + + src = fetchFromGitHub { + owner = "ahrm"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-G4iZi6xTJjWZN0T3lO0jPquxJ3p8Mc0ewmjJEKcGJ34="; + }; + + buildInputs = [ gumbo harfbuzz jbig2dec mupdf openjpeg qt3d qtbase ]; + + nativeBuildInputs = [ installShellFiles wrapQtAppsHook qmake ]; + + postPatch = '' + substituteInPlace pdf_viewer_build_config.pro \ + --replace "-lmupdf-threads" "-lfreetype -lgumbo -ljbig2dec -lopenjp2 -ljpeg" + substituteInPlace pdf_viewer/main.cpp \ + --replace "/usr/share/sioyek" "$out/share" \ + --replace "/etc/sioyek" "$out/etc" + ''; + + qmakeFlags = "DEFINES+=\"LINUX_STANDARD_PATHS\" pdf_viewer_build_config.pro"; + + postInstall = '' + 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 + installManPage resources/sioyek.1 + ''; + + meta = with lib; { + description = "Sioyek is a PDF viewer designed for reading research papers and technical books."; + homepage = "https://sioyek.info/"; + changelog = "https://github.com/ahrm/sioyek/releases"; + license = licenses.gpl3Only; + platforms = platforms.linux; + maintainers = [ maintainers.podocarp ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3e475ee6ece..f53c2e1a089 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -28979,6 +28979,8 @@ with pkgs; simple-scan = gnome.simple-scan; + sioyek = libsForQt5.callPackage ../applications/misc/sioyek { }; + siproxd = callPackage ../applications/networking/siproxd { }; sish = callPackage ../tools/networking/sish { };