Skip to main content

A Sphinx extension for generating Ubuntu image download lists.

Project description

sphinx-ubuntu-images

sphinx-ubuntu-images is a Sphinx extension that provides a custom directive to generate bulleted download lists of supported Ubuntu distro images for specific release ranges, suffixes, image-types, and architectures.

Basic usage

To generate a list of Ubuntu images, add the ubuntu-images directive to your document:

.. ubuntu-images::

This will generate a bulleted list of all supported Ubuntu images with download links.

Filtering options

The directive supports various filtering options:

Filter by release

.. ubuntu-images::
   :releases: jammy-

Examples of valid release values:

  • jammy - Just the 22.04 release
  • jammy, noble - Just the 22.04 and 24.04 releases
  • focal-noble - All releases from 20.04 to 24.04
  • jammy- - All releases from 22.04 onwards
  • -noble - All releases up to 24.04

Filter by architecture

.. ubuntu-images::
   :archs: armhf, arm64

Filter by image type

.. ubuntu-images::
   :image-types: preinstalled-server

Filter by suffix

.. ubuntu-images::
   :suffix: +raspi

LTS releases only

.. ubuntu-images::
   :lts-only:

Handle empty results

.. ubuntu-images::
   :empty: No images available at this time

Complete examples

All supported raspi images from jammy onwards:

.. ubuntu-images::
   :releases: jammy-
   :suffix: +raspi

All supported LTS armhf and arm64 images:

.. ubuntu-images::
   :archs: armhf, arm64
   :lts-only:

Project setup

sphinx-ubuntu-images can be installed with:

pip install sphinx-ubuntu-images

After installation, update your Sphinx's conf.py file to include sphinx-ubuntu-images as one of its extensions:

extensions = [
    "sphinx_ubuntu_images"
]

Directive Options Reference

The ubuntu-images directive supports the following options:

  • :releases: releases (list of ranges) - A comma or space-separated list of partial dash-delimited release ranges (as release codenames). If unspecified, all releases will be included.

  • :lts-only: (no value) - If specified, only LTS releases will be included in the output. Interim releases are excluded.

  • :image-types: image types (list of strings) - Filter images by their "type". This is the string after the release version, and before the architecture. The list may be comma or space separated. If unspecified, all image types are included.

  • :archs: architectures (list of strings) - Filter images by their architecture. The list may be comma or space separated. If unspecified, all architectures are included.

  • :suffix: image +suffix (string) - Filter images by their (plus-prefixed) suffix. If unspecified, any suffix (including images with no suffix) will be included. If specified but blank, only images with no suffix will be included.

  • :matches: regular expression (string) - Filter images to those with filenames matching the specified regular expression. Use of this filter is discouraged; try using other filters first.

  • :empty: string - If no images match the specified filters, output the given string instead of reporting an error and failing the build. The string may be blank for no output.

Advanced Usage

Regular Expression Filtering

For complex filtering requirements, you can use regular expressions:

.. ubuntu-images::
   :matches: .*server.*arm64.*
   :empty: No ARM64 server images found

Combining Multiple Filters

You can combine multiple filters for precise control:

.. ubuntu-images::
   :releases: focal-jammy
   :archs: arm64
   :image-types: preinstalled-server, live-server
   :suffix: +raspi
   :empty: No Raspberry Pi images found for the specified criteria

Community and support

You can report any issues or bugs on the project's GitHub repository.

sphinx-ubuntu-images is covered by the Ubuntu Code of Conduct.

License and copyright

sphinx-ubuntu-images is released under the GPL-3.0 license.

© 2025 Canonical Ltd.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sphinx_ubuntu_images-0.0.1.tar.gz (83.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sphinx_ubuntu_images-0.0.1-py3-none-any.whl (27.1 kB view details)

Uploaded Python 3

File details

Details for the file sphinx_ubuntu_images-0.0.1.tar.gz.

File metadata

  • Download URL: sphinx_ubuntu_images-0.0.1.tar.gz
  • Upload date:
  • Size: 83.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sphinx_ubuntu_images-0.0.1.tar.gz
Algorithm Hash digest
SHA256 8bff536e0b510b0131605a762e27193b00c1abc1387ef72eecd5a5645664978f
MD5 a361af180b5f9c8e46a7be476805a3c8
BLAKE2b-256 7e3b8606cda484f4870f2373e9d9e415a1f9acb969e811bd3197d34307e11ccd

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_ubuntu_images-0.0.1.tar.gz:

Publisher: release-publish.yaml on canonical/sphinx-ubuntu-images

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sphinx_ubuntu_images-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for sphinx_ubuntu_images-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 48c058f79ead20e745dbd7dd85bb9bd992f3be7edfa36c5d393c7c8d6a7138d4
MD5 541d13acc75ec5f3040d906f63fb0c19
BLAKE2b-256 3ed8ce3e64e4f0d952f4f5a287fe7c6c03f53b5de686ad4002202656d29da67b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_ubuntu_images-0.0.1-py3-none-any.whl:

Publisher: release-publish.yaml on canonical/sphinx-ubuntu-images

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page