--- /dev/null
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=rpcd-mod-attendedsysupgrade
+PKG_VERSION:=1
+PKG_RELEASE:=1
+PKG_LICENSE:=GPL-2.0
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/rpcd-mod-attendedsysupgrade
+ SECTION:=utils
+ CATEGORY:=Base system
+ TITLE:=OpenWrt ubus RPC backend server (attendedsysupgrade)
+ MAINTAINER:=Paul Spooren <paul@spooren.de>
+ DEPENDS:=rpcd +cgi-io +rpcd-mod-packagelist
+endef
+
+define Package/rpcd-mod-attendedsysupgrade/description
+ implements sysupgrade function with ubus
+ add uci settings and needed acls
+endef
+
+define Build/Compile
+endef
+
+define Build/Configure
+endef
+
+define Package/rpcd-mod-attendedsysupgrade/install
+ $(INSTALL_DIR) $(1)/usr/share/rpcd/acl.d/
+ $(INSTALL_BIN) ./files/attendedsysupgrade.acl $(1)/usr/share/rpcd/acl.d/attendedsysupgrade.json
+
+ $(INSTALL_DIR) $(1)/usr/libexec/rpcd/
+ $(INSTALL_BIN) ./files/attendedsysupgrade $(1)/usr/libexec/rpcd/attendedsysupgrade
+
+ $(INSTALL_DIR) $(1)/etc/uci-defaults/
+ $(INSTALL_BIN) ./files/attendedsysupgrade.defaults $(1)/etc/uci-defaults/attendedsysupgrade
+endef
+
+$(eval $(call BuildPackage,rpcd-mod-attendedsysupgrade))
--- /dev/null
+#!/bin/sh
+
+[ -e /etc/config/attendedsysupgrade ] && exit 0
+
+touch /etc/config/attendedsysupgrade
+
+uci -q batch <<EOF
+add attendedsysupgrade settings
+set attendedsysupgrade.@settings[0].update_server=https://betaupdate.libremesh.org
+commit attendedsysupgrade
+EOF
+
+exit 01
--- /dev/null
+#!/bin/sh
+
+. /usr/share/libubox/jshn.sh
+
+case "$1" in
+ list)
+ json_init
+
+ json_add_object "sysupgrade"
+ json_close_object
+
+ json_dump
+ ;;
+ call)
+ case "$2" in
+ sysupgrade)
+ if [ -f "/tmp/sysupgrade.bin" ]; then
+ /etc/init.d/uhttpd stop
+ /etc/init.d/dropbear stop
+ sleep 1;
+ /sbin/sysupgrade -c /tmp/sysupgrade.bin
+ fi
+ json_init
+ json_add_string "message" "could not find /tmp/sysupgrade.bin"
+ json_dump
+ esac
+ ;;
+esac
+