Orginize
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
/**
|
||||
* Initd marker for swarm chat (`bare-os-chat-v1`): transport stays in the booter/swarm-disk;
|
||||
* this unit records that chat is intended to be active when env allows.
|
||||
*/
|
||||
import { registerBareService } from './bare-initd.js'
|
||||
import { bareOsChatMuxEnabled } from './bare-os-chat-service.js'
|
||||
|
||||
/** @type {boolean} */
|
||||
let bareOsChatInitdRegistered = false
|
||||
|
||||
/** @param {Record<string, string | undefined>} env */
|
||||
export function bareOsChatInitdEnabled(env) {
|
||||
if (!bareOsChatMuxEnabled(env)) return false
|
||||
const v = env.BARE_OS_CHAT_INITD
|
||||
if (v === '0' || v === 'false') return false
|
||||
return true
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {Record<string, unknown>} ctx
|
||||
*/
|
||||
async function startBareOsChatInitd(ctx) {
|
||||
if (!bareOsChatMuxEnabled(globalThis.process?.env)) return
|
||||
ctx.console?.log?.(
|
||||
'[bare-os-chat] Protomux bare-os-chat-v1 enabled (join general on peer connect)'
|
||||
)
|
||||
}
|
||||
|
||||
async function stopBareOsChatInitd(_ctx) {}
|
||||
|
||||
/** @param {Record<string, string | undefined>} env */
|
||||
export function maybeRegisterBareOsChatInitd(env) {
|
||||
if (bareOsChatInitdRegistered) return
|
||||
if (!bareOsChatInitdEnabled(env || {})) return
|
||||
bareOsChatInitdRegistered = true
|
||||
registerBareService({
|
||||
name: 'bare-os-chat',
|
||||
description:
|
||||
'Swarm chat (bare-os-chat-v1); stock default on — set BARE_OS_PROTOMUX_CHAT_CHANNEL=0 or BARE_OS_CHAT_INITD=0 to disable',
|
||||
start: startBareOsChatInitd,
|
||||
stop: stopBareOsChatInitd
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user