Skip to content

GUI Guide

bisu edited this page Sep 21, 2026 · 1 revision

GUI Guide

binary-inspector-gui is the native desktop companion to the CLI. It calls the same inspect entry point as the CLI, so every number it shows comes from the same parsing core — no separate parser, no execution, no network.

Launching

binary-inspector-gui

The window opens at 1180×800 (minimum 720×480), titled BinaryInspector — Safe ELF Analysis.

Opening a binary

  • Drag and drop an ELF file onto the window — a full-window overlay confirms the drop target.
  • Ctrl+O (⌘O on macOS) or the Open button opens the host-native file chooser (rfd; on Linux via the xdg-desktop portal, so xdg-desktop-portal + a backend must be running).
  • Recent files — the last 6 inspected files appear in the empty state for one-click re-open.

Views

A tab strip switches between eight views:

View Contents
Overview File identity, SHA-256, ELF header fields, sizes
Mitigations checksec-style cards: RELRO, NX, PIE, canary, fortify, RWX, RPATH
Symbols Virtualized .symtab + .dynsym table with search, filter pills (All / Functions / Objects / Imports / Exports), sortable columns, and a detail panel
Sections Virtualized section table with flags, sizes, entropy; per-section detail
Segments Program headers with R/W/X flags and file/memory sizes
Dependencies Interpreter, RPATH/RUNPATH, binding mode, DT_NEEDED list, dynamic tag table
Notes GNU Build ID, ABI tags, GNU property flags
Relocations Offset, type, target symbol, section, addend

Table ergonomics

  • Sort: click a column header (▲/▼ indicator; toggles direction).
  • Resize: drag the thin handle between headers; double-click a handle to reset that column; Reset Widths restores all defaults.
  • Search/filter: the symbol view has text search plus filter pills; match counts update live.
  • Detail panels: click a row name to pin a details panel. Esc closes the topmost panel (section → segment → symbol), then unloads the binary.
  • Copy buttons put names/addresses on the clipboard; the status line confirms each action.

Long loads

Inspection runs on a background thread, so the UI stays responsive. While a file is loading you can cancel; results — or a failure card with a categorized remediation hint — appear when the worker finishes. Loading is guarded so a second file queues behind or replaces nothing mid-flight: cancel or wait first.

Platform notes

  • Linux: Wayland and X11 are both compiled in (eframe features wayland, x11).
  • macOS / Windows: built by CI on every push (Native GUI build workflow) with artifacts and build provenance attestations.

See Building-from-Source to compile it yourself.

Clone this wiki locally