nixpkgs/pkgs/by-name/ss/sshlatex/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

40 lines
1.3 KiB
Nix

{ lib, stdenv, fetchFromGitHub, inotify-tools, openssh, perl, gnutar, bash, makeWrapper }:
stdenv.mkDerivation rec {
pname = "sshlatex";
version = "0.8";
src = fetchFromGitHub {
owner = "iblech";
repo = "sshlatex";
rev = version;
sha256 = "0kaah8is74zba9373xccmsxmnnn6kh0isr4qpg21x3qhdzhlxl7q";
};
nativeBuildInputs = [ makeWrapper ];
installPhase = let
binPath = 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 lib; {
description = "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 = lib.licenses.gpl3Plus; # actually dual-licensed gpl3Plus | lppl13cplus
platforms = lib.platforms.all;
maintainers = [ maintainers.iblech ];
mainProgram = "sshlatex";
};
}