deepseek-tui 0.8.7 → 0.8.8

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
@@ -52,11 +52,18 @@ is `https://integrate.api.nvidia.com/v1`. With `--provider nvidia-nim`,
52
52
 
53
53
  ## Supported platforms
54
54
 
55
+ Prebuilt binaries for the GitHub release are downloaded automatically:
56
+
55
57
  - Linux x64
58
+ - Linux arm64 (v0.8.8+)
56
59
  - macOS x64 / arm64
57
60
  - Windows x64
58
61
 
59
- Other platform/architecture combinations are not supported and will fail during install.
62
+ Other platform/architecture combinations (musl, riscv64, FreeBSD, …) aren't
63
+ shipped as prebuilts. The `postinstall` will exit with a clear error pointing
64
+ you at `cargo install deepseek-tui-cli deepseek-tui --locked` and the full
65
+ [docs/INSTALL.md](https://github.com/Hmbown/DeepSeek-TUI/blob/main/docs/INSTALL.md)
66
+ build-from-source guide.
60
67
 
61
68
  ## Configuration
62
69
 
@@ -65,6 +72,7 @@ Other platform/architecture combinations are not supported and will fail during
65
72
  - Set `DEEPSEEK_TUI_GITHUB_REPO` or `DEEPSEEK_GITHUB_REPO` to override the source repo (defaults to `Hmbown/DeepSeek-TUI`).
66
73
  - Set `DEEPSEEK_TUI_FORCE_DOWNLOAD=1` to force download even when the cached binary is already present.
67
74
  - Set `DEEPSEEK_TUI_DISABLE_INSTALL=1` to skip install-time download.
75
+ - Set `DEEPSEEK_TUI_OPTIONAL_INSTALL=1` to make the `postinstall` step warn and exit `0` on download/extract errors instead of failing `npm install` (useful in CI matrices).
68
76
 
69
77
  ## Release integrity
70
78
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "deepseek-tui",
3
- "version": "0.8.7",
4
- "deepseekBinaryVersion": "0.8.7",
3
+ "version": "0.8.8",
4
+ "deepseekBinaryVersion": "0.8.8",
5
5
  "description": "Install and run deepseek and deepseek-tui binaries from GitHub release artifacts.",
6
6
  "author": "Hmbown",
7
7
  "license": "MIT",
@@ -6,7 +6,7 @@ const CHECKSUM_MANIFEST = "deepseek-artifacts-sha256.txt";
6
6
  const ASSET_MATRIX = {
7
7
  linux: {
8
8
  x64: ["deepseek-linux-x64", "deepseek-tui-linux-x64"],
9
- // arm64: ["deepseek-linux-arm64", "deepseek-tui-linux-arm64"], // Uncomment when binaries are available
9
+ arm64: ["deepseek-linux-arm64", "deepseek-tui-linux-arm64"],
10
10
  },
11
11
  darwin: {
12
12
  x64: ["deepseek-macos-x64", "deepseek-tui-macos-x64"],
@@ -23,12 +23,19 @@ function detectBinaryNames() {
23
23
  const defaults = ASSET_MATRIX[platform];
24
24
  if (!defaults) {
25
25
  const supported = Object.keys(ASSET_MATRIX).map(p => `'${p}'`).join(', ');
26
- throw new Error(`Unsupported platform: ${platform}. Supported platforms: ${supported}`);
26
+ throw new Error(
27
+ `Unsupported platform: ${platform}. Supported platforms: ${supported}.\n\n` +
28
+ unsupportedBuildHint(),
29
+ );
27
30
  }
28
31
  const pair = defaults[arch];
29
32
  if (!pair) {
30
33
  const supported = Object.keys(defaults).map(a => `'${a}'`).join(', ');
31
- throw new Error(`Unsupported architecture: ${arch} on platform ${platform}. Supported architectures: ${supported}`);
34
+ throw new Error(
35
+ `Unsupported architecture: ${arch} on platform ${platform}. ` +
36
+ `Supported architectures: ${supported}.\n\n` +
37
+ unsupportedBuildHint(),
38
+ );
32
39
  }
33
40
  return {
34
41
  platform,
@@ -38,6 +45,27 @@ function detectBinaryNames() {
38
45
  };
39
46
  }
40
47
 
48
+ function unsupportedBuildHint() {
49
+ return [
50
+ "No prebuilt binary is available for this platform/architecture combo.",
51
+ "You can still run DeepSeek TUI by building from source with Cargo:",
52
+ "",
53
+ " # Requires Rust 1.85+ (https://rustup.rs)",
54
+ " cargo install deepseek-tui-cli --locked # provides `deepseek`",
55
+ " cargo install deepseek-tui --locked # provides `deepseek-tui`",
56
+ "",
57
+ "Or build from a checkout:",
58
+ "",
59
+ " git clone https://github.com/Hmbown/DeepSeek-TUI.git",
60
+ " cd DeepSeek-TUI",
61
+ " cargo install --path crates/cli --locked",
62
+ " cargo install --path crates/tui --locked",
63
+ "",
64
+ "See https://github.com/Hmbown/DeepSeek-TUI/blob/main/docs/INSTALL.md",
65
+ "for cross-compilation, mirror, and Linux ARM64 specifics.",
66
+ ].join("\n");
67
+ }
68
+
41
69
  function executableName(base, platform) {
42
70
  return platform === "win32" ? `${base}.exe` : base;
43
71
  }
@@ -210,6 +210,12 @@ module.exports = {
210
210
  if (require.main === module) {
211
211
  run().catch((error) => {
212
212
  console.error("deepseek-tui install failed:", error.message);
213
+ if (process.env.DEEPSEEK_TUI_OPTIONAL_INSTALL === "1") {
214
+ console.error(
215
+ "DEEPSEEK_TUI_OPTIONAL_INSTALL=1 set; continuing without a usable binary.",
216
+ );
217
+ process.exit(0);
218
+ }
213
219
  process.exit(1);
214
220
  });
215
221
  }