heroic (2.22.1-1sharedpair1) resolute; urgency=medium

  * Package immutable upstream release v2.22.1 as an application-only launcher.
  * Use the separately maintained, bounded Electron 43 runtime, matching the
    line upstream declares (devDependencies.electron ^43.1.1) and builds this
    release on. The application ships no native addon at all, so no ABI pins
    the runtime; 43 is chosen because it is the line upstream tests.
  * Retain the four Linux store clients and the two Wine-prefix shims upstream
    vendors, each verified byte-for-byte against the release asset its own
    project published: legendary 0.21.0 (GPL-3.0), gogdl v1.3.0 (GPL-3.0),
    nile v1.2.0 (GPL-3.0), comet v0.2.0 and its GalaxyCommunication shim
    (Apache-2.0), and heroic-epic-integration v0.4's EpicGamesLauncher shim
    (MIT). They are excluded from dh_strip, dh_dwz and dh_strip_nondeterminism
    so the installed copies stay identical to those releases — the last of those
    rewrites ZIP member timestamps and had silently altered legendary — and the
    digests are re-verified in dh_builddeb, after every step that can rewrite a
    file.
  * Resolve the resource tree as a packaged installation. Electron reports
    app.isPackaged false when started with an application path, so unpatched
    Heroic looks for its icon, renderer entry point and store clients under
    <app>/public instead of <app>/build, creates no window at all, and applies
    its dev-server navigation policy to both navigation guards.
  * Replace upstream's vulkan-helper. Upstream ships a prebuilt ELF committed
    into its repository in 2023 with no release, tag, or recorded source
    revision; this package compiles the MIT source it came from
    (imLinguin/vulkan-helper-rs at b2fdbab594dc4d41987fcdcdb893c7441d804550)
    so every binary in the payload is traceable.
  * Stop the self-updater: default checkForUpdatesOnStartup to false, drop the
    electron-updater call at window creation, hide the update setting, and omit
    app-update.yml. APT owns installed updates.
  * Drop the macOS and Windows icon sources, which are electron-builder inputs
    referenced by nothing at runtime on Linux.
  * Declare python3, which the legendary and gogdl zipapps require, and keep
    Wine a Recommends: the launcher is fully usable without it.

 -- Shared Pair <packages@sharedpair.dev>  Sun, 06 Sep 2026 19:20:00 -0600
