diff --git a/package.json b/package.json
index 177c4dc..6e04e17 100644
--- a/package.json
+++ b/package.json
@@ -21,6 +21,7 @@
     "in-docker": "scripts/in-docker.sh",
     "docker:build": "yarn run in-docker yarn run build",
     "docker:install": "yarn run in-docker yarn install",
+    "debrepo": "scripts/mkrepo.sh",
     "clean": "rimraf webapp.asar dist packages deploys"
   },
   "dependencies": {
diff --git a/riot.im/conf_distributions b/riot.im/conf_distributions
new file mode 100644
index 0000000..b5824a9
--- /dev/null
+++ b/riot.im/conf_distributions
@@ -0,0 +1,74 @@
+Origin: riot.im
+Suite: oldoldstable
+Codename: jessie
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Suite: oldstable
+Codename: stretch
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Suite: stable
+Codename: buster
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Suite: testing
+Codename: bullseye
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Suite: unstable
+Codename: sid
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Codename: xenial
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Codename: bionic
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Codename: cosmic
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Codename: disco
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
+
+Origin: riot.im
+Codename: eoan
+Architectures: amd64 i386 source
+Components: main
+SignWith: D7B0B66941D01538
+Tracking: minimal
diff --git a/scripts/mkrepo.sh b/scripts/mkrepo.sh
new file mode 100755
index 0000000..599a126
--- /dev/null
+++ b/scripts/mkrepo.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+# Take the deb and bundle it into a apt repository
+if [[ $# -lt 1 ]]
+then
+    echo "Usage $0 <config dir>"
+    exit
+fi
+
+confdir=$1
+
+set -ex
+
+ver=`jq -r .version package.json`
+distdir=$PWD/dist
+confdir=$PWD/$confdir
+
+repodir=`mktemp -d -t repo`
+mkdir $repodir/conf
+cp $confdir/conf_distributions $repodir/conf/distributions
+
+pushd $repodir
+for i in `cat conf/distributions | grep Codename | cut -d ' ' -f 2`
+do
+    reprepro includedeb $i $distdir/riot-desktop_${ver}_amd64.deb
+done
+
+tar cvzf $distdir/riot-desktop_repo_$ver.tar.gz .
+
+popd
+
+rm -r $repodir