Mathias' Blog

Occasional musings and technical posts…

13 Aug 2021

LXD 4.0 LTS Properly Packaged for Debian bullseye

In celebration of tomorrow’s release of Debian bullseye, I have updated my packaging of the LXD 4.0 LTS release and published it to my personal apt repo. As I have previously written, the upstream developers no longer distribute pre-compiled versions of LXD in forms other than snaps, and LXD still hasn’t made it into Debian proper. I’ve cleaned up my packaging and am making the packages available from my personal repo for anyone to use.

The 30-second install:

wget -O /usr/share/keyrings/calenhad.gpg
echo "deb [signed-by=/usr/share/keyrings/calenhad.gpg] bullseye main" >> /etc/apt/sources.list
apt update
apt install lxd

A few things to be aware of:

  • The packaging works for me, but LXD is complex and it’s possible something may not work quite right. (If so, please let me know!)
  • The only init scripts I have included are for systemd.
  • When you install LXD, it pulls in the lxc package for some dependencies, but that package also sets up a lxc service. You’ll probably want to disable the lxc service and remove its default network bridge interface. I don’t know if there will actually be conflicts between lxc and LXD, but to be safe I’ve disabled lxc on my systems.
  • This packaging is ugly – it doesn’t fully follow Debian’s packaging guidelines and one day will be deprecated after LXD is properly included in Debian.