diff --git a/packaging/rules/debian/README.Debian b/packaging/rules/debian/README.Debian
index 52310f1084cf81bfeab332231c0fc0560657d0ba..33f73b696493177d4c45ecd6a20f547feca298f6 100644
--- a/packaging/rules/debian/README.Debian
+++ b/packaging/rules/debian/README.Debian
@@ -1,3 +1,30 @@
+# Differences and compatibility with official debian.org package
+
+This source package provides two binary packages ring-all and ring-daemon.
+It differs slightly from the official Debian package (the one from debian.org).
+
+ring-daemon: structurally identical to the Debian package, the only difference
+ potentially being the shipped version of Ring (the debian.org package is
+ usually older).
+
+ring-all: all-in-one package, ships both the Ring Daemon and the GNOME client.
+ This package is not available in the debian.org repositories (not needed in the
+ Debian case).
+
+ ring-all allows
+ - easy installation of Ring as a single package from ring.cx
+ - installation of release keys and ring.cx package repository as trusted peers
+   so Ring can be updated from ring.cx along with system updates
+
+ Why not two packages ring and ring-daemon instead of a single all package ?
+ -> One cannot register a repository in source.list.d and directly use it to
+    fetch the dependencies. That would require something like an apt update in
+    the maintscripts and we don't want that. So, it is not possible to have a
+    one-click-install with two packages.
+
+ ring-all conflicts with ring and ring-daemon since they are distributing the
+ same files.
+
 # Notes
 
 ## Importing a new version
diff --git a/packaging/rules/debian/control b/packaging/rules/debian/control
index 2f001e6c1b851ddb2e3a8e805d4d5ce217e17da6..f1278264b4b41d99f65463e2c8f178403a4452fa 100644
--- a/packaging/rules/debian/control
+++ b/packaging/rules/debian/control
@@ -61,19 +61,22 @@ Homepage: https://ring.cx
 Vcs-Git: https://anonscm.debian.org/git/pkg-voip/ring.git
 Vcs-Browser: https://anonscm.debian.org/cgit/pkg-voip/ring.git
 
-Package: ring
+Package: ring-all
 Architecture: any
 Depends: ${shlibs:Depends},
-         ${misc:Depends},
-         ring-daemon (=${binary:Version})
-Replaces: ring-gnome
-Conflicts: ring-gnome
-Description: Secure and distributed voice, video and chat platform - desktop client
+         ${misc:Depends}
+Replaces: ring,
+          ring-gnome,
+          ring-daemon
+Conflicts: ring,
+           ring-gnome,
+           ring-daemon
+Description: Secure and distributed voice, video and chat platform - all in one package
  Ring (ring.cx) is a secure and distributed voice, video and chat communication
  platform that requires no centralized server and leaves the power of privacy
  in the hands of the user.
  .
- This package contains the desktop client: gnome-ring.
+ This package contains the GNOME desktop client and dring, the Ring daemon.
 
 Package: ring-daemon
 Architecture: any
@@ -85,11 +88,3 @@ Description: Secure and distributed voice, video and chat platform - daemon
  in the hands of the user.
  .
  This package contains the Ring daemon: dring.
-
-Package: ring-gnome
-Depends: ring, ${misc:Depends}
-Architecture: all
-Priority: extra
-Section: oldlibs
-Description: transitional dummy package
- This is a transitional dummy package. It can safely be removed.
diff --git a/packaging/rules/debian/ring.lintian-overrides b/packaging/rules/debian/ring-all.lintian-overrides
similarity index 100%
rename from packaging/rules/debian/ring.lintian-overrides
rename to packaging/rules/debian/ring-all.lintian-overrides
diff --git a/packaging/rules/debian/ring.manpages b/packaging/rules/debian/ring-all.manpages
similarity index 66%
rename from packaging/rules/debian/ring.manpages
rename to packaging/rules/debian/ring-all.manpages
index d920cbc08a6b62c7e0f00998eb5f0eef0357f97d..87574cc4f9811456e1433a9d43e61e9dd72b8d95 100644
--- a/packaging/rules/debian/ring.manpages
+++ b/packaging/rules/debian/ring-all.manpages
@@ -1 +1,2 @@
 client-gnome/doc/gnome-ring.1
+daemon/dring.1
diff --git a/packaging/rules/debian/ring-all.postinst b/packaging/rules/debian/ring-all.postinst
new file mode 100755
index 0000000000000000000000000000000000000000..65e8aad8f37261e89a949916fcf5e28b592174f5
--- /dev/null
+++ b/packaging/rules/debian/ring-all.postinst
@@ -0,0 +1,171 @@
+#!/bin/sh
+set -e
+
+###############################################################################
+# RING PACKAGE POSTINST                                                       #
+#                                                                             #
+# Install Ring's package repository to the trusted sources and add Ring's     #
+# release key to trusted keyring.                                             #
+#                                                                             #
+# NOTE: We follow https://wiki.debian.org/DebianRepository/UseThirdParty      #
+###############################################################################
+
+
+###############################################################################
+# [1] Configuration                                                           #
+###############################################################################
+
+# All PPA/package repo urls are expected to start with this string, regardless
+# of the distribution or version. The end tag is automatically appended,
+# depending on the system the postinst script is run on. Examples:
+#
+# Ubuntu 18.04:
+# $RING_PPA = $RING_PPA_BASE/ubuntu_18.04/
+#
+# Debian 9:
+# $RING_PPA = $RING_PPA_BASE/debian_9
+#
+# To update the appended end tags, modify the switch in [2].
+RING_PPA_BASE="https://dl.ring.cx/ring-nightly"
+
+# Ring release key.
+RING_KEY_FINGERPRINT="A295D773307D25A33AE72F2F64CD5FA175348F84"
+RING_KEY="\
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+=vaci
+-----END PGP PUBLIC KEY BLOCK-----"
+
+# System paths and generated variables
+# In general: you will not need to modify these variables.
+# WARNING: When modifying the paths, keep in mind that the corresponding
+# postrm paths should be modified as well
+APT_FILE="/etc/apt/sources.list.d/ring-main.sources"
+APT_PREFS_FILE="/etc/apt/preferences.d/ring-main.pref"
+RING_KEY_FILE="/etc/apt/trusted.gpg.d/ring-main.gpg"
+UPDATE_MANAGER_PATH="/etc/update-manager/release-upgrades.d/"
+RING_UPDATE_MANAGER_ID="ring-main"
+
+RING_UPDATE_MANAGER_CFG="${RING_UPDATE_MANAGER_ID}.cfg"
+UPDATE_MANAGER_CFG_PATH="${UPDATE_MANAGER_PATH}/${RING_UPDATE_MANAGER_CFG}"
+
+
+###############################################################################
+# [2] Set package repo url depending on distribution and version              #
+###############################################################################
+
+CAN_ADD_DEB_SOURCE=true
+
+# Detect currently running system using /etc/os-release
+# Debian-based systems are supposed to provide /etc/os-release so if it's not
+# the case then we simply don't want to provide automatic updates
+if [ -f /etc/os-release ]; then
+    . /etc/os-release
+    # Set-up Ring PPA end tag
+    ENDTAG="${ID}_${VERSION_ID}"
+else
+    # Distribution is not supported. Don't provide automatic updates.
+    CAN_ADD_DEB_SOURCE=false
+fi
+
+
+###############################################################################
+# [3] Maintainer script main switch                                           #
+###############################################################################
+
+case "$1" in
+    configure)
+        if [ "$CAN_ADD_DEB_SOURCE" = "true" ]; then
+            RING_PPA="${RING_PPA_BASE}/${ENDTAG}"
+
+            # We first add the key to the trusted keyring.
+            cat > $RING_KEY_FILE <<EOF
+$RING_KEY
+EOF
+
+            # Add an entry for the package repository to the trusted package
+            # sources (DEB822 format)
+            cat > $APT_FILE <<EOF
+# This file makes sure that Ring is kept up-to-date
+# as part of regular system upgrades
+
+Types: deb
+URIs: $RING_PPA
+Suites: ring
+Architectures: i386 amd64
+Components: main
+Signed-By: $RING_KEY_FINGERPRINT
+EOF
+
+            # It is recommended to also restrict the range of the newly added
+            # source.
+            cat > $APT_PREFS_FILE <<EOF
+# forbid upgrading already installed packages from official repositories but
+# allow upgrades to be performed for the ring repository
+Package: *
+Pin: origin dl.ring.cx
+Pin-Priority: 100
+EOF
+
+            # Additionally, if update manager is installed we inform it about
+            # the repository so it doesn't get scrapped after system updates
+            if [ -d /etc/update-manager -a ! -f $UPDATE_MANAGER_CFG_PATH ]
+            then
+                mkdir -p $UPDATE_MANAGER_PATH
+                cat > $UPDATE_MANAGER_CFG_PATH <<EOF
+# Added by Ring to prevent disabling of Ring repository sources on
+# distribution release upgrade.
+[ThirdPartyMirrors]
+ring/${RING_UPDATE_MANAGER_ID}=${RING_PPA}
+EOF
+            fi
+        fi
+        ;;
+esac
+
+# exit with a zero status as everything went well, important for maintscripts
+exit 0
diff --git a/packaging/rules/debian/ring-all.postrm b/packaging/rules/debian/ring-all.postrm
new file mode 100755
index 0000000000000000000000000000000000000000..898840a247d0ceeb7e603b29df67e080ffb06c0e
--- /dev/null
+++ b/packaging/rules/debian/ring-all.postrm
@@ -0,0 +1,41 @@
+#!/bin/sh
+set -e
+
+###############################################################################
+# RING PACKAGE POSTRM                                                         #
+#                                                                             #
+# If we installed our key and source to trusted stores, remove them.          #
+#                                                                             #
+# NOTE: We follow https://wiki.debian.org/DebianRepository/UseThirdParty      #
+###############################################################################
+
+
+###############################################################################
+# [1] Configuration                                                           #
+###############################################################################
+
+# System paths and generated variables
+APT_FILE="/etc/apt/sources.list.d/ring-main.sources"
+APT_PREFS_FILE="/etc/apt/preferences.d/ring-main.pref"
+RING_KEY_FILE="/etc/apt/trusted.gpg.d/ring-main.gpg"
+UPDATE_MANAGER_PATH="/etc/update-manager/release-upgrades.d/"
+RING_UPDATE_MANAGER_ID="ring-main"
+
+RING_UPDATE_MANAGER_CFG="${RING_UPDATE_MANAGER_ID}.cfg"
+UPDATE_MANAGER_CFG_PATH="${UPDATE_MANAGER_PATH}/${RING_UPDATE_MANAGER_CFG}"
+
+
+###############################################################################
+# [2] Maintainer script main switch                                           #
+###############################################################################
+
+case "$1" in
+    purge)
+        rm -f "$APT_FILE"
+        rm -f "$APT_PREFS_FILE"
+        rm -f "$UPDATE_MANAGER_CFG_PATH"
+        rm -f "$RING_KEY_FILE"
+        ;;
+esac
+
+exit 0
diff --git a/packaging/rules/debian/ring.triggers b/packaging/rules/debian/ring-all.triggers
similarity index 100%
rename from packaging/rules/debian/ring.triggers
rename to packaging/rules/debian/ring-all.triggers
diff --git a/packaging/rules/debian/rules b/packaging/rules/debian/rules
index 5a69c84857b09a5f9b716606dda1297d43784814..65027e3c03452a2f6936847e8407ff4a64846516 100755
--- a/packaging/rules/debian/rules
+++ b/packaging/rules/debian/rules
@@ -12,6 +12,10 @@ ifeq ($(NO_CPUS),0)
 NO_CPUS=1
 endif
 
+# Binary package names
+RING_ALL_IN_ONE_PKG_NAME="ring-all"
+RING_DAEMON_PKG_NAME="ring-daemon"
+
 %:
 	dh $@
 
@@ -132,29 +136,36 @@ override_dh_clean:
 
 override_dh_auto_install:
 	#########################
-	## Ring Daemon install ##
+	## Ring daemon install ##
 	#########################
-	cd daemon && make DESTDIR=$(CURDIR)/debian/ring-daemon install
-	rm -rfv $(CURDIR)/debian/ring-daemon/usr/include
-	rm -rfv $(CURDIR)/debian/ring-daemon/usr/lib/*.a
-	rm -rfv $(CURDIR)/debian/ring-daemon/usr/lib/*.la
 
-	###########################
-	## libringclient install ##
-	###########################
-	cd lrc/build && make DESTDIR=$(CURDIR)/debian/ring install
-	rm -rfv $(CURDIR)/debian/ring/usr/include
+	cd daemon && make DESTDIR=$(CURDIR)/debian/$(RING_DAEMON_PKG_NAME) install
+	rm -rfv $(CURDIR)/debian/$(RING_DAEMON_PKG_NAME)/usr/include
+	rm -rfv $(CURDIR)/debian/$(RING_DAEMON_PKG_NAME)/usr/lib/*.a
+	rm -rfv $(CURDIR)/debian/$(RING_DAEMON_PKG_NAME)/usr/lib/*.la
+
+	######################
+	## Ring AiO install ##
+	######################
+
+        ## daemon
+	cd daemon && make DESTDIR=$(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME) install
+	rm -rfv $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/include
+	rm -rfv $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/lib/*.a
+	rm -rfv $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/lib/*.la
+
+        ## LibRingClient
+	cd lrc/build && make DESTDIR=$(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME) install
+	rm -rfv $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/include
 
 	# This is a symlink, should be in -dev package
-	rm -v $(CURDIR)/debian/ring/usr/lib/libringclient.so
+	rm -v $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/lib/libringclient.so
 
 	# cmake files
-	rm -rfv $(CURDIR)/debian/ring/usr/lib/cmake
+	rm -rfv $(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME)/usr/lib/cmake
 
-	##########################
-	## gnome client install ##
-	##########################
-	cd client-gnome/build && make DESTDIR=$(CURDIR)/debian/ring install
+        ## GNOME client
+	cd client-gnome/build && make DESTDIR=$(CURDIR)/debian/$(RING_ALL_IN_ONE_PKG_NAME) install
 
 tmpdir:= $(shell mktemp -d)
 workdir:= $(shell pwd)