Skip to content

Digital-Defiance/BrightNexus-linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BrightNexus for Linux

Hardware-anchored BrightLink bridge and GTK system-tray agent for Ubuntu/Linux. Wire-compatible with the macOS BrightNexus reference.

Repository: https://github.com/Digital-Defiance/BrightNexus-linux

Features

  • EBP/1 + BrightLink on ~/.brightchain/brightnexus/brightnexus.sock
  • Tpm2BridgeIdentity (optional tpm2 feature) or FileBridgeIdentity with optional libsecret wrapping
  • Linux peer attestation (SO_PEERCRED, dpkg, lineage)
  • Geo: GeoClue2 (optional) or fixed/test source
  • GTK4 / libadwaita tray and settings UI

Install (PPA)

sudo add-apt-repository ppa:digitaldefiance/brightnexus
sudo apt update
sudo apt install brightnexus

Rust toolchain (MSRV 1.85)

Transitive crypto crates (e.g. base64ct 1.8.x) require Rust 1.85+ (edition 2024). The repo pins stable via rust-toolchain.toml.

Ubuntu 24.04 Noble: do not use the distro cargo package (Rust 1.75). Install rustup and use stable:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
rustup default stable
rustc --version   # must be 1.85.0 or newer
cargo --version   # must match rustup, not /usr/bin/cargo
which cargo       # should be $HOME/.cargo/bin/cargo

If compile errors mention peer_cred or E0658 (unstable), the active toolchain is too old — run rustup update stable and confirm rustc --version is 1.85+ (Noble's apt install cargo ships Rust 1.75 and will not work).

Optional: remove apt Rust so which cargo points at ~/.cargo/bin/cargo:

sudo apt remove -y cargo rustc  # if installed

Parallels / VM testing: see docs/TESTING-PARALLELS.md.

Build

cargo build --release -p brightnexus-gtk

Headless bridge only (no GTK):

cargo build --release -p brightnexus-bridge

With TPM2 (requires system libtss2):

cargo build --release -p brightnexus-platform --features tpm2
cargo build --release -p brightnexus-gtk --features brightnexus-platform/tpm2

Run

./target/release/brightnexus-bridge
# or full UI
./target/release/brightnexus

Environment:

  • BRIGHTNEXUS_SOCKET — override Unix socket path
  • BRIGHTNEXUS_REQUIRE_HARDWARE=1 — refuse to start without TPM2-backed bridge identity

Docs & site

Marketing site (GitHub Pages): linexus.digitaldefiance.org — sources under docs/.

Protocol: BrightLink.

Debian packaging: debian/; Launchpad upload notes in packaging/launchpad/README.md.

License

MIT

About

Hardware-anchored BrightLink bridge and GTK system-tray agent for Ubuntu/Linux. Wire-compatible with the BrightLink RFC reference.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors