Skip to content

canonical/lxd-imagebuilder

Folders and files

NameName
Last commit message
Last commit date
Feb 24, 2025
Feb 14, 2025
Feb 6, 2025
Nov 29, 2024
Mar 4, 2024
Nov 29, 2024
Nov 21, 2024
Feb 10, 2025
Feb 25, 2025
Feb 13, 2025
Apr 24, 2023
Feb 15, 2018
Nov 5, 2024
Feb 10, 2025
Feb 14, 2024
Apr 12, 2024
Mar 28, 2024
Mar 28, 2024
Mar 28, 2024
Mar 28, 2024
Feb 13, 2025
Feb 13, 2025
Feb 25, 2025
Feb 25, 2025

Repository files navigation

LXD image builder

This repository provides lxd-imagebuilder for building system container and virtual machine images for LXD, and simplestream-maintainer for managing images on the simple streams server.

See https://canonical-lxd-imagebuilder.readthedocs-hosted.com/ for documentation.

Status

Type Service Status
CI GitHub Build Status

Installing from package

The lxd-imagebuilder and simplestream-maintainer tools are available in the lxd-imagebuilder snap from the Snap Store.

sudo snap install lxd-imagebuilder --classic

Installing from source

To compile from source, first install the Go programming language, and some other dependencies.

  • Debian-based:

    sudo apt update
    sudo apt install -y golang-go debootstrap rsync gpg squashfs-tools git make xdelta3
    
  • ArchLinux-based:

    sudo pacman -Syu
    sudo pacman -S go debootstrap rsync gnupg squashfs-tools git make xdelta3 --needed
    

NOTE: Go 1.23.6 or higher is required. If your package manager doesn't provide a recent enough version, get it from upstream.

Second, download the source code of the lxd-imagebuilder repository (this repository).

mkdir -p $HOME/go/src/github.com/canonical/
cd $HOME/go/src/github.com/canonical/
git clone https://github.com/canonical/lxd-imagebuilder

Third, enter the directory with the source code of lxd-imagebuilder and run make to compile the source code. This will generate the executable programs lxd-imagebuilder and simplestream-maintainer in $HOME/go/bin.

cd ./lxd-imagebuilder
make

You may also add the directory $HOME/go/bin/ to your $PATH so that you do not need to run the command with the full path.

How to use

See How to use lxd-imagebuilder for instructions.

Troubleshooting

See Troubleshoot lxd-imagebuilder.