Feat opclawmgr (#595)

Feat opclawmgr (#595)

  • update openclawmgr logo

  • kspeeder 0.7.5


Co-authored-by: Carseason <757841203@qq.com>
diff --git a/applications/app-meta-istoreenhance/Makefile b/applications/app-meta-istoreenhance/Makefile
index 32fdedd..653ec86 100644
--- a/applications/app-meta-istoreenhance/Makefile
+++ b/applications/app-meta-istoreenhance/Makefile
@@ -2,7 +2,7 @@
 
 include $(TOPDIR)/rules.mk
 
-PKG_VERSION:=0.7.3
+PKG_VERSION:=0.7.5
 PKG_RELEASE:=1
 META_TITLE:=KSpeeder(原iStore增强)
 META_TITLE.en:=KSpeeder(iStoreEnhance)
diff --git a/applications/app-meta-openclawmgr/Makefile b/applications/app-meta-openclawmgr/Makefile
new file mode 100644
index 0000000..aa28508
--- /dev/null
+++ b/applications/app-meta-openclawmgr/Makefile
@@ -0,0 +1,22 @@
+# This is free software, licensed under the Apache License, Version 2.0 .
+
+include $(TOPDIR)/rules.mk
+
+PKG_VERSION:=0.1.0
+PKG_RELEASE:=1
+
+META_TITLE:=OpenClaw Launcher
+META_TITLE.en:=OpenClaw Launcher
+META_DEPENDS:=+luci-app-openclawmgr +luci-i18n-openclawmgr-zh-cn
+META_DESCRIPTION:=在 OpenWrt 上原生安装、启动并管理官方 OpenClaw。
+META_DESCRIPTION.en:=OpenClaw Launcher for native deployment and management (procd + Node/npm).
+META_AUTHOR:=istoreos-app-hub
+META_ARCH:=x86_64 aarch64
+META_TAGS:=ai
+META_LUCI_ENTRY:=/cgi-bin/luci/admin/services/openclawmgr
+META_AUTOCONF:=path enable
+META_UCI:=openclawmgr
+
+include ../../meta.mk
+
+# call BuildPackage - OpenWrt buildroot signature
diff --git a/applications/app-meta-openclawmgr/config.sh b/applications/app-meta-openclawmgr/config.sh
new file mode 100755
index 0000000..52af6ac
--- /dev/null
+++ b/applications/app-meta-openclawmgr/config.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+[ -n "$ISTORE_CACHE_DIR" ] || exit 1
+[ -n "$ISTORE_CONF_DIR" ] || exit 1
+
+BASE_DIR="${ISTORE_CACHE_DIR}/OpenClawMgr"
+
+uci -q batch <<-EOF >/dev/null || exit 1
+	set openclawmgr.main=openclawmgr
+	set openclawmgr.main.base_dir="${BASE_DIR}"
+	set openclawmgr.main.port="18789"
+	set openclawmgr.main.bind="lan"
+	set openclawmgr.main.enabled="0"
+	commit openclawmgr
+EOF
+
+ISTORE_ACTION=install
+[ -z "$ISTORE_DONT_START" ] || ISTORE_ACTION=stop
+
+/usr/libexec/istorec/openclawmgr.sh "$ISTORE_ACTION" || [ stop = "$ISTORE_ACTION" ]
diff --git a/applications/app-meta-openclawmgr/entry.sh b/applications/app-meta-openclawmgr/entry.sh
new file mode 100755
index 0000000..310e9a6
--- /dev/null
+++ b/applications/app-meta-openclawmgr/entry.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+ISTOREC_SCRIPT=/usr/libexec/istorec/openclawmgr.sh
+
+status() {
+	local host="$1"
+	[ -n "$host" ] || host=127.0.0.1
+
+	. /usr/share/libubox/jshn.sh
+	json_init
+	json_add_string "app" "openclawmgr"
+	json_add_boolean "docker" "0"
+
+	local st="$($ISTOREC_SCRIPT status 2>/dev/null)"
+	if [ "$st" = "running" ]; then
+		json_add_boolean "running" "1"
+		local port="$($ISTOREC_SCRIPT port 2>/dev/null)"
+		local portsec="${port:-18789}"
+		local token="$($ISTOREC_SCRIPT token 2>/dev/null)"
+		local href="http://$host:${portsec}/openclawmgr/"
+		[ -n "$token" ] && href="${href}#token=${token}"
+		json_add_string "web" ":${portsec}/openclawmgr/"
+		json_add_string "href" "$href"
+		json_add_string "protocol" "http"
+		json_add_string "port" "${portsec}"
+	else
+		json_add_boolean "running" "0"
+		if [ -z "$st" ]; then
+			json_add_boolean "deployed" "0"
+		else
+			json_add_boolean "deployed" "1"
+		fi
+	fi
+
+	json_dump
+	json_cleanup >/dev/null
+}
+
+start() { $ISTOREC_SCRIPT start; }
+stop() { $ISTOREC_SCRIPT stop; }
+
+ACTION="${1:-help}"
+shift 1 || true
+
+case "$ACTION" in
+	status|start|stop) "$ACTION" "$@" ;;
+	*) echo "Usage: $0 {status|start|stop}" ;;
+esac
diff --git a/applications/app-meta-openclawmgr/logo.png b/applications/app-meta-openclawmgr/logo.png
new file mode 100644
index 0000000..104a5b6
Binary files /dev/null and b/applications/app-meta-openclawmgr/logo.png differ

GitHub
sha: 619c5a64b11d46068b79069cfd37326c0ef3ff5f