feat: add simplified windows x86 support
This commit is contained in:
+13
-8
@@ -11,11 +11,12 @@ const { ClawClient } = require('../lib/client');
|
||||
const config = require('../lib/config');
|
||||
const log = require('../lib/logger');
|
||||
const { pollSms } = require('../drivers/sim/sms-reader');
|
||||
const IS_WINDOWS = process.platform === 'win32';
|
||||
|
||||
// 每次启动同步 3588s demo 到 /usr/bin/demo(idempotent,失败不影响主流程)
|
||||
const demoBin = path.join(__dirname, "..", "lib/resource/3588s/demo");
|
||||
const demoDst = "/usr/bin/demo";
|
||||
if (fs.existsSync(demoBin)) {
|
||||
if (!IS_WINDOWS && fs.existsSync(demoBin)) {
|
||||
exec(`install -m 0755 "${demoBin}" "${demoDst}"`, (err) => {
|
||||
if (err) log.warn("clawd", `demo sync failed: ${err.message}`);
|
||||
else log.info("clawd", "demo synced to /usr/bin/demo");
|
||||
@@ -24,14 +25,16 @@ if (fs.existsSync(demoBin)) {
|
||||
|
||||
// 每次启动绑定 Quectel 串口驱动(失败不影响主流程)
|
||||
const bindScript = path.join(__dirname, '..', 'tools', 'bind-quectel-serial.sh');
|
||||
exec(`bash "${bindScript}"`, (err, stdout, stderr) => {
|
||||
if (err) log.warn('clawd', `bind-quectel-serial: ${stderr || err.message}`);
|
||||
else log.info('clawd', `bind-quectel-serial: ok`);
|
||||
});
|
||||
if (!IS_WINDOWS) {
|
||||
exec(`bash "${bindScript}"`, (err, stdout, stderr) => {
|
||||
if (err) log.warn('clawd', `bind-quectel-serial: ${stderr || err.message}`);
|
||||
else log.info('clawd', `bind-quectel-serial: ok`);
|
||||
});
|
||||
}
|
||||
|
||||
// 同步 Samba 共享密码(idempotent,失败不影响主流程)
|
||||
const cfg = config.load();
|
||||
if (cfg.share_key) {
|
||||
if (!IS_WINDOWS && cfg.share_key) {
|
||||
const shareKey = cfg.share_key.replace(/'/g, "'\\''");
|
||||
exec(`printf '%s\\n%s\\n' '${shareKey}' '${shareKey}' | smbpasswd -a sts -s 2>/dev/null`, (err) => {
|
||||
if (err) log.warn('clawd', `smbpasswd sync failed (samba not installed?): ${err.message}`);
|
||||
@@ -58,8 +61,10 @@ async function pollSmsSafe() {
|
||||
const client = new ClawClient();
|
||||
client.start();
|
||||
|
||||
pollSmsSafe();
|
||||
smsTimer = setInterval(pollSmsSafe, 15_000);
|
||||
if (!IS_WINDOWS) {
|
||||
pollSmsSafe();
|
||||
smsTimer = setInterval(pollSmsSafe, 15_000);
|
||||
}
|
||||
|
||||
let stopping = false;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user