diff --git a/lib/maintainers.nix b/lib/maintainers.nix index b71b5d7aa544..5a9a9428c4e1 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -268,6 +268,7 @@ htr = "Hugo Tavares Reis "; iand675 = "Ian Duncan "; ianwookim = "Ian-Woo Kim "; + iblech = "Ingo Blechschmidt "; igsha = "Igor Sharonov "; ikervagyok = "Balázs Lengyel "; infinisil = "Silvan Mosberger "; diff --git a/pkgs/tools/typesetting/sshlatex/default.nix b/pkgs/tools/typesetting/sshlatex/default.nix new file mode 100644 index 000000000000..bfc1a8eb162e --- /dev/null +++ b/pkgs/tools/typesetting/sshlatex/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchFromGitHub, inotify-tools, openssh, perl, gnutar, bash, makeWrapper }: + +stdenv.mkDerivation rec { + name = "sshlatex-${version}"; + version = "0.7"; + + src = fetchFromGitHub { + owner = "iblech"; + repo = "sshlatex"; + rev = "${version}"; + sha256 = "02h81i8n3skg9jnlfrisyg5bhqicrn6svq64kp20f70p64s3d7ix"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = let + binPath = stdenv.lib.makeBinPath [ openssh perl gnutar bash inotify-tools ]; + in '' + mkdir -p $out/bin + cp sshlatex $out/bin + wrapProgram $out/bin/sshlatex --prefix PATH : "${binPath}" + ''; + + meta = with stdenv.lib; { + description = "A collection of hacks to efficiently run LaTeX via ssh"; + longDescription = '' + sshlatex is a tool which uploads LaTeX source files to a remote, runs + LaTeX there, and streams the resulting PDF file to the local host. + Because sshlatex prestarts LaTeX with the previous run's preamble, + thereby preloading the required LaTeX packages, it is also useful in a + purely local setting. + ''; + homepage = https://github.com/iblech/sshlatex; + license = stdenv.lib.licenses.gpl3Plus; # actually dual-licensed gpl3Plus | lppl13cplus + platforms = stdenv.lib.platforms.all; + maintainers = [ maintainers.iblech ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7ca4b33ecf36..be0f18ca1065 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4486,6 +4486,8 @@ with pkgs; sshfs-fuse = callPackage ../tools/filesystems/sshfs-fuse { }; + sshlatex = callPackage ../tools/typesetting/sshlatex { }; + sshuttle = callPackage ../tools/security/sshuttle { }; ssldump = callPackage ../tools/networking/ssldump { };