eject_idb v0.0.4 — maintenance release
eject_idb is an emergency IDB saver. It runs a background thread that waits for an external signal and
saves your database when IDA hangs or crashes, so you don't lose your work.
What's new
- 🐧🍎 Linux and macOS now work end-to-end. The plugin↔signaler channel was rebuilt on a portable named
semaphore, fixing the POSIX naming issue that kept previous builds from connecting outside Windows. - 🖥️ Per-platform behavior after the emergency save:
- Windows (unchanged): a dialog offers to forcefully exit IDA.
- Linux/macOS: no dialog (IDA's UI is presumed hung) — the plugin prints the ejected path and a
kill -9 <pid>hint to the terminal IDA was launched from; kill IDA manually.
- 📦 Installable via the IDA Plugin Manager (
hcli) — eacheject_plugin-v0.0.4-ida9.x.zipis a
ready-to-install package, validated across IDA 9.2, 9.3, 9.4. - 🛠️ Now builds on libidacpp (auto-fetched).
Install — plugin
Use the IDA Plugin Manager, or install manually: download
eject_plugin-v0.0.4-ida<your-IDA-version>.zip and extract it into your IDA plugins folder.
Standalone tool
eject_idb-tools-v0.0.4.zip contains the standalone signaler for every platform
(eject_idb-<os>-<arch>[.exe]) — pick the one matching your OS/arch and run
eject_idb "<full path to your idb>" to trigger the save from outside IDA.
Notes
- ARM64 (Windows/Linux): plugin binaries are bundled inside the zips as
eject_plugin_aarch64.*. The
Plugin Manager doesn't auto-select them yet (tracking HexRaysSA/ida-hcli#209) — install manually on ARM64. - The IDB path passed to the signaler must match IDA's exactly (full path).