Initial .s9pk for SpacesOps, targeting StartOS 0.4.0.x with SDK 1.5.1. - Single managed daemon from spacesops/spacesops:v1.0.0 (x86_64 + aarch64), keeping the image entrypoint (/app/docker-entrypoint.sh node server.js). Forces PLATFORM_HOST=0.0.0.0 / PLATFORM_PORT=7264 so the StartOS proxy can reach the app. Single `ui` interface on 7264. - Depends on the Spaces service (>=0.0.9:3) and auto-wires the spaced RPC creds: main.ts mounts the Spaces `main` volume read-only at /spaces-data, execs a read of its store.json inside the subcontainer, and injects SPACED_RPC_USER/ PASSWORD + SPACED_RPC_URL=http://spaces.startos:7225. Throws to retry until Spaces is installed and seeded. - Generates a Nostr operator keypair (nostr-tools, bundled by ncc) and a strong session secret in idempotent init tasks (.once() reads, allowWriteAfterConst merges). Actions: show-operator-credentials, import-operator-key, show-admin-credentials (surfaces the fixed admin/Whatever! login with a warning), configure-platform (optional relay/mode/CoinGecko/SUBSD). - Install alert warns to install Spaces first and about the fixed admin credential. Backs up the `main` volume. - Icon: icon.svg (source spacesops.svg). The `spaces` dependency uses assets/spaces-icon.png for its Marketplace metadata. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
43 lines
1.5 KiB
TypeScript
43 lines
1.5 KiB
TypeScript
import { setupManifest } from '@start9labs/start-sdk'
|
|
import { depSpacesDescription, long, short } from './i18n'
|
|
|
|
export const manifest = setupManifest({
|
|
id: 'spacesops',
|
|
title: 'SpacesOps',
|
|
license: 'MIT',
|
|
packageRepo: 'https://git.spacesops.com/spacesops/spacesops-startos',
|
|
upstreamRepo: 'https://git.spacesops.com/spacesops/spacesops',
|
|
marketingUrl: 'https://spacesops.com',
|
|
donationUrl: null,
|
|
docsUrls: [],
|
|
description: { short, long },
|
|
volumes: ['main'],
|
|
images: {
|
|
spacesops: {
|
|
source: { dockerTag: 'spacesops/spacesops:v1.0.0' },
|
|
arch: ['x86_64', 'aarch64'],
|
|
},
|
|
},
|
|
alerts: {
|
|
install: {
|
|
en_US:
|
|
'SpacesOps REQUIRES the Spaces service. Install and sync Spaces first — SpacesOps auto-connects to it at spaces.startos:7225 by reading the Spaces RPC credentials, and will not start until they are available.\n\nWARNING: the admin area is protected by a FIXED, well-known credential baked into this image (username "admin", password "Whatever!") that cannot be changed without rebuilding the image. The admin area can run SQL and manage tenants. Keep this service private (Tor-only) and do NOT expose its admin routes to the public internet. See the "Show Admin Credentials" action.',
|
|
},
|
|
update: null,
|
|
uninstall: null,
|
|
restore: null,
|
|
start: null,
|
|
stop: null,
|
|
},
|
|
dependencies: {
|
|
spaces: {
|
|
description: depSpacesDescription,
|
|
optional: false,
|
|
metadata: {
|
|
title: 'Spaces',
|
|
icon: 'assets/spaces-icon.png',
|
|
},
|
|
},
|
|
},
|
|
})
|