Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about intergrating into other ROMs #22

Open
ethical-haquer opened this issue Aug 5, 2024 · 5 comments
Open

Question about intergrating into other ROMs #22

ethical-haquer opened this issue Aug 5, 2024 · 5 comments

Comments

@ethical-haquer
Copy link

Is there a guide somewhere on how to add support for this to LOS-based ROMs?
Or is it currently not possible?
TIA.

@phhusson
Copy link
Owner

phhusson commented Sep 2, 2024

Here are the instructions that I've given to other device-specific ROM devs:
Overlay in frameworks/res:
com.google.android.iwlan
com.google.android.iwlan
com.android.telephony.qns

Overlay in packages/services/telephony
me.phh.ims

Added packages:
Iwlan QualifiedNetworksService

References:
TrebleDroid/device_phh_treble@0126152
https://github.com/TrebleDroid/vendor_hardware_overlay/blob/pie/Telephony/FLOSS-IMS/res/values/config.xml

I think that's all. And then you'll need to install the floss ims apk, https://treble.phh.me/floss-ims-16.apk (source at https://github.com/phhusson/ims ). After that it's a tiny bit fuzzy since my Treble App does some things, so let's try this:
Set persist.dbg.volte_avail_ovr persist.dbg.wfc_avail_ovr and persist.dbg.allow_ims_off to 1. This should probably enable "Wifi calling" and "4g calling" in the settings. Tick them. See what happens from there. Notably in ip address you should see an ipsec interface. If you don't, create a new APN called "ims" and type "ims", reboot, reinstall the floss ims apk, and check again `ip address". If there is still no ipsec interface, something's up.
If you do see an ipsec interface, well try to send a sms and see what happens

@ethical-haquer
Copy link
Author

@phhusson
Thanks for the reply!
I've never built a ROM before, but I thought I'd ask how you'd go about implementing this into a ROM, as it would be nice if more ROMs used this for Samsungs. I really appreciate your work on this!

@vindicatorr
Copy link

I'm working through this as well, and something I've encountered is the need for the package to be signed: No APK Signature Scheme v2 signature in package /system/system_ext/priv-app/ims/ims.apk

I see build.sh signs with the keys provided in this repo, and just to be thorough, I signed it with those, but that isn't accepted either: Failure [INSTALL_FAILED_SHARED_USER_INCOMPATIBLE: Reconciliation failed...: Reconcile failed: Package me.phh.ims has no signatures that match those in shared user android.uid.system; ignoring!]

So that got me to finding about the ability to resign everything in the GSI (key is framework-res.apk). I'm not done yet, to see if that does it. It's the "de-odex"ing that I'm exploring first: https://stackoverflow.com/questions/9475576/resigning-system-img-on-a-device

@phhusson
Copy link
Owner

phhusson commented Nov 1, 2024

You're trying to install it in a ROM you're building yourself, or in someone else's ROM? You would need to resign full system.img only in the later case

@vindicatorr
Copy link

Yeah, it's the latter (Google's AOSP w/GMS GSI).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants