Files
Mycelium-ui-private/release
syoul 8b83fc10d5 fork: initialize Mycellium UI Private from Mycell-UI@5229e2c
This repo is a hard fork of mycellium-ui dedicated to the
mycelium-private experimental track upstream. The two apps coexist
on the same machine via distinct app identifiers, polkit actions,
and binary names.

Renames
- package + crate: mycellium-ui → mycellium-ui-private
- bundle identifier: tech.threefold.mycellium-ui-private
- daemon binary: mycelium-private (separate upstream release tarball)
- bootstrap wrapper: /usr/bin/mycellium-bootstrap-private
- polkit policy file + action id

Functional changes
- SidecarConfig.network_name field (UTF-8, 2..=64 bytes)
- start() refuses to spawn without a network name AND a 32-byte
  key file at app_data_dir/network_key.bin; surfaces a clear
  error rather than letting mycelium-private fail mid-startup
- network_key_status / generate / import / export / delete
  commands; uses OS RNG (rand) and writes 0600
- empty default peers list (no Threefold seed for private overlays)
- new Settings → Private network panel: name input, key generate /
  reveal-hex / import / delete, status indicator

Adapted bootstrap script kills both `mycelium` and
`mycelium-private` orphans (cross-clash on UDP/9650 + TCP/8990).

CI workflow + sidebar branding updated. The README explains the
divergence model and how to cherry-pick upstream fixes.
2026-04-27 01:37:07 +02:00
..

Releases — Mycellium UI Private

Pre-built .deb of the private-network desktop client. Designed to coexist with the public-network variant mycellium-ui on the same machine (different identifier, different binary, different polkit action).

Install

sudo apt install ./mycellium-ui-private_0.1.0_amd64.deb

apt install with a local path resolves runtime deps (pkexec | policykit-1, libwebkit2gtk-4.1-0, libgtk-3-0) automatically. Plain dpkg -i will fail if any of those are missing.

Tested on Debian 12 (bookworm) and Debian 13 (trixie).

Verify

sha256sum -c SHA256SUMS

What's inside

Path Purpose
/usr/bin/mycellium-ui-private GUI launcher
/usr/bin/mycelium-private Mycelium daemon (private-network track, v0.6.1, runs as root via pkexec)
/usr/bin/mycellium-bootstrap-private Cleanup wrapper invoked by pkexec
/usr/share/polkit-1/actions/tech.threefold.mycellium-ui-private.policy polkit action — auth cached per session (auth_admin_keep)
/usr/share/applications/Mycellium UI Private.desktop Menu entry

First run

  1. Open the app — sidebar pastille is grey (idle).
  2. Go to Settings → Private network at the top.
  3. Type a network name (UTF-8, 264 bytes — public, agreed with your peers).
  4. Click Generate 32-byte key, then Reveal hex to copy and share with the other nodes through a secure channel.
  5. Other nodes paste the hex into their Import field.
  6. In Daemon configuration, add at least one bootstrap peer.
  7. Click Start daemon in the sidebar — pkexec prompt the first time.

Without a network name AND a key file, the daemon refuses to start (the app surfaces a clear error).

Uninstall

sudo apt remove mycellium-ui-private

The user data (identity key, network key) under ~/.local/share/tech.threefold.mycellium-ui-private/ is preserved across reinstall. Remove it manually if you want a fresh start.