mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-07-18 08:56:41 +00:00
Address findings from code-reviewer + debugger-assistant + refactor-specialist multi-review on 8e1c47ebc2: - afterPack: read wrapper source before rename; on writeFile failure, roll the rename back so a broken intermediate state can't ship a package with no launcher. Strengthen idempotency check to require a shebang at binPath (both files alone no longer counts as "installed"). - wrapper: gate the X11 injection on \$SNAP_NAME = "superproductivity", not just \$SNAP set. An xdg-open from a sibling snap (e.g. Firefox) leaks \$SNAP into the child env, which previously would have silently forced XWayland on .deb/.rpm users. Derive BIN_DIR from \$SNAP directly when we are our snap, avoiding fragile \$0 resolution through snapd's wrapper chain. Stop argv scanning at -- so positional args that resemble --ozone-platform aren't misread as a user override. - app-control: point app.relaunch() execPath at the sibling shell wrapper instead of the default process.execPath (which is the renamed ELF and would bypass the flag injection on a relaunched Snap+Wayland instance). - Move build/snap-wrapper.sh -> build/linux/snap-wrapper.sh to match the existing build/linux/ layout convention. - Update research doc §18 to reflect the tightened predicate and the relaunch fix. |
||
|---|---|---|
| .. | ||
| assets/icons | ||
| ipc-handlers | ||
| scripts | ||
| shared-with-frontend | ||
| task-widget | ||
| backup.ts | ||
| clear-stale-idb-locks.ts | ||
| clipboard-image-handler.ts | ||
| common.const.ts | ||
| CONFIG.ts | ||
| debug.ts | ||
| electronAPI.d.ts | ||
| error-handler-with-frontend-inform.ts | ||
| full-screen-blocker.ts | ||
| gpu-startup-guard.ts | ||
| idle-time-handler.ts | ||
| indicator.ts | ||
| ipc-handler-wrapper.ts | ||
| ipc-handler.ts | ||
| jira.ts | ||
| local-file-sync.ts | ||
| local-rest-api.ts | ||
| lockscreen.ts | ||
| main-window.ts | ||
| main.ts | ||
| plugin-node-executor.ts | ||
| plugin-oauth.ts | ||
| preload.ts | ||
| protocol-handler.ts | ||
| proxy-agent.ts | ||
| shared-state.ts | ||
| simple-store.test.cjs | ||
| simple-store.ts | ||
| start-app.ts | ||
| tsconfig.electron.json | ||
| various-shared.ts | ||