Description
The Problem
From looking at the docker image used by Readthedocs for building the documentation (https://github.com/readthedocs/readthedocs-docker-images/blob/master/Dockerfile) it seems like a bunch of requirements needed in order to run the OpenGL renderer are missing.
While we were able to find a workaround for ffmpeg (installing a python package which includes a prebuilt version of ffmpeg in its wheel), I am not so confident that we are able to do something similar here: installing system packages actually isn't supported by RTD.
This is a problem, as it means we won't be able to render our own video snippets for the documentation while building it as soon as we switch to OpenGL as the default renderer.
Potential Solutions
I've thought about some different ways forwards, but right now I'm not sure that any of these are really easily doable.
- Remove rendered videos from the documentation. (Not great, big oof.)
- Host our own version of RTD which runs with a modified docker image. (Requires some space where it can be hosted + the corresponding devops work.)
- Build a webservice able to render manim snippets, make RTD use that service instead of rendering the videos locally. (We need some space to host the service, and I feel that would be more complicated to setup than hosting RTD.)
- Variation: use a GH action to render examples, then deploy them to some static webserver. Let RTD simply link to there. (Probably difficult to get it right, but otherwise a more or less clean solution. Also needs hosting space.)
- Try to find a workaround that allows installing system packages in RTD. (And hope they won't mind.)
- Switch from RTD to GH pages, try to setup everything via actions. (Might be possible, but having multiple different documentation versions might be not possible or might prove to be very difficult.)
Further ideas and suggestions are more than welcome.
Metadata
Metadata
Assignees
Type
Projects
Status