Repository navigation
Releases
v1.2.2
Found while reading a sibling project,
JipZeonGit/codebuddy-ide-cn-linux.
Two of its observations transferred directly; the rest of it did not, because
this repository already handles native modules more thoroughly.
Fixed
- 296 MB of non-Linux payload was being shipped.
native-modules.shdeleted
thedarwin-*/win32-*trees in Phase 1 and then reinstallednode-pty
from npm in Phase 3, which copies the whole published module back — prebuilds
and all. The purge ran before the step that undid it. A final sweep (Phase 5)
now runs after everything else: 918 MB → 621 MB, 15 trees, 303,592 KB.
WB_KEEP_FOREIGN_PLATFORM=1opts out. - Package dependencies were incomplete. All three formats declared only
GTK/NSS/XSS/asound/secret/xkbfile, silently omittinglibnotify4
(notifications),libxtst6(synthetic input),libatspi2.0-0(accessibility),
libuuid1andxdg-utils. They now match what Tencent's own Linux build
declares, witht64andayatanaalternatives so one stanza works from
Ubuntu 22.04 through 26.04.libayatana-appindicator3-1is now recommended —
without AppIndicator a GTK tray icon cannot appear at all.
Added
docs/upstream-linux-builds.md— Tencent now publishes official Linux
packages for the China edition (5.6.2.40046327: x86_64.deb, x86_64
.rpm, arm64.deb), with the verified URLs, sizes and control metadata.
The international channel still has none, which is why this project exists.
Changed
- The README no longer claims "WorkBuddy does not ship a Linux desktop build."
That is true only of the international edition. Visitors with a Chinese
account are now sent to the official packages instead.
Installation
curl -fsSLO https://github.com/mhzsajan/workbuddy-linux/releases/download/v1.2.2/install-workbuddy.sh
chmod +x install-workbuddy.sh
./install-workbuddy.sh /path/to/WorkBuddy.dmg # or .zipThese assets contain the build toolchain only. The converted
application is produced locally from an official WorkBuddy macOS
archive that you obtain from Tencent yourself, because its payload
is Tencent's proprietary app.asar and is not redistributed here.
v1.2.1
A documentation release. No converter code changed; this records the first
end-to-end run through packaging and installation, which 1.2.0 only claimed.
Added
docs/verification.md— the full evidence trail for one real run: the input
archive and its checksum, the 918 MB converted tree, the 279 MB.deb, the
dpkg -ioutput, and the runtime log proving the app talks to
www.workbuddy.ai. Also states plainly what was not verified (tray icon,
.rpm/.pkg.tar.zst, ARM).
Fixed
- README no longer implies the tray icon works on 5.9.4. It is a known
limitation, not a silent failure.
Installation
curl -fsSLO https://github.com/mhzsajan/workbuddy-linux/releases/download/v1.2.1/install-workbuddy.sh
chmod +x install-workbuddy.sh
./install-workbuddy.sh /path/to/WorkBuddy.dmg # or .zipThese assets contain the build toolchain only. The converted
application is produced locally from an official WorkBuddy macOS
archive that you obtain from Tencent yourself, because its payload
is Tencent's proprietary app.asar and is not redistributed here.
v1.2.0
Adds the international edition, which is the only way to get a
desktop client that authenticates outside mainland China.
Added
- ZIP input. The international channel publishes
.zip, not.dmg.
resolve_input_path,resolve_app_bundleandpreflight.shnow accept
either, with aPKmagic check so a truncated download fails immediately
instead of insideunzip. - Electron mirror fallback.
github.comis unreachable on some networks,
which aborted the runtime download outright. The downloader now tries the
official release URL and then npmmirror's copy of the same artifacts. CHANGELOG.md, release automation, and a self-contained bootstrap installer.
Changed
- 7-Zip is now only required for DMG input. ZIP input goes through
unzip,
so a machine without 7-Zip can complete a full build. Previouslycheck_deps
rejected such a setup before it ever looked at the input type. - Linux patches degrade instead of aborting. The env shim and the cosmetic
tray/window patches used to be all-or-nothing: one missing anchor killed the
build. The shim (the patch that actually makes a window appear) stays
mandatory; the tray menu, tray icon and window-frame patches now emit a loud
warning and are skipped when the payload is newer than the anchor set. - The launcher picks the Ozone platform from
WAYLAND_DISPLAY/DISPLAY
instead of--ozone-platform-hint=auto.
Fixed
pick_app_bundlecould select an AppleDouble shell. ZIP archives carry a
__MACOSX/tree whose entries can be named*.app; that shell has no
Contents/Info.plistand conversion failed much later with a poor message.
It is now pruned, bundles without a manifest are rejected, and the shallowest
bundle wins so Electron's ownContents/Frameworks/* Helper.appentries can
never be mistaken for the application.- Every build failed with
APP_DIR: unbound variable. An unescaped
$APP_DIRinside the generated-launcher heredoc was expanded byset -u
while writingstart.sh, aborting after the expensive steps had already run. Missing X server or $DISPLAYon Wayland-only sessions.
--ozone-platform-hint=autoresolves to X11 wheneverDISPLAYhappens to be
set, and then aborts on a session that has no X server (typical over SSH).
Verified
- Converted
WorkBuddy-darwin-x64-5.9.4.42593613(504,460,931 bytes) on Ubuntu
26.04 x86_64: Electron 37.10.3, bundle idcom.workbuddy.workbuddy-ai,
174 MBapp.asar. The result fetcheshttps://www.workbuddy.ai/v3/config
(200) and emits an international login URL, confirming it is the
international client rather than a China build repointed at a new host.
Installation
curl -fsSLO https://github.com/mhzsajan/workbuddy-linux/releases/download/v1.2.0/install-workbuddy.sh
chmod +x install-workbuddy.sh
./install-workbuddy.sh /path/to/WorkBuddy.dmg # or .zipThese assets contain the build toolchain only. The converted
application is produced locally from an official WorkBuddy macOS
archive that you obtain from Tencent yourself, because its payload
is Tencent's proprietary app.asar and is not redistributed here.