Skip to content
Caleb Maclennan edited this page May 21, 2020 · 16 revisions
# setup vm
pacman -S lxd
usermod -a -G lxd caleb
systemctl enable --now lxd
lxd init

# map a host user to the home directory so we have GPG keys and a stable build dir
printf "lxd:$(id -u):$(id -u)\nroot:$(id -u):$(id -u)\n" | sudo tee /etc/subuid /etc/subgid
lxc launch images:ubuntu/focal sile-focal -c security.priviledged=true
lxc config device add sile-focal home disk source=$HOME path=/home/ubuntu
printf "uid $(id -u) 1000\ngid $(id -g) 1000" | lxc config set sile-focal raw.idmap -

# install build tools
lxc exec sile-focal -- apt-get install -y gpg bzr devscripts equivs

# enter vm
lxc exec sile-focal -- su ubuntu -l

# get & extract source of the thing you'll build
wget https://github.com/sile-typesetter/sile/releases/download/v0.10.4/sile-0.10.4.tar.bz2

# move to debian source name
mv sile-0.10.4.tar.bz2 sile_0.10.4.orig.tar.bz2

# extract and enter
tar xfvj sile_0.10.4.orig.tar.bz2
cd sile-0.10.4

# install all build deps
sudo mk-build-deps -i

# clone bzr repo of debian build
bzr branch --use-existing-dir lp:sile .

# update debian changelog with new entry
dch -i
bzr commit -m "Update to v0.10.4"
bzr push

# rebuild source package
debuild -S -sA

# updload artifacts
cd ..
dput ppa:sile-typesetter/sile sile_0.10.4-0sile1_source.changes
Clone this wiki locally