[Galaxy S I9000 Android Development] xc-racer99:
Code:

/*
* Your probably long expired warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you
* and point my finger right back at you.
*/

What is this ROM/thread?

This is a port to the i9000 of my work for the SGH-T959P which is the Telus version of the Galaxy S. I initially started work on AOSP to see what exactly needed to be changed from AOSP to work on my device. I had a request for access to an i9000 build hence I created this thread. This is also a place to discuss using my source code to build other ROMs and/or improve it. This is not a place for a general development "How do I build a ROM?" questions - there are plenty of guides on XDA and elsewhere that say how to do this. Since I don't have an i9000, I probably can't reproduce your bug unless it is common on my device as well. As such, I will be able to provide very limited support, so if you have any concerns about your phone bricking, do not flash anything from this thread!!

Installation Instructions

You should be able to flash this from any MTD rom, but it probably works best from a 6.0 or 7.x based ROM. Root does not come pre-installed, instead you need to manually install. Due to our odd partition system, please see http://xdaforums.com/showpost.php?p=69245956&postcount=3 for instructions.

Things to Take Note Of

If you decide to install gapps at a later date (ie after you've installed the ROM), you must do a factory reset first - otherwise you will get force-closes upon bootup

This build is very close to the official AOSP source code. Recovery is TWRP but otherwise there aren't any added "features" - nor will I add any as this is

Gapps eat up about an extra 30MB of RAM so they slow down the device - tread carefully. Opengapps pico should work just fine but are untested

Backup Backup Backup! I'm not responsible for you losing any data or anything else that could go wrong.

Working on my variant

Camera (built-in app needs workaround, see below)

RIL

SMS

Wifi

Vibration

Automatic Brightness

Compass

GPS on T959P

Headset Buttons

Partially working

Bluetooth - first time trying to enable won't work, back out of the Settings page, re-enter it and try enabling again. It should work this time...

Camera and Browser apps need to have all their permissions manually enabled through settings for full functionality. This is because I've used the older Camera app (which hasn't been updated for dynamic permissions) and the older Browser app as the new one is simply a test shell with no features (thanks Google!)

What doesn't

TWRP build is currently broken. To work around this, replace the ramdisk-recovery.img in the zip with the one from CM14.1

SElinux is currently in permissive mode. Still missing are the GPS sepolicies plus the LVM ones. If someone sends me a dmesg, I might be able to change this...

What's been removed

TV-Out - It was removed upstream plus I think binary blobs would need a ton of shimming in Lollipop+ Please do not ask me to implement this, I've tried several times and failed miserably each time.

I haven't actually verified that this boots as I don't have this specific variant!!!

XDA:DevDB Information

AOSP 7.1 ROM/Discussion, ROM for the Samsung Galaxy S I9000

Contributors

xc-racer99, Coldwindofnowhere

Source Code: https://github.com/xc-racer99/

ROM OS Version: 7.x Nougat

ROM Kernel: Linux 3.0.x

ROM Firmware Required: Android 6.0

Based On: AOSP

Version Information

Status: Testing

Created 2016-12-21

Last Updated 2016-12-20