Skip to content

PKForge 3.1.1 — Linux port 0.2.2 Preview

Pre-release
Pre-release

Choose a tag to compare

@DankMiimer DankMiimer released this 24 Oct 22:56
· 1 commit to linux since this release

PKForge v3.1.1 adapted for ARM64 ROCKNIX and KNULLI with a native .NET 10 / SDL2 / Skia host. This first public Linux release is a development preview, maintained by DankMiimer; original PKForge is by sofianeelhor.

Download and install

Download PKForge-v3.1.1-linux-0.2.2-dev-arm64.zip and extract it into your firmware's Ports directory:

  • ROCKNIX: /storage/roms/ports/
  • KNULLI: /userdata/roms/ports/

Keep PKForge.sh, PKForge Pokepark.sh and the pkforge folder together. Refresh the game list. PKForge opens Home; PKForge Pokepark opens the park directly. Close the emulator before editing a save.

For upgrades, close PKForge and preserve all of pkforge/userdata. The ZIP contains no personal data. OS power and lid settings remain unchanged.

Included

  • The v3.1.1 Poképark, with map, weather, social interactions, daycare, photos and animated sprite caching.
  • Native save library, Pokémon/Bank editing, organization, durable transfers/recovery, creation and reference tools, offline events and supported game-specific save tools.
  • RGDS dual-screen routing and touch; RG34XXSP single-screen gamepad navigation.
  • Steady Swellow flight and curled Donphan rolling animations, both owner-confirmed.

Tested and remaining limits

Reference hardware: RGDS with ROCKNIX 20261001 and RG34XXSP with KNULLI Scarab. Other ARM64 handhelds remain experimental. .NET 10.0.3 is bundled; SDL2, SDL2_mixer and system/graphics dependencies must be available in the firmware.

The desktop suite passes 1,898 tests and the workflow/animation harness passes 71/71 on each reference device. Historical 31-minute hardware runs met the 29.5 FPS warm park-only measurement gate. Wider format/editor acceptance and long-session memory stability remain open; this release does not claim complete v3.1.1 parity. RGDS lid resume passed owner testing; RG34XXSP retained its configured shutdown-on-close policy.

See the repository's FEATURE_COVERAGE.md, VALIDATION.md and LINUX.md for scope, controls and measured limitations. Official Android APKs remain available from upstream PKForge.

Source and integrity

The complete source ZIP includes the pinned PKHeX and AutoMod submodules, build scripts, source manifest and licenses. BUILDINFO.json records the exact port/upstream commits and toolchain. Verify downloads with SHA256SUMS.txt. GitHub's automatically generated source snapshots are separate from this complete source bundle.

Original PKForge, design and assets are credited to sofianeelhor and the upstream contributors. Code retains its upstream GPLv3-or-later licensing; bundled libraries and artwork retain their own notices and licenses.

Publication verification — 25 October 2026

The released ZIP is the unchanged output of GitHub CI run 40138896312, built from port commit 65f94d38848f25ee5135138af9b7855cc0b14ff1. Its SHA-256 is 0e7bf3ab2bc8e2d46445f1f3e4a216af9143e89d86db160aa36a7d8b233ac2d3.

This exact archive passed fresh ARM64 checks on both reference handhelds: headless Home, a 24-resident park render, and all 71 shared workflow/animation cases. These checks used isolated test data and did not replace personal installations or change OS settings. Earlier owner-confirmed physical controls/touch, RGDS resume and the Swellow/Donphan visual checks remain recorded in the validation ledger.

A fresh recursive clone built successfully. The complete source ZIP was extracted outside Git, verified all 15,714 source files, rebuilt both packages and passed all 1,898 tests. A deliberately changed source file was correctly rejected by its manifest. All 6,895 packaged assets matched their hashes; the binary contains no personal userdata.

Intermittent validation result

The first tag CI attempt observed one consistency assertion failure in the unchanged upstream LegalityAssistTests.SuggestionsRestoreLegalityOnTheBrokenCorpus: a preview reported an invalid result while a fresh analysis after applying the same stored bytes reported it valid. The test passed on the CI retry and in six further complete engine-suite runs (966 tests each), without weakening the released assertions or changing production code. The cause has not been established; this intermittent result remains an open validation limitation.