diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty-conf.bb b/meta-arago-distro/recipes-graphics/emptty/emptty-conf.bb
new file mode 100644
index 00000000..0aacb086
--- /dev/null
+++ b/meta-arago-distro/recipes-graphics/emptty/emptty-conf.bb
@@ -0,0 +1,14 @@
+require emptty.inc
+
+SUMMARY += " (Default config)"
+
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install () {
+    oe_runmake -C ${S}/src/${GO_IMPORT} DESTDIR=${D} install-config
+}
+
+FILES:${PN}-conf = "${sysconfdir}/emptty/conf"
+CONFFILES:${PN}-conf = "${sysconfdir}/emptty/conf"
+RPROVIDES:${PN}-conf += "virtual-emptty-conf"
diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty.inc b/meta-arago-distro/recipes-graphics/emptty/emptty.inc
new file mode 100644
index 00000000..b452d403
--- /dev/null
+++ b/meta-arago-distro/recipes-graphics/emptty/emptty.inc
@@ -0,0 +1,26 @@
+SUMMARY = "Dead simple CLI Display Manager on TTY"
+DESCRIPTION = "Emptty is a simple display manager with a command line greeter \
+It supports both X11 and Wayland sessions, exporting required variables and \
+creating user paths as necessary."
+
+HOMEPAGE = "https://github.com/tvrzna/emptty"
+BUGTRACKER = "https://github.com/tvrzna/emptty/issues"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=d1e4d12c7d1d17367ba5668706a405ba"
+
+S = "${WORKDIR}"
+
+FILESEXTRAPATHS:append = ":${THISDIR}/emptty"
+
+GO_IMPORT = "github.com/tvrzna/emptty"
+GO_IMPORT_pam = "github.com/msteinert/pam"
+SRC_URI = "\
+    git://${GO_IMPORT}.git;protocol=https;branch=master;destsuffix=src/${GO_IMPORT} \
+    git://${GO_IMPORT_pam}.git;protocol=https;branch=master;name=pam;destsuffix=src/${GO_IMPORT_pam} \
+    file://pamconf \
+    file://emptty.tab \
+    "
+SRCREV = "d162bef75fadc8ae1d8e33dbb3de5e2795a196e0"
+SRCREV_pam = "50ded1b0e7864b9bf75005eb945a8ec826bcf69d"
+
+SRCREV_FORMAT .= "_pam"
diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty/emptty.tab b/meta-arago-distro/recipes-graphics/emptty/emptty/emptty.tab
new file mode 100644
index 00000000..6359c722
--- /dev/null
+++ b/meta-arago-distro/recipes-graphics/emptty/emptty/emptty.tab
@@ -0,0 +1 @@
+7:5:respawn:/usr/bin/emptty -t 7 -d
diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty/init b/meta-arago-distro/recipes-graphics/emptty/emptty/init
deleted file mode 100644
index 114177c8..00000000
--- a/meta-arago-distro/recipes-graphics/emptty/emptty/init
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-#
-### BEGIN INIT INFO
-# Provides: emptty
-# Required-Start: $local_fs $remote_fs
-# Required-Stop: $local_fs $remote_fs
-# Default-Start:     5
-# Default-Stop:      0 1 2 3 6
-# X-Interactive: true
-### END INIT INFO
-
-PIDFILE=/var/run/emptty.pid
-
-# source function library
-. /etc/init.d/functions
-
-case "$1" in
-	start)
-		echo "Starting display manager: emptty"
-		start-stop-daemon -b -S -p $PIDFILE -x /usr/bin/emptty -- -d
-		;;
-	stop)
-		echo "Stopping display manager: emptty"
-		start-stop-daemon -K -p $PIDFILE -x /usr/bin/emptty
-		;;
-	restart)
-		start-stop-daemon -K -p $PIDFILE --oknodo -x /usr/bin/emptty -- -d
-		sleep 2
-		start-stop-daemon -b -S -p $PIDFILE -x /usr/bin/emptty
-		;;
-	reload|force-reload)
-		start-stop-daemon -K -p $PIDFILE -s 1 -x /usr/bin/emptty
-		;;
-	status)
-		status /usr/bin/emptty
-		;;
-	*)
-		echo "usage: $0 { start | stop | restart }"
-		;;
-esac
diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty_0.13.0.bb b/meta-arago-distro/recipes-graphics/emptty/emptty_0.13.0.bb
deleted file mode 100644
index 412ad729..00000000
--- a/meta-arago-distro/recipes-graphics/emptty/emptty_0.13.0.bb
+++ /dev/null
@@ -1,79 +0,0 @@
-SUMMARY = "Dead simple CLI Display Manager on TTY"
-HOMEPAGE = "https://github.com/tvrzna/emptty"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=d1e4d12c7d1d17367ba5668706a405ba"
-
-GO_IMPORT = "github.com/tvrzna/emptty"
-GO_IMPORT_pam = "github.com/msteinert/pam"
-SRC_URI = "\
-    git://${GO_IMPORT}.git;protocol=https;branch=master \
-    git://${GO_IMPORT_pam}.git;protocol=https;branch=master;name=pam;destsuffix=${S}/src/${GO_IMPORT_pam} \
-    file://pamconf \
-    file://init \
-    "
-SRCREV = "4046552b6f5cc1cf76ce8bf333e04e16c59febca"
-SRCREV_pam = "50ded1b0e7864b9bf75005eb945a8ec826bcf69d"
-
-SRCREV_FORMAT .= "_pam"
-
-PACKAGES += "${PN}-conf"
-
-PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam x11', d)}"
-PACKAGECONFIG[pam] = ",,libpam,pam-plugin-succeed-if"
-PACKAGECONFIG[x11] = ",,virtual/libx11"
-
-DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'libxcrypt', d)}"
-
-GO_TAGS = ""
-GO_TAGS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pam', '', ',nopam', d)}"
-GO_TAGS:append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', ',noxlib', d)}"
-
-GOBUILDFLAGS:append = " -tags=${GO_TAGS}"
-
-export GO111MODULE="off"
-
-inherit go update-rc.d systemd
-
-DEPENDS += "gzip-native"
-
-do_install () {
-    # general collateral
-    install -Dm755 ${B}/${GO_BUILD_BINDIR}/emptty ${D}${bindir}/emptty
-    oe_runmake -C ${S}/src/${GO_IMPORT} DESTDIR=${D} install-config
-    install -d ${D}${mandir}/man1
-    gzip -cn ${S}/src/${GO_IMPORT}/res/emptty.1 > ${D}${mandir}/man1/emptty.1.gz
-
-    # pam config
-    if "${@bb.utils.contains('PACKAGECONFIG','pam','true','false',d)}"
-    then
-        install -Dm644 ${WORKDIR}/pamconf ${D}${sysconfdir}/pam.d/emptty
-    fi
-
-    # init services
-    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}
-    then
-        oe_runmake -C ${S}/src/${GO_IMPORT} DESTDIR=${D} install-systemd
-    else
-        install -Dm755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/emptty
-    fi
-}
-
-FILES:${PN} = "\
-    ${systemd_system_unitdir}/emptty.service \
-    ${sysconfdir}/init.d/emptty \
-    ${bindir}/emptty \
-    ${mandir}/man1/emptty.1.gz \
-    ${sysconfdir}/pam.d/emptty \
-"
-
-FILES:${PN}-conf += "${sysconfdir}/emptty/conf"
-CONFFILES:${PN}-conf += "${sysconfdir}/emptty/conf"
-RPROVIDES:${PN}-conf += "virtual-emptty-conf"
-
-RDEPENDS:${PN} += "virtual-emptty-conf"
-
-SYSTEMD_SERVICE:${PN} = "emptty.service"
-
-INITSCRIPT_NAME = "emptty"
-INITSCRIPT_PARAMS = "start 10 5 2 . stop 20 0 1 6 ."
-INHIBIT_UPDATERCD_BBCLASS = "${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', '1', '', d)}"
diff --git a/meta-arago-distro/recipes-graphics/emptty/emptty_0.14.0.bb b/meta-arago-distro/recipes-graphics/emptty/emptty_0.14.0.bb
new file mode 100644
index 00000000..11d306a5
--- /dev/null
+++ b/meta-arago-distro/recipes-graphics/emptty/emptty_0.14.0.bb
@@ -0,0 +1,53 @@
+require emptty.inc
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam x11', d)}"
+PACKAGECONFIG[pam] = ",,libpam,pam-plugin-succeed-if"
+PACKAGECONFIG[x11] = ",,virtual/libx11"
+
+DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'virtual/crypt', d)}"
+
+GO_TAGS = ""
+GO_TAGS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pam', '', ',nopam', d)}"
+GO_TAGS:append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', ',noxlib', d)}"
+
+GOBUILDFLAGS:append = " -tags=${GO_TAGS}"
+
+export GO111MODULE = "off"
+
+inherit go
+
+DEPENDS += "gzip"
+
+do_install () {
+    # general collateral
+    install -Dm755 ${B}/${GO_BUILD_BINDIR}/emptty ${D}${bindir}/emptty
+    install -d ${D}${mandir}/man1
+    gzip -cn ${S}/src/${GO_IMPORT}/res/emptty.1 > ${D}${mandir}/man1/emptty.1.gz
+
+    # pam config
+    if "${@bb.utils.contains('PACKAGECONFIG','pam','true','false',d)}"
+    then
+        install -Dm644 ${S}/pamconf ${D}${sysconfdir}/pam.d/emptty
+    fi
+
+    # init services
+    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}
+    then
+        oe_runmake -C ${S}/src/${GO_IMPORT} DESTDIR=${D} install-systemd
+    else
+        install -Dm644 ${S}/emptty.tab ${D}${sysconfdir}/inittab.d/emptty.tab
+    fi
+}
+
+FILES:${PN} = "\
+    ${systemd_system_unitdir}/emptty.service \
+    ${sysconfdir}/inittab.d/emptty.tab \
+    ${bindir}/emptty \
+    ${mandir}/man1/emptty.1.gz \
+    ${sysconfdir}/pam.d/emptty \
+"
+
+RDEPENDS:${PN} += "virtual-emptty-conf"
+SYSTEMD_SERVICE:${PN} = "emptty.service"
+
+inherit systemd
