[smcv: Rebase on latest version, resolve conflicts] Resolves: #404 Co-authored-by: Simon McVittie <smcv@debian.org>