143 Commits
Author SHA1 Message Date
Eva Isabella Luna 1eeab5c1ee Discontinued 2025-09-23 14:13:07 -06:00
43225 b8a0a0aaad Updated ReadMe.md (Linked the official Pojav guide, which has a list of ways JIT can be enabled on iOS/iPadOS 17.+) & added Additional information regarding the use of using a development certificate to sign Pojav (#785)
* Update README.md

* Update README.md

* Update README.md, added Wiki to ReadMe.md (regarding enabling JIT)
2025-01-14 17:39:05 -07:00
khanhduytran0 ec04885ce5 Feat: patch dylib for game dlopen calls
Now that game can directly load macOS's JNA native library,
libjnidispatch is removed.
2024-06-09 21:53:15 +07:00
Duy Tran Khanh 6fa34915e3 Update README.md (#650) 2024-02-05 19:24:14 +07:00
Eva Luna 4eeb216ec5 [JIT] Remove support for JitStreamer and custom servers
The official JitStreamer servers were shut down a few months ago, and we haven't seen any reports of users self-hosting it due to the complicated setup required. Viable alternatives are AltJit, SideJit, and Jitterbug (just to name a few.)
2023-07-15 02:45:33 -04:00
Eva Luna ab458a4599 Forgot the iPad Pros here 2023-07-03 23:34:43 -04:00
Eva Luna 8fd768ce8c Remove references to the /r/PojavLauncher subreddit. 2023-07-01 01:29:37 -04:00
Duy Tran KhanhandDuy Tran Khanh 8d6d66dd94 Feats: external runtime, update LWJGL to 3.3.1 (#579)
* Feat: external runtime manager

Currently missing: mmap hook

* we're past this ui todo

* feat: Bypass Library Validation (untested)

This bypass works because of JIT enabled, so the process can patch
anything loaded in the memory. Unsigned dylib works with JIT too.

* Fix `could not get real path` on iOS 14.x

iOS 15+ is untested, it may need patching in dyld instead of libSystem

* Make redirectFunction syscall-friendly

Replaced builtin_mprotect and vm_protect with a simple syscall to
_kernelrpc_mach_vm_protect_trap

* Add dyld hook back for iOS 15+, auto symlink xawt lib

* Cleanup Tools.java:showError+comments

Use System.exit(1) to drop to Game Exited screen instead of presenting
alert dialog on exception handled.

* Patch both to bypass codesigning at best

* Proper way of ignoring SIGBUS during patch

Turns out other background thread might also be calling inside dirty
page, so let's SIG_IGN them all until page permission is back to RX.

* Feat(install jar): auto detect java version

Rename Default version to Preferred version to match the behavior or
Install .jar detection: only override if selected version > required
version.
Add UnzipKit just to check jar file

Refactor(showDialog): remove viewController parameter, now use its own
ViewController to present.

* Feat: update LWJGL to 3.3.1
(tinygl4angle) add alias for GL_KHR_debug functions
Include nanovg for OneConfig mod
Move all LWJGLX classes to lwjgl3 repo
Set org.lwjgl.util.NoChecks=true to improve performance

* Fix: Forge 1.20 crashes (wrong artifact path)
Now use json-provided artifact path instead of generating one
Make lwjgl fat jar again

* Fix: handle null library artifact

* Fix: fatal glfw callback cleanup

* Build: fix copying LWJGL libraries

* Perf: set default settings

* Fix: incorrect SolClient useStackQueue check

* Feat: builtin runtime installer

Refactor parts of LauncherNavigationController.m
Workaround(LogView): disable animation on update to mitigate overload

* Fix: random game directory failures

This is caused by having current working directory unchanged after
re-making symlink.

* Fixes: TL-style artifact, update arc_dns_injector

Change pojavInit names

* Fix: 1.13+ isUseStackQueueCall check

* Build: update liblwjgl.dylib in attempt to fix ffi_closure_alloc

* Fix and improvements to the logger

- Dynamically get stdout/stderr fileno instead of fixed value
- Improve file migration logging
- Improve dyld bypass logging

* Fix(pickers): file permission issue

---------

Co-authored-by: Duy Tran Khanh <[email protected]>
2023-06-28 21:49:15 +07:00
Eva Luna df3c74a283 [README] Add tvOS support, iOS 17 note to readme 2023-06-22 00:45:02 -04:00
Eva Luna b7311975a1 Update Discord link 2023-06-22 00:35:41 -04:00
Eilionoir Tunnicliff 7e37dc567f Remove TOInsetGroupedTableView 2023-05-08 12:08:50 -04:00
Eilionoir Tunnicliff dc22673b06 Remove iOS 12/13 supporting code + Alderis
PojavLauncher 3.0 will require heavy modifications in order to work on those two iOS versions now.
2023-05-08 11:15:52 -04:00
Eilionoir Tunnicliff a10b052f8f Bump version
PojavLauncher 3.0 development begins now, with iOS 14.0+
2023-05-06 17:07:16 -04:00
Eilionoir Tunnicliff 54988b7799 Remove last references to Apple TV for now 2023-04-26 00:26:24 -04:00
Duy Tran Khanh 58bb3c2c45 Update java dependencies
Remove org.json (used by Java MSA, no longer used)
Update gson to 2.10.1 (may fix random issues, vulns)
2023-04-26 11:11:43 +07:00
Eilionoir Tunnicliff ce7047808f Update device support, push back Apple TV 2023-04-25 14:38:12 -04:00
Duy Tran Khanh 9183b1fecc Feature: show instance folder size
- Move AFNetworking to the separate dynamic library
2023-03-18 18:14:02 +07:00
Stella bc6c727163 Wording and grammar updates to README (#514) 2023-03-03 09:00:38 -05:00
Eilionoir Tunnicliff 97c7972f55 Requirements + tvOS things 2023-01-26 11:36:34 -05:00
Eilionoir Tunnicliff c5581e6342 README changes 2023-01-26 10:58:45 -05:00
Duy Tran Khanh fcc7d8b2d4 Fix(iOS 12): fatal issues: dlopen, entitlement
* dlopening the main executable fails
* dlopening dylib fails due to codesign
* Installing PojavLauncher with AppSync causing
extended-virtual-addressing entitlement to be checked improperly

Current issue: it seems that Java 8 is broken on iOS 12
2023-01-20 21:42:51 +07:00
khanhduytran0 b0203d6fc7 Text input for jar launcher, update lib, fixes
News
- Added text input support for jar launcher.
- Updated MoltenVK to https://github.com/KhronosGroup/MoltenVK/commit/d880f4c

Internal changes
- Added more handling cases to avoid missing call to pojav_initOpenGL()
- Moved custom control’s global functions and properties to ControlLayout.
- Moved dylib framework outside its folder, as it’s not necessary to be bundled in framework.
- Reusing custom controls to produce flexible buttons in jar launcher, which might be extended in the future.

Fixes
- Multistage text input (Japanese, Chinese, etc) should now work again.
- Pointer lock should now function properly again.

- Updated README.md to reflect current stuff
2023-01-19 09:54:55 +07:00
Duy Tran Khanh abe6141ea0 Update README.md regarding sideload methods 2023-01-15 05:28:50 +07:00
BigBoiMan123 c145f40666 fix typo (#466) 2022-12-26 02:44:57 -05:00
Eilionoir Tunnicliff 710c899b20 Update README.md 2022-12-18 03:08:25 -05:00
Duy Tran Khanh 6373662850 Update README.md 2022-12-17 21:38:02 +07:00
Duy Tran Khanh d0279af8aa Internal changes
- First changes for tvOS (very WIP) this will be a challenge to use
remote storage as ATV doesn't allow persistent storage (at least
without jailbreak). Low priority for now.
- Change regLog, debugLog to NSLog, NSDebugLog
- Rewrite most of JavaLauncher.m to ObjC
- Update README.md
2022-12-17 21:25:23 +07:00
Duy Tran Khanh 63d8dd6ee1 Update README.md
Corrected a typo
2022-12-05 17:50:52 +07:00
Eilionoir Tunnicliff 26120ca4e8 Formatting 2022-12-05 00:35:24 -05:00
Eilionoir Tunnicliff 23c648a7c1 Update README.md 2022-12-05 00:34:56 -05:00
Eilionoir Tunnicliff 2136a421ae Change OpenJDK credits 2022-12-05 00:32:01 -05:00
khanhduytran0 78b788262c Move LoginViewController to parts
- The account selector now has Add Account item
- Last selected account is kept
- Account token refreshment is done on startup and on select if need
- Moved JIT status to LauncherMenuViewController's toolbar
- Primary View Controller is now LauncherSplitViewController
- More unmentioned(?), see diff.
2022-12-04 11:41:54 +07:00
Eilionoir Tunnicliff 4bdccc8c81 Remove jailbreak repository credits 2022-11-14 18:12:39 -05:00
Eilionoir TunnicliffandDuy Tran Khanh c80f2022e4 Add AltJit support (#422)
* Integrate AltKit for JIT

* Bump min iOS to 12.2, delete AltKit-Swift.h

* Add title messages + prefer JitStreamer

* Tweaks to UI and order of operations

Co-authored-by: Duy Tran Khanh <[email protected]>
2022-11-14 17:06:25 -05:00
Duy Tran Khanh 838f99af1b Support external display resolution
TODO: add checks to not confuse with Stage Manager + external display

README.md: Added missing credits
2022-11-13 22:01:57 +07:00
Eilionoir Tunnicliff e6321546bd Remove jailbreak-specific install instructions 2022-11-08 13:10:11 -05:00
mariobrostech 121dbedfde Update README to include the new PojavLauncher URL (#410) 2022-10-31 12:11:09 -04:00
Duy Tran Khanh b806c5df3c Many changes and fixes
Changes:
- Decreased multithreaded download max threads to 10
- Moved launcher buttons to match Android UI
- Moved UIKit hooking code to separate file
- The Launcher tab is now marked as under construction.
- Updated README.md to avoid confusion between self-JIT and auto-JIT.

New settings section: UI debugging
- Unlock iPadOS UI: allow iPhone users to unlock every iPadOS-only
features (floating keyboard, popover alert, sheet-styled view
controllers, etc.)
- Show layout bounds, like the one in Android's developer setting
- Show layout overlapping

Fixes:
- App container data is not shown in the Files app due to
`no-container` entitlement, replaced it with `no-sandbox`.
- Ignore jinput-platform libraries to avoid download error
- Multithreaded assets download breaks
- `Send your logs` crashes on iPadOS
2022-09-22 09:52:56 +07:00
Duy Tran Khanh 32e3313162 Update README.md 2022-09-12 19:33:53 +07:00
Duy Tran Khanh bbc8e276eb Update README.md 2022-09-11 11:47:28 +07:00
Duy Tran Khanh 20bd84a203 Update README.md
- Added Crowdin badge
- Recommend to install through TrollStore
2022-09-10 20:52:23 +07:00
Duy Tran Khanh b23678692a Merge commit 'e1bd237d69f7ad95b0fa01c629a62f5880cf9943'
Conflicts:
	.github/workflows/development.yml
	.github/workflows/release.yml
	Makefile
	Natives/main.m
2022-08-30 17:02:07 +07:00
Duy Tran Khanh 78ccff8f16 Update #Contributors + Customizable resolv.conf 2022-08-30 11:02:03 +07:00
Duy Tran Khanh ec1afe94ca Integrated JitStreamer attach on startup 2022-08-27 17:07:12 +07:00
khanhduytran0 5c4b672d22 Update submodule list 2022-08-18 08:24:41 +07:00
Duy Tran Khanh 3658d8ccb3 Update README.md 2022-08-11 21:18:06 +07:00
Eilionoir Tunnicliff 26f849b3e2 Add MacStadium banner
Required for the Open Source program that they allowed us to enter
2022-08-05 13:37:07 -04:00
khanhduytran0 97433a5596 Add support for mods that use Vulkan for rendering
Known mods: Blaze4D (untested), VulkanMod, more?
- VulkanMod: needs a tiny modification to get it work with LWJGL 3.2.3
2022-06-10 12:13:23 +07:00
Duy Tran Khanh c0c7ac5931 Update README.md for current changes 2022-06-10 11:43:05 +07:00
Duy Tran Khanh 6f58d26a9a Merge branch 'main' into objc-rewrite 2022-06-10 11:38:24 +07:00