diff --git a/install/alpine-ironclaw-install.sh b/install/alpine-ironclaw-install.sh index faf972300..65141f191 100644 --- a/install/alpine-ironclaw-install.sh +++ b/install/alpine-ironclaw-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing Dependencies" -$STD apk add openssl +$STD apk add openssl dbus gnome-keyring msg_ok "Installed Dependencies" msg_info "Installing PostgreSQL" @@ -57,7 +57,8 @@ cat </etc/init.d/ironclaw name="IronClaw" description="IronClaw AI Agent" -command="/usr/local/bin/ironclaw" +command="/usr/bin/dbus-run-session" +command_args="/usr/local/bin/ironclaw" command_background=true pidfile="/run/ironclaw.pid" directory="/root" diff --git a/install/ironclaw-install.sh b/install/ironclaw-install.sh index f58c6e810..07cbea755 100644 --- a/install/ironclaw-install.sh +++ b/install/ironclaw-install.sh @@ -13,13 +13,16 @@ setting_up_container network_check update_os +msg_info "Installing Dependencies" +$STD apt install -y \ + dbus-user-session \ + gnome-keyring \ + libsecret-tools +msg_ok "Installed Dependencies" + PG_VERSION="17" PG_MODULES="pgvector" setup_postgresql PG_DB_NAME="ironclaw" PG_DB_USER="ironclaw" PG_DB_EXTENSIONS="vector" setup_postgresql_db -msg_info "Installing secret service dependencies" -$STD apt install -y dbus-user-session gnome-keyring libsecret-tools -msg_ok "Installed secret service dependencies" - fetch_and_deploy_gh_release "ironclaw-bin" "nearai/ironclaw" "prebuild" "latest" "/usr/local/bin" \ "ironclaw-$(uname -m)-unknown-linux-$([[ -f /etc/alpine-release ]] && echo "musl" || echo "gnu").tar.gz" chmod +x /usr/local/bin/ironclaw @@ -41,13 +44,6 @@ chmod 600 /root/.ironclaw/.env msg_ok "Configured IronClaw" msg_info "Creating Service" -cat <<'EOF' >/usr/local/bin/ironclaw-run.sh -#!/usr/bin/env bash -set -euo pipefail -exec dbus-run-session -- bash -lc 'gnome-keyring-daemon --start --components=secrets >/dev/null 2>&1 && exec /usr/local/bin/ironclaw' -EOF -chmod +x /usr/local/bin/ironclaw-run.sh - cat </etc/systemd/system/ironclaw.service [Unit] Description=IronClaw AI Agent @@ -57,7 +53,8 @@ After=network.target postgresql.service Type=simple User=root WorkingDirectory=/root -ExecStart=/usr/local/bin/ironclaw-run.sh +EnvironmentFile=/root/.ironclaw/.env +ExecStart=/usr/bin/dbus-run-session /usr/local/bin/ironclaw Restart=on-failure RestartSec=5