Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

This branch contains the content and site generator of the website. Backend code for Try it part is located at


Fixes, new content and translations are greatly appreciated. Read our contributing guidelines for details.

Open Issues

Take a look at the open issues on Github, to see where you could help.

For example:

Generate & run a local copy

To generate & run a local copy of the website, follow the instructions below.


Install the following software (naming may depends on your distribution):

  • man2html-base
  • python3 (>= 3.3)
  • python3-bs4
  • python3-jinja2
  • python3-markdown (>= 3.3.4)
  • python3-pygments
  • pymdown-extensions

Clone the repo

git clone

Note: The folder downloads is quite big, so you can skip that folder by using git sparse-checkout & partial clones (The only exception is, when you work on the downloads page).

As a replacement for the missing downloads folder you need to create the following empty folders, before generating the website (otherwise the generator shows an error):


All steps for creating a sparse checkout

git clone --filter=blob:none --no-checkout
git sparse-checkout set --cone
echo -e '/*\n!downloads' >> .git/info/sparse-checkout
git checkout master
git pull
mkdir -p downloads/cgmanager/
mkdir -p downloads/distrobuilder/
mkdir -p downloads/lxc/
mkdir -p downloads/lxcfs/
mkdir -p downloads/lxd/

Generating the website


Launching the website

After generating the website(above), run these commands(Ubuntu-specific):

cd output
python3 -m http.server 8777

Now you can access the website in your browser by using your local IP address and port:

(Alternative) Launching within a container

Inside the container:

Install the dependencies, clone the repo and generate the website (same as above).

After generating the website, run these commands(Ubuntu-specific):

cd output
python3 -m http.server 8777

On the host:

You can now navigate to the site (in a browser of your choice) with the container's IP address, for example:

LXD documentation

Download the HTML of the LXD documentation from the latest workflow run at Look for an artifact with filename Unzip it into the local output folder:

mkdir -p
unzip -d

You must repeat this process after ./generate runs, because it cleans the output folder.

Man pages

Download the man pages from jenkins and unzip them into the respective folder. For LXC:

tar xvf manpages.tar.gz -C

Ensure that man2html is installed. ./generate calls this tool and injects the main menu on top.

To install man2html:

apt install man2html

Bug reports & Content requests

Bug reports, requests and ideas regarding the website can be filed at