fix(staging-build): unblock Windows compile + diagnose Linux AppImage bundler (#1591)

This commit is contained in:
Steven Enamakel
2026-05-12 23:04:43 -07:00
committed by GitHub
parent 4a36b4fed4
commit b14303682e
2 changed files with 33 additions and 17 deletions
+31 -16
View File
@@ -159,22 +159,10 @@ jobs:
libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \
libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \
libgbm1 libpango-1.0-0 libcairo2 libatspi2.0-0 libxshmfence1 libu2f-udev
- name: Dump missing shared libs (debug)
if: matrix.settings.platform == 'ubuntu-22.04'
shell: bash
env:
PROFILE: ${{ inputs.build_profile }}
MATRIX_TARGET: ${{ matrix.settings.target }}
run: |
set +e
for BIN in \
"app/src-tauri/target/${MATRIX_TARGET}/${PROFILE}/OpenHuman" \
"target/${MATRIX_TARGET}/${PROFILE}/OpenHuman"; do
if [ -x "$BIN" ]; then
echo "ldd $BIN"
ldd "$BIN" | grep 'not found' || echo " all resolved"
fi
done
# NOTE: The post-build dump lives further down (after `cargo tauri build`)
# so the binary actually exists when ldd runs. Running it here pre-build
# silently no-op'd and gave us no signal during the
# quick-sharun "missing libraries" failures.
# Skip first 7 lines of Cargo.lock (workspace package version bumps) so the key tracks dependency changes only
- name: Cargo.lock fingerprint (deps only)
@@ -422,6 +410,33 @@ jobs:
# on macos-arm64 runners, causing OOM at node's ~2GB auto default.
NODE_OPTIONS="--max-old-space-size=8192" cargo tauri build $PROFILE_FLAG -c "$TAURI_CONFIG_OVERRIDE" $MATRIX_ARGS
# Diagnostic for the recurring quick-sharun "is missing libraries!
# Aborting..." error on the AppImage bundler — the upstream script
# only prints a generic banner and swallows lib4bin's actual output,
# so we have no visibility into which .so is unresolved. `if: always()`
# ensures this still runs when `cargo tauri build` failed at bundling
# (the binary itself is produced before bundling starts).
- name: Dump linked libraries of built binary (ubuntu debug)
if: always() && matrix.settings.platform == 'ubuntu-22.04'
shell: bash
env:
PROFILE: ${{ inputs.build_profile }}
MATRIX_TARGET: ${{ matrix.settings.target }}
run: |
set +e
for BIN in \
"app/src-tauri/target/${MATRIX_TARGET}/${PROFILE}/OpenHuman" \
"app/src-tauri/target/${MATRIX_TARGET}/${PROFILE}/bundle/appimage_deb/data/usr/bin/OpenHuman" \
"target/${MATRIX_TARGET}/${PROFILE}/OpenHuman"; do
if [ -x "$BIN" ]; then
echo "==> ldd $BIN"
ldd "$BIN" || true
echo "==> unresolved:"
ldd "$BIN" | grep 'not found' || echo " (all resolved)"
echo
fi
done
# Regression guard for #1403: if @sentry/vite-plugin silently no-op'd
# (e.g. SENTRY_AUTH_TOKEN missing, or the `sourcemaps.assets` glob
# didn't match dist/assets) production events arrive in Sentry as
+2 -1
View File
@@ -23,7 +23,8 @@ pub(crate) fn is_ollama_installer_running() -> bool {
// CPU/memory/disk/network. refresh_all() adds dozens of milliseconds of
// blocking I/O on a loaded Windows machine and this function runs on the
// async executor inside download_and_install_ollama.
sys.refresh_processes(ProcessesToUpdate::All);
// sysinfo 0.33 added a second `remove_dead_processes` parameter.
sys.refresh_processes(ProcessesToUpdate::All, true);
sys.processes().values().any(|p| {
p.name()
.to_string_lossy()