@mmmbuto/masix 0.4.1 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # @mmmbuto/masix
2
2
 
3
- Official Termux package for MasiX (MIT).
3
+ Official npm package for the Termux distribution of MasiX (MIT).
4
4
 
5
- MasiX is a Rust automation runtime optimized for smartphone use in Termux and compatible with Linux and macOS source builds.
5
+ MasiX is Termux-first. Linux and macOS are supported through source builds and the Homebrew tap.
6
6
 
7
- Current package line: `0.4.1`.
7
+ Current package line: `0.4.2`.
8
8
 
9
9
  ## Function Summary
10
10
 
@@ -19,6 +19,7 @@ Current package line: `0.4.1`.
19
19
  - Termux boot automation (`masix termux boot enable|disable|status`)
20
20
  - Optional local STT via whisper.cpp (`masix config stt`)
21
21
  - Bundled `plugin-base` packages are included and installed during `npm install`
22
+ - If a bundled `.pkg` is missing, MasiX can fall back to source build for the module
22
23
  - Startup update checks are available on demand via `masix check-update`
23
24
 
24
25
  ## Install (Termux)
@@ -46,7 +47,7 @@ Postinstall installs these bundled `plugin-base` packages into `~/.masix/plugins
46
47
  - `codex-backend` `0.1.4`
47
48
  - `codex-tools` `0.1.3`
48
49
 
49
- Package artifacts are also included in the npm tarball under `packages/plugin-base/`.
50
+ Package artifacts and source trees are included in the npm tarball under `packages/plugin-base/`.
50
51
 
51
52
  ## Useful Commands
52
53
 
@@ -67,6 +68,7 @@ masix stats
67
68
 
68
69
  - This package targets Android + arm64 in Termux
69
70
  - If no prebuilt binary is available, postinstall builds from source
71
+ - The postinstall step uses `masix plugin install-base` so dependency order and source fallback stay aligned with the CLI
70
72
  - `masix config stt` can auto-pick and auto-download a Whisper model based on device resources
71
73
 
72
74
  ## Full Documentation
package/install.js CHANGED
@@ -7,31 +7,6 @@ const BINARY_NAME = 'masix';
7
7
  const PACKAGE_BIN_PATH = path.join(__dirname, 'prebuilt', BINARY_NAME);
8
8
  const PREBUILT_DIR = path.join(__dirname, 'prebuilt');
9
9
  const BUNDLED_PACKAGES_DIR = path.join(__dirname, 'packages', 'plugin-base');
10
- const TERMUX_PLATFORM = 'android-aarch64-termux';
11
- const BUNDLED_PLUGINS = [
12
- {
13
- plugin: 'discovery',
14
- version: '0.2.4',
15
- packageType: 'mcp_binary',
16
- file: path.join(BUNDLED_PACKAGES_DIR, 'discovery', '0.2.4', 'discovery-android-aarch64-termux.pkg'),
17
- adminOnly: false
18
- },
19
- {
20
- plugin: 'codex-backend',
21
- version: '0.1.4',
22
- packageType: 'library',
23
- file: path.join(BUNDLED_PACKAGES_DIR, 'codex-backend', '0.1.4', 'codex-backend-android-aarch64-termux.pkg'),
24
- adminOnly: true
25
- },
26
- {
27
- plugin: 'codex-tools',
28
- version: '0.1.3',
29
- packageType: 'mcp_binary',
30
- file: path.join(BUNDLED_PACKAGES_DIR, 'codex-tools', '0.1.3', 'codex-tools-android-aarch64-termux.pkg'),
31
- adminOnly: true
32
- }
33
- ];
34
-
35
10
  const isTermux =
36
11
  process.env.TERMUX_VERSION !== undefined ||
37
12
  process.env.PREFIX === '/data/data/com.termux/files/usr';
@@ -100,32 +75,20 @@ function ensureMasixHome() {
100
75
  }
101
76
 
102
77
  function installBundledPlugins() {
103
- for (const plugin of BUNDLED_PLUGINS) {
104
- if (!fs.existsSync(plugin.file)) {
105
- throw new Error(`Bundled package missing: ${plugin.file}`);
106
- }
78
+ if (!fs.existsSync(BUNDLED_PACKAGES_DIR)) {
79
+ throw new Error(`Bundled packages root missing: ${BUNDLED_PACKAGES_DIR}`);
80
+ }
107
81
 
108
- const args = [
82
+ execFileSync(
83
+ PACKAGE_BIN_PATH,
84
+ [
109
85
  'plugin',
110
- 'install-file',
111
- '--file',
112
- plugin.file,
113
- '--plugin',
114
- plugin.plugin,
115
- '--version',
116
- plugin.version,
117
- '--package-type',
118
- plugin.packageType,
119
- '--platform',
120
- TERMUX_PLATFORM
121
- ];
122
-
123
- if (plugin.adminOnly) {
124
- args.push('--admin-only');
125
- }
126
-
127
- execFileSync(PACKAGE_BIN_PATH, args, { stdio: 'inherit' });
128
- }
86
+ 'install-base',
87
+ '--packages-root',
88
+ BUNDLED_PACKAGES_DIR
89
+ ],
90
+ { stdio: 'inherit' }
91
+ );
129
92
  }
130
93
 
131
94
  ensureBinary();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mmmbuto/masix",
3
- "version": "0.4.1",
4
- "description": "Termux-first MIT automation runtime (Telegram, MCP, Cron) with bundled plugin-base packages and in-core STT",
3
+ "version": "0.4.2",
4
+ "description": "Termux-first MIT automation runtime for Android/Termux; Linux/macOS supported via source builds and Homebrew; bundled plugin-base packages auto-install or auto-build as needed",
5
5
  "main": "check-update.js",
6
6
  "files": [
7
7
  "README.md",
package/prebuilt/masix CHANGED
Binary file