CyberKit icon indicating copy to clipboard operation
CyberKit copied to clipboard

Integrate into stock Safari browser on iOS 15 and iOS 16

Open falchion10 opened this issue 1 year ago • 2 comments

This is more of a feature request. I was wondering if it would be possible to replace the system version of WebKit with CyberKit. I know this is theoretically possible on iOS 14 and below since there's no secure system volume protecting system files. On iOS 15 and 16 though would it be possible? I'm asking because as far as I know CyberKit in the form of MiniBrowser and Fennec can't support Safari extensions because it isn't actually Safari. I also believe MiniBrowser and Fennec can't be set as the default web browser, although there might be a tweak to fix this issue.

This is more of a future proofing request as the Safari versions in iOS 15 and iOS 16 work fine for now and most if not every website loads fine on them. This could look different a few years down the line though.

falchion10 avatar Jul 13 '24 19:07 falchion10

It's not a good idea to replace it

stuffed18 avatar Sep 08 '24 01:09 stuffed18

Fennec can't be set as the default web browser

Fennec can in fact be set as the default web browser. However, I believe you may need another unmodified third-party browser installed on the system for this to work properly, due to TrollStore installing apps as system apps.

I know this is theoretically possible on iOS 14 and below since there's no secure system volume protecting system files.

Is it though? The WebKit frameworks don't actually live in /System/Library/Frameworks and /System/Library/PrivateFrameworks like you might expect from reading the fakesigner script. They're really in the dyld_shared_cache, and it would be highly unsafe to even attempt to mess with that. (Keep in mind that #30 has been implemented at this point, so we're using the same name as the system framework. We can't just put it in these directories even on a rootful jailbreak (trust me, I tried), or else the system will never see CyberKit at all.)

On the other hand, I suppose the browser itself isn't, but what's the difference at that point? You might as well just make a clone of Safari with a different bundle ID at that point (although I don't know why you'd want to in the first place), which you could do on a rootless jailbreak as well.

UInt2048 avatar Oct 20 '24 23:10 UInt2048