Skip to content

please support loongarch64 #1945

@Shyliuli

Description

@Shyliuli

Environment

  • OS: AOSC Linux
  • Arch: loongarch64
  • Rust: rustc 1.94.0
  • npm: 11.11.0
  • Package version: deepseek-tui / deepseek-tui-cli v0.8.40

Problem

cargo install deepseek-tui-cli --locked installs only the dispatcher binary:

~/.cargo/bin/deepseek

Running deepseek then fails because the companion binary is missing:

error: Companion deepseek-tui binary not found at /home/shyliuli/.cargo/bin/deepseek-tui.

Installing the TUI companion via npm also fails on LoongArch:

npm install -g deepseek-tui
deepseek-tui install failed: Unsupported architecture: loong64 on platform linux.
Supported architectures: 'x64', 'arm64'.

Installing the TUI companion via Cargo fails too:

cargo install deepseek-tui --locked
error[E0432]: unresolved import self::consts
--> nix-0.25.1/src/sys/ioctl/linux.rs:60:15
|
60 | pub use self::consts::*;
| ^^^^^^ could not find consts in self

Root cause

The dependency chain pulls in:

deepseek-tui -> portable-pty 0.8.1 -> nix 0.25.1

nix 0.25.1/src/sys/ioctl/linux.rs does not include target_arch = "loongarch64" in either
ioctl constants cfg block, so no consts module is defined for LoongArch.

Workaround tested

Copying nix 0.25.1 locally and adding loongarch64 to the generic ioctl cfg block makes the
build pass:

target_arch = "loongarch64",

Then installing with a Cargo patch works:

cargo install deepseek-tui --locked
--config 'patch.crates-io.nix.path="/path/to/patched/nix-0.25.1"'

After that:

deepseek 0.8.40
deepseek-tui 0.8.40
deepseek doctor -> All checks complete!

Expected behavior

One of these should work on loongarch64 Linux:

  • cargo install deepseek-tui-cli deepseek-tui --locked
  • npm install -g deepseek-tui
  • documented LoongArch workaround

Possible fixes:

  • update portable-pty or the dependency chain so it no longer pins old nix 0.25.1
  • patch the dependency selection for loongarch64
  • document LoongArch source-build workaround
  • optionally publish loong64 npm/GitHub release artifacts
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingenhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions