Git LFS is a popular method to store large files like e.g. documentation assets in git repositories.
Building such documentation on a system without Git LFS will typically result in broken documentation.
sphinx_lfs_content is a minimalistic Sphinx extension that ensures that git-lfs is installed and otherwise installs it and fetches LFS content.
It is motivated by the lack of LFS support on readthedocs.org.
The extension can be installed from PyPI using pip:
python -m pip install sphinx_lfs_contentIf you use a requirements file to describe the dependencies of your documentation build, simply add sphinx_lfs_content to it.
Add the following lines to your conf.py:
# The list of enabled extensions
extensions = [
"sphinx_lfs_content",
]That's all. The extension will check whether the system has git-lfs and download a version
from the git-lfs GitHub page, verify its checksum
and checkout any LFS content.
Additionally, a configuration value lfs_content_post_commands is available. It accepts a list
of strings with commands that will be executed after the git-lfs checkout was performed.
This can be used to resolve chicken-egg situations with other setup code.
The extension is very likely to only work on Linux right now, as it does not properly select the git-lfs archive to download.