56 Commits
Author SHA1 Message Date
Roman Tarasov e30a296a53 Add autopause.txt per-game delay overrides for kstuff auto-pause 2026-03-22 20:49:28 +03:00
Roman Tarasov b374c3163e Add runtime config hot-reload 2026-03-22 20:25:08 +03:00
Roman Tarasov a71a03d0db Probe kstuff availability at auto-pause time instead of startup 2026-03-22 19:20:21 +03:00
Roman Tarasov 56e8ba2185 Prefer valid installed sources when resolving duplicate title IDs 2026-03-22 19:04:55 +03:00
Roman Tarasov 18a97ecca9 Refactor directory candidate collection into focused scan helpers 2026-03-22 18:43:53 +03:00
Roman Tarasov 270264cc75 Detect unreadable image mounts and report them as damaged images 2026-03-22 18:28:36 +03:00
Roman Tarasov ef814ad56b Unify scan and watcher tree traversal with a shared scan walker 2026-03-22 17:54:58 +03:00
Roman Tarasov cec94656c6 Cache owning scan roots for game entries and simplify targeted backport reconciliation 2026-03-22 17:29:47 +03:00
Roman Tarasov 4ff9a3dffe Optimize scanner watcher registry with fd indexing and per-root watch lists 2026-03-22 17:21:15 +03:00
Roman Tarasov fe7dad099c Optimize scanner watcher rebuilds to refresh only affected subtrees 2026-03-22 16:20:26 +03:00
Roman Tarasov c02f237ddf Cache mounted games when app.db title list is temporarily unavailable 2026-03-22 15:53:02 +03:00
Roman Tarasov d318b5e607 Refactor scanning to use kevent-driven dirty roots, debounce filesystem events, run targeted per-root cleanup and discovery, and support bounded scan_depth traversal for nested directories and image files 2026-03-22 15:39:31 +03:00
Roman Tarasov 6f97cde602 Remove redundant internal guard checks 2026-03-22 13:56:09 +03:00
Roman Tarasov edcac6bdd7 Refactor scanning into a scanner service, replace main loop sleep polling with kevent/wake-pipe waiting, and keep polling as a runtime fallback 2026-03-22 13:13:52 +03:00
Roman Tarasov 27feba2085 Add bounded scan_depth with recursive_scan compatibility remap
Add scan_depth config, remap legacy recursive_scan=1 to scan_depth=2, and avoid duplicate traversal of nested scan roots
2026-03-22 12:43:55 +03:00
Roman Tarasov 82603fce7d Fixed waiting for images to stabilize 2026-03-22 12:09:05 +03:00
Roman Tarasov 124e757199 Disable kstuff auto-pause when kstuff is not installed 2026-03-16 20:44:34 +03:00
Roman Tarasov 0fcc970a20 Create /data/.kstuff_noautomount 2026-03-16 01:18:56 +03:00
Roman Tarasov 3166434db1 The start notification has been fixed and its sound has been disabled. 2026-03-15 12:27:11 +03:00
Roman Tarasov c785daaddf Changed image mount directory to /mnt/shadowmnt 2026-03-14 23:41:28 +03:00
Roman Tarasov 2db6b49439 Fix /dev/lvd attach 2026-03-14 23:18:19 +03:00
Roman Tarasov aff2fc0e6c Remove stale duplicate-tracking entries when sources disappear 2026-03-14 20:08:29 +03:00
Roman Tarasov ae36dd5871 unionfs options 2026-03-13 02:57:57 +03:00
Roman Tarasov a212a883b3 1.6b4 2026-03-10 02:24:03 +03:00
Roman Tarasov 93071924b5 wait /dev/lvd1 -> /dev/lvd2 2026-03-04 23:47:40 +03:00
Roman Tarasov 47e47477d1 Add macOS exFAT image builder and improve LVD startup wait handling 2026-02-28 20:21:46 +03:00
Roman Tarasov 31c28e1896 Block mounting of images with too small a cluster size. 2026-02-27 22:20:16 +03:00
Roman Tarasov c1f34ffa22 Version bump 2026-02-27 01:09:34 +03:00
Roman Tarasov 851c269647 v 1.6beta2 Stabilization of registration
Wait for /dev/lvd1 to be freed to avoid remounting after closing y2bj
The number of game registration attempts has been increased to 2x
The backport is mounted only after successful registration to ensure its successful completion. If you delete a game with a backport, re-registration will only occur after a reboot.
2026-02-27 01:07:49 +03:00
Roman Tarasov c9b3415048 Fixed instant game mounting 2026-02-25 04:05:03 +03:00
Roman Tarasov 11b32a97cf 1.6test2 Restored nullfs mounting 2026-02-23 23:50:10 +03:00
Roman Tarasov a43401391d 1.6test1
Added backport support for images from /data/backports/<TitleID>.
Image mount folder layout has been standardized to /data/imgmnt/<FS>mnt/<filename>
2026-02-23 20:44:07 +03:00
Roman Tarasov 0f7bc24928 Add "force_mount" option 2026-02-23 02:35:29 +03:00
Roman Tarasov 3f81ae589f 1.5beta6 Refactor image mount flow, add per-image RO/RW overrides, and improve mount error reporting
- Rename mount base from /data/ufsmnt to /data/imgmnt
- Add per-image mount mode overrides via config:  image_ro=<filename>, image_rw=<filename>
- Improve mount failure notifications.
- Optimize stale-link recovery path.
2026-02-23 01:16:35 +03:00
Roman Tarasov 32ae0c9c50 Improve startup debug logging flow 2026-02-22 13:35:15 +03:00
Roman Tarasov 5564b4396d v. 1.5beta5 Improve mount lifecycle recovery and link cleanup
Added stale mount.lnk cleanup logic for /user/app/* entries, including broken links and invalid sources.
Added automatic remount recovery: if a previously mounted image becomes inactive while the image file still exists, retry mounting.
Added optional cleanup of related /system_ex/app/<TITLE_ID> nullfs bind mounts when unmounting an image source.
Added debug log rotation on startup
2026-02-22 12:52:49 +03:00
Roman Tarasov 896e5af0fd Fix RO/RW mount flag mapping and kstuff loader mount-link handling 2026-02-22 02:35:36 +03:00
Roman Tarasov eb2a4c1036 Fix source stability checks to avoid false wait/skip loops 2026-02-21 05:50:15 +03:00
Roman Tarasov 8f34cabb20 v 1.5beta3
Optimized mounting parameters
Automatic param.json correction
Extended error diagnostics output
Optional recursive folder scanning (slower)
Automatic disk image size calculation in creation scripts
Fixed exFAT image creation on Windows
Expanded documentation, examples, and troubleshooting guidance
2026-02-21 04:40:44 +03:00
Roman Tarasov 2002b0b5b1 1.15beta2 2026-02-18 01:13:46 +03:00
Roman Tarasov d45db45e45 Typo 2026-02-17 05:30:15 +03:00
Roman Tarasov 6393b2f7e0 1.5beta release 2026-02-17 05:19:02 +03:00
Roman Tarasov 7db8e72604 pfs (savedata) 2026-02-16 23:12:02 +03:00
Roman Tarasov af64dd1967 exFAT was switched to LVD, mount retry attempts were limited, and image creation documentation was added. 2026-02-16 01:50:05 +03:00
Roman Tarasov 264c555516 Ignore stale /data/ufsmnt directories after unmount by scanning only active image mount points (/dev/lvd*//dev/md*) in candidate counting and path scan routines. UFS mount profile - DownloadData 2026-02-15 01:50:02 +03:00
Roman Tarasov f23ab55289 Docs 2026-02-14 10:49:16 +03:00
Roman Tarasov 8e17da3be0 Fixed read-only mounting for UFS/PFS. 2026-02-14 09:41:16 +03:00
Roman Tarasov f2d7eb3491 Evolution 2026-02-14 05:47:31 +03:00
Roman Tarasov 428856cd89 bugfixes, revert 512 md sector size 2026-02-13 21:58:12 +03:00
Roman Tarasov 2a764e3ad6 Update main.c 2026-02-13 10:42:35 +03:00