Files
nixpkgs/pkgs/by-name/ru/rubber/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

68 lines
1.5 KiB
Nix

{
lib,
stdenv,
fetchFromGitLab,
python3Packages,
texinfo,
}:
let
pypkgs = python3Packages;
in
pypkgs.buildPythonApplication rec {
pname = "rubber";
version = "1.6.6";
pyproject = true;
src = fetchFromGitLab {
owner = "latex-rubber";
repo = "rubber";
rev = version;
hash = "sha256-C26PN3jyV6qwSjgPem54bykZrpKj+n8iHYYUyR+8dgI=";
};
postPatch = ''
sed -i -e '/texi2dvi/d' hatch_build.py
substituteInPlace tests/run.sh \
--replace-fail /var/tmp /tmp
'';
nativeBuildInputs = [
pypkgs.hatchling
texinfo
];
checkPhase = ''
runHook preCheck
pushd tests >/dev/null
${stdenv.shell} run.sh
popd >/dev/null
runHook postCheck
'';
meta = with lib; {
description = "Wrapper for LaTeX and friends";
longDescription = ''
Rubber is a program whose purpose is to handle all tasks related
to the compilation of LaTeX documents. This includes compiling
the document itself, of course, enough times so that all
references are defined, and running BibTeX to manage
bibliographic references. Automatic execution of dvips to
produce PostScript documents is also included, as well as usage
of pdfLaTeX to produce PDF documents.
'';
license = licenses.gpl2Plus;
homepage = "https://gitlab.com/latex-rubber/rubber";
maintainers = with maintainers; [
ttuegel
peterhoeg
];
platforms = platforms.unix;
mainProgram = "rubber";
};
}