Dev server now runs at http://seedit.localhost:1355 via portless reverse proxy instead of a random port. Updates electron dev URLs and wait-on targets to match. Contributors can bypass with PORTLESS=0.
Co-authored-by: Cursor <cursoragent@cursor.com>
Updated build-docker.sh to use Electron Forge instead of electron-builder, switched from electronuserland/builder image to node:22, and removed electron-builder-specific commands. Added architecture-specific build scripts (linux:x64, linux:arm64, mac:x64, mac:arm64) to package.json for CI workflow. Removed outdated electron-rebuild comment from release.yml.
Migrated build system from electron-builder to Electron Forge with new configuration in forge.config.js. Replaced manual IPFS binary downloads with kubo npm package, updating start-ipfs.js to resolve binaries from node_modules. Simplified CI workflows to use new build scripts and verification helpers. Added scripts to find and verify executables in Forge output directory.
We hardened Linux startup to prevent mixed GTK crashes some GNOME users hit. We now default Electron to X11 and sanitize common GTK injectors, and disable the tray by default on Wayland with an opt-in flag. Should make AppImage start reliably without user tweaks.
Replace ensurepip with setup-python on macOS-14; build and publish arm64/x64 variants for mac/linux/windows; select IPFS binaries by target arch (with SEEDIT_BUILD_ARCH override); generate cleaner OS-grouped release notes from actual dist artifacts.
Reduce production logging and I/O by avoiding main-process console.log/debug file writes, setting GOLOG_LOG_LEVEL=error and stopping IPFS daemon stdout piping in production, and disabling devtools in packaged builds; additionally build mac artifacts per arch and fetch matching IPFS binaries to avoid emulation overhead. These changes address lag in release builds across OS caused by log-induced stalls and architecture mismatch.
On desktop or android, the user can drop or select a media file in the upload box, which automatically uploads it to catbox.moe in the background, and pastes the direct link to the media in the url field.