6 Commits
Author SHA1 Message Date
JujuforceandClaude Opus 4.8 0057ede592 feat: add Windows right-click "Unpack with fsdecrypt" context menu
install-context-menu.bat / uninstall-context-menu.bat add a per-user (HKCU)
Explorer entry for .app and .opt files, with an embedded unpack icon
(assets/fsdecrypt.ico). No admin needed; the normal double-click association is
untouched. The registered command keeps the console open after extraction.
Documented in the README.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 14:56:45 +02:00
JujuforceandClaude Opus 4.8 a73f71e3de test: add e2e fixture decryption test
Decrypts real .app/.opt containers dropped into a git-ignored fixtures/ dir
(copied to a temp dir first so extraction never touches the fixtures), asserting
each produces a non-empty extraction. No-op when fixtures/ is empty, so the suite
stays green without the proprietary sample data.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 12:28:00 +02:00
JujuforceandClaude Opus 4.8 d92e4b5ba9 test: add unit tests and a local Docker test runner
- Unit tests for calculate_page_iv (incl. 8-byte wrap), calculate_file_iv round-trip, and game-key lookup
- Extract exfat_utc_offset_seconds and nt_timestamp_to_system_time as pure helpers and test them (covers the recent exFAT UtcOffset fix)
- scripts/test.sh runs cargo test + a smoke test natively, then repeats for the x86_64-musl target in a clux/muslrust container (no hosted CI needed)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 11:44:35 +02:00
JujuforceandClaude Opus 4.6 b0e97f8b00 docs: simplify README, reflect pure Rust extraction
Remove technical implementation details, keep it user-friendly.
Document delta update auto-detection, output folder naming,
and cross-platform support.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 16:40:18 +01:00
JujuforceandClaude Opus 4.6 c896f362ba feat: auto-merge delta VHD updates for APP containers
When multiple APP files are provided (base seq=0 + delta seq>0),
fsdecrypt now automatically links and merges the differencing VHD
into the parent using Set-VHD + Merge-VHD (Windows/Hyper-V only).
Triggers a single UAC prompt for elevation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 16:40:18 +01:00
JujuforceandClaude Opus 4.6 d4c4ba8d8d docs: add README
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 16:39:52 +01:00