Skip to content

Commit

Permalink
dev-tex/rubber: 1.6.4 + EAPI 8 + PEP 517 + sync 9999
Browse files Browse the repository at this point in the history
Closes: https://bugs.gentoo.org/909975
Closes: https://bugs.gentoo.org/922804
Signed-off-by: Sebastian Pipping <[email protected]>
  • Loading branch information
hartwork committed Apr 10, 2024
1 parent 8aefed4 commit 3f10a00
Show file tree
Hide file tree
Showing 3 changed files with 125 additions and 10 deletions.
1 change: 1 addition & 0 deletions dev-tex/rubber/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
DIST rubber-1.5.1.tar.gz 111812 BLAKE2B 4d08527689d669e3ac8dd6e9050fc09766bfb46c53d9923ce10efc0aaf8a62a962cb2f1c27a0e7a19a9be96710edba923d93589d816aa22305eec33fd08aa08c SHA512 ba22eeddc24b4f9abf0bf087604a4261add648877ec558b766555de09538cd20c21c8cfd9731c1421540bb2479501dd6ed066346d250c6bc981529e31efacc40
DIST rubber-1.6.0.tar.bz2 98055 BLAKE2B e3355a53f811e972b68a918393023a16c11a84035c0ea76b560df25db2d9c20f2a7c9d0d4fc3b0395c6baab5dc785840fa18a76aa0e3f480cf2c14668d61b083 SHA512 68674c27fa7c6eb2c8ec60c0a961fd2dd07822fe5ba50682e863a7dbe7d1e0ce8ebffce84a52b72a254cb9c8d446a33005715b81e43dd6266e2c247f12ebb1e6
DIST rubber-1.6.4.tar.bz2 100227 BLAKE2B 5a467f5a2a4709e7faffef1308e644900f02ca51e4fff635e7a88bb237788e60257e0e8e82ed9acac66db46f0a1e8aed1296703fefc8e1fb6e28cd38334b7d14 SHA512 dbb3896c165d63cfae8421929d0d796002fb3abcfc2ccb3fe70c4c98acc54ed48be1ad469158436dabd973bf37355c62c096ebd47c0efa7dbe58137a0a895527
111 changes: 111 additions & 0 deletions dev-tex/rubber/rubber-1.6.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_PEP517=hatchling

inherit distutils-r1

if [[ ${PV} == "9999" ]] || [[ -n "${EGIT_COMMIT_ID}" ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/latex-rubber/${PN}.git"
else
# NOTE: Cannot be "PYPI_PN=latex-rubber" + "inherit pypi" due to missing tests
SRC_URI="https://gitlab.com/latex-rubber/${PN}/-/archive/${PV}/${P}.tar.bz2"
KEYWORDS="~amd64 ~ppc ~riscv ~x86"
fi

DESCRIPTION="A LaTeX wrapper for automatically building documents"
HOMEPAGE="https://gitlab.com/latex-rubber/rubber"

LICENSE="GPL-3+"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"

RDEPEND="virtual/latex-base"

# Test dependencies:
# - app-text/texlive-core for rubber's 'cweave' test
# - dev-lang/R for rubber's 'knitr' test (requires knitr R library, currently disabled)
# - dev-texlive/texlive-latexextra for rubber's 'combine' test (currently disabled)
BDEPEND="
${RDEPEND}
virtual/texi2dvi
test? (
app-text/ghostscript-gpl
app-text/texlive-core
dev-tex/biber
dev-tex/biblatex
dev-tex/glossaries
dev-tex/latex-beamer
$(python_gen_cond_dep 'dev-tex/pythontex[${PYTHON_USEDEP}]')
dev-texlive/texlive-latexextra
dev-texlive/texlive-pstricks
media-gfx/asymptote
)
"

pkg_setup() {
# https://bugs.gentoo.org/727996
export VARTEXFONTS="${T}"/fonts
}

python_test() {
cd tests || die

# Disable the broken 'combine' test as it uses the 'combine' as a
# latex package when it is only a document class (probably only in
# newer versions of combine). Also note that this tests works
# under debian 'buster'. TODO: Look into potential modifications
# done by debian.
touch combine/disable || die

# This test does not work under Gentoo nor Debian 'buster'.
# TODO: Investigate why it does not work.
touch cweb-latex/disable || die

# TODO: Investigate why the following are failing.
touch fig2dev-dvi/disable || die
touch fig2dev-path/disable || die
touch fig2dev-path-inplace/disable || die
touch fig2dev-path-into/disable || die
touch graphicx-dotted-files/disable || die
touch hooks-input-file/disable || die
touch knitr/disable || die

# Even tough metapost is available, those tests fail on Gentoo
# (while they succeed on Debian 'buster').
# TODO: Determine why.
# ERROR:mpost:I can't read MetaPost's log file, this is wrong.
touch metapost/disable || die
# expected error message not reported by Rubber
touch metapost-error/disable || die
# ERROR:mpost:I can't read MetaPost's log file, this is wrong.
touch metapost-input/disable || die

./run.sh * || die "Tests failed with ${EPYTHON}"
}

python_install() {
local my_install_args=(
--mandir="${EPREFIX}/usr/share/man"
--infodir="${EPREFIX}/usr/share/info"
--docdir="${EPREFIX}/usr/share/doc/${PF}"
)

distutils-r1_python_install "${my_install_args[@]}"
}

src_install() {
distutils-r1_src_install

# Fix file misplacements
dodir /usr/share/man/fr
mv "${D}"/usr/share/{doc/man-fr,man/fr/man1} || die
mv "${D}"/usr/share/{doc/man-en,man/man1} || die
dodir /usr/share/doc/${P}
mv "${D}"/usr/share/doc/{rubber.*,${P}/} || die
}
23 changes: 13 additions & 10 deletions dev-tex/rubber/rubber-9999.ebuild
Original file line number Diff line number Diff line change
@@ -1,21 +1,20 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7
EAPI=8

PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_SETUPTOOLS="no"
DISTUTILS_USE_PEP517=hatchling

inherit distutils-r1

if [[ ${PV} == "9999" ]] || [[ -n "${EGIT_COMMIT_ID}" ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/latex-rubber/${PN}.git"
else
UPSTREAM_PV=$(ver_rs 3 -)
SRC_URI="https://gitlab.com/latex-rubber/${PN}/-/archive/${UPSTREAM_PV}/${PN}-${UPSTREAM_PV}.tar.bz2"
S="${WORKDIR}/${PN}-${UPSTREAM_PV}"
KEYWORDS="~amd64 ~ppc ~x86"
# NOTE: Cannot be "PYPI_PN=latex-rubber" + "inherit pypi" due to missing tests
SRC_URI="https://gitlab.com/latex-rubber/${PN}/-/archive/${PV}/${P}.tar.bz2"
KEYWORDS="~amd64 ~ppc ~riscv ~x86"
fi

DESCRIPTION="A LaTeX wrapper for automatically building documents"
Expand Down Expand Up @@ -101,8 +100,12 @@ python_install() {
}

src_install() {
insinto /usr/share/zsh/site-functions
newins misc/zsh-completion _rubber

distutils-r1_src_install

# Fix file misplacements
dodir /usr/share/man/fr
mv "${D}"/usr/share/{doc/man-fr,man/fr/man1} || die
mv "${D}"/usr/share/{doc/man-en,man/man1} || die
dodir /usr/share/doc/${P}
mv "${D}"/usr/share/doc/{rubber.*,${P}/} || die
}

0 comments on commit 3f10a00

Please sign in to comment.