summaryrefslogtreecommitdiff
path: root/media-video/manimgl/manimgl-9999.ebuild
blob: 073aaba93bdb2d01adfc52c34631bbcb8706210b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

DOCS_BUILDER="sphinx"
DOCS_DIR="docs/source"
DOCS_DEPEND="
	dev-python/furo
	dev-python/jinja2-cli
	dev-python/sphinx-copybutton
"

DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{13..14} )

inherit distutils-r1 docs git-r3

DESCRIPTION="Animation engine for explanatory math videos"
HOMEPAGE="https://github.com/3b1b/manim https://pypi.org/project/manimgl/"

if [[ ${PV} == *9999* ]]; then
	EGIT_REPO_URI="https://github.com/3b1b/manim.git"
else
	SRC_URI="https://github.com/3b1b/manim/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
	S="${WORKDIR}/manim-${PV}"
	KEYWORDS="~amd64"
fi

LICENSE="MIT"
SLOT="0"

RDEPEND="
	dev-python/addict[${PYTHON_USEDEP}]
	dev-python/appdirs[${PYTHON_USEDEP}]
	dev-python/colour[${PYTHON_USEDEP}]
	dev-python/diskcache[${PYTHON_USEDEP}]
	>=dev-python/ipython-8.18.0[${PYTHON_USEDEP}]
	dev-python/isosurfaces[${PYTHON_USEDEP}]
	dev-python/fonttools[${PYTHON_USEDEP}]
	>=dev-python/ManimPango-0.6.0[${PYTHON_USEDEP}]
	dev-python/mapbox-earcut[${PYTHON_USEDEP}]
	dev-python/matplotlib[${PYTHON_USEDEP}]
	dev-python/moderngl[${PYTHON_USEDEP}]
	dev-python/moderngl-window[${PYTHON_USEDEP}]
	dev-python/numpy[${PYTHON_USEDEP}]
	dev-python/pillow[${PYTHON_USEDEP}]
	dev-python/pydub[${PYTHON_USEDEP}]
	dev-python/pygments[${PYTHON_USEDEP}]
	dev-python/pyopengl[${PYTHON_USEDEP}]
	dev-python/pyperclip[${PYTHON_USEDEP}]
	dev-python/pyyaml[${PYTHON_USEDEP}]
	dev-python/rich[${PYTHON_USEDEP}]
	dev-python/scipy[${PYTHON_USEDEP}]
	dev-python/screeninfo[${PYTHON_USEDEP}]
	dev-python/skia-pathops[${PYTHON_USEDEP}]
	>=dev-python/svgelements-1.8.1[${PYTHON_USEDEP}]
	dev-python/sympy[${PYTHON_USEDEP}]
	dev-python/tqdm[${PYTHON_USEDEP}]
	dev-python/validators[${PYTHON_USEDEP}]
	app-text/texlive[extra]
	media-video/ffmpeg
	virtual/opengl
	x11-libs/pango
"

DEPEND="${RDEPEND}"

python_install_all() {
	default
	if use doc; then
		docinto examples
		dodoc example_scenes.py
		dodoc docs/example.py
		docompress -x /usr/share/doc/${PF}/examples
	fi
}