[Galaxy S 4 i9505 Original Android Development] -+BB+-:
General Info & Changelogs

Reporting issues

Please report issues in our issue tracker: https://github.com/AOSP-JF-MM/issue_tracking_aosp/issues

Things like "this doesn't work", "this keeps FCing", "found a bug: *someapp* FC" etc. don't help. We need logs!!!!!!

Do not report bugs if you:

Flashed a different kernel

Installed or did mods from untrusted sources

Installed Xposed

Modified system files

Changelog

20170312 - Stable 2

MD5 - 296c92872b04d43d60ad9a9814c738ae

Kernel

General code updates

f2fs: update driver to 3.18.y

exFAT: update, fix and enable kernel driver

sdcardfs: general bug fixes

Ported binder changes from dorimanx kernel

Fixed f2fs issues with SuperSU

Disable CPUSET code and allow kernel to dist CPU PWR

Update TC to Linaro GCC 6.3.0

ROM

Update sources to Android 7.1.1 release 26

JFLTE: exfat: use kernel driver

SuperSU: update to v2.79 SR3

Substratum: update to v604

JFLTE: update webview to v57.0.2987.54 Beta

Updated ROM TC with latest Linaro patches

APNs updates

Rebased all repos with latest CAF N-MR1 branches

Base: added One-Hand mode UI (compatible with HW buttons)

Settings: add HW buttons light controls

Fixed a weird random bug that sometimes keep HW buttons light on when the screen is off (and kill deep sleep)

JFLTE: fixed camera

JFLTE: fixed reboot

Settings: fixed USB Tethering

OMS/Substratum: move to rootless

OMS: Expose more colors

JFLTE: Bluetooth: disable absolute volume

HW buttons customisations: added more functions (split screen and one hand UI)

Settings: Developer Options: OMS: add an option for allow theme app from unknown sources

Settings: Developer Options: added an option for kill app with long-press of back button

Cleaned tons of unused/unwanted CAF changes

Gemini: added "swap buttons" function

Gemini: added "use fingerprint as home button" feature

Gemini: update graphics blobs from revision LA.UM.5.5.r1-02500-8x96.0

msm8996: audio/media/display: rebased from CAF revision LA.UM.5.5.r1-02500-8x96.0

Gemini: Camera: enable HAL3 (fixes video recording issues and Google Camera)

JFLTE: update graphics blobs from flo mob30x

Toolbox: fixed for systemless root

A lot of things that i don't remember

20161212 - Beta 3

MD5 - 2d9323e55ded7227e22adc3d2e7e605e

Kernel

Back to v1.5 (Fixes freeze when screen is off experienced in some variants)

ROM

Fixed a NPE in setup wizard

Settings: Enable storage manager like Pixel devices

base: tuner: enable navbar config + added more icons

webview_packages: prefer the more powerful webview package installed

Gemini: build power HAL

Gemini: fixed dt2w feature

jflte: move to common consumer IR HAL

Add lg G5 (h850) to buildable devices

OMS: expose some hardcoded colors

Updated translations

Settings: drop JDCSettings and move all our custom features into settings

SystemUI: Enable three icon switching within QS DND tile

Status bar: added HSPA+ icons

Pixel Theme Framework Edits

Fixed reboot in recovery dialog title

Added screen record shortcut (Vol+ and power button)

Settings: fingerpint: allow devices to configure sensor location

Settings: expose PhoneInfo

OTAUpdates: updated and fixed for N

Gemini: fixed video recording

OMS: merged all latest changes from TeamSubstratum

Gemini: fixed data/wifi switch issue

Gemini: disable Cpusets

Gemini: general blobs and conf updates from stock N

frameworks/base: port some UPSTREAM fixes

General APNs updates

Sepolicy: general updates from CAF

Gemini/jflte: remove no more needed Overlays

Jflte: liblights/consumerir: drop device level HAL and move to common HAL

Update sources to Android 7.1.1 release 4

Gemini: fix H+ icon (Workaround)

Camera2: allow to use power button as shutter

vendor/aosp: overlays: fixes + updates

Settings: enable gesture manager

frameworks/base: fixed GApps perms

20161126 - Beta 2

MD5 - 735631fdb91e08578ebef581e0c192f5

Kernel

General code updates

Kernel Patch 3.4.112->113 (only missing/good parts)

ROM

JDCSettings: added custom hw key rebindings feature

JDCSettings: added long press volume button skip tracks feature

Fixed device storage menu when using Adopted Storage

Fixed an NPE when ejecting the portable storage

Don't dex preopt prebuilt APKs

Gemini: update blobs from Oneplus 3 repo

Gemini: more fixes/updates for N

Gemini: move to QCOM shared graphics driver repository

jflte: bluetooth: fixed a crash caused by alarmtimer --> NOTE: this will break BT on stock kernel

jflte: update Widevine libraries

jflte: move to common graphics blobs repo

Update APNs

GCC: move to Linaro 4.9 Toolchains

Updated translations

Gemini: fixed perf issues when battery level is under 5%

JDCSettings: Added power menu customisations

Added ScreenRecord feature --> available in power menu

jflte: enable sdcardfs

jflte: VZW: fixed mobile data reconnection and IMSI issues, hopefully fixed for Sprint variant too

SuperSU: update to v2.78 SR4

Substratum: update to v490

WIP: added Expanded Desktop feature

Airplane mode toggle: small fixes/enhancements

frameworks/base: removed unused videos/drawables/media tests

Don't refresh ui when screen off

jflte: init.qcom.rc: update ril-service daemon

20161118 - Beta 1

MD5 - 99b143807a9f5077d61d5bc57e88e174

Kernel

Compile with GCC 6.0.1 + fixed compiling warns

General code updates

VoIP: more fixes + updates

Fixed sdcardfs

ROM

WIP: initial Xiaomi Gemini bringup

Ported + fixed all CAF code on our repos

Deskclock: temporary revert CAF additions until bootloop issues are fixed

Bluetooth: fix JFLTE bluetooth after CAF code merge

WIP: bring back browser from MM

Gallery2: switch to SnapdragonGallery + cm fixes/enhancements

jflte: Add support for Samsung extended AGPS

STweaks: fixed profile check

Fix SuperSU installation for block-based OTAs

SuperSU: update to v2.78SR1

Substratum: update to v470 (is needed a full uninstall/removing of installed themes and overlays!)

jflte: GPS: removed not used files/services

msm8960: audio: fixes for voip and calls

msm8960: display: fixes and improved portability

jflte: remove some QC encoders from codecs list

Update sources to Android 7.1.0 release 7

Dialer: add back call recording feature

WebWiev: update to latest stable and beta versions released by Google

jflte: remove unused graphics libraries

jflte: more fixes for VoIP mixers

Jflte: init: fixed boot and network for all variants

OMS: Reverted all old patches and merge updated code from TeamSubstratum gerrit

jflte: updated sepolicies

APNs updates

jflte: libwvm.so: fix library crash due to missing symbol

Bootanimation: updated for 7.1. Big big thanks to [MENTION=2026779]gadget![/MENTION] (xda)

Create 0 compression ratio jar files

telephony: Hack GSM and LTE signal strength

jflte: QMUXD: fixed acquire/release wakelocks

core: arm: remove deprecated -msoft-float in favour of -mfloat-abi=softfp

Xposed: jni: consider /data/app to the fd whitelist if Xposed is detected

20160902 - Alpha 2

Kernel

Fixed boot on N

Ramdisk: updated and fixed scripts for N

Ramdisk: updated and fixed scripts for systemless root

Merged latest 3.18 fixes/updates for ext4

General code updates/fixes

Fixed CVE-2015-8839

ROM

Added exfat and NTFS support

System Sounds: use Stereophonic & Remastered Nexus sounds

Materialized some old icons/colours/toasts

Fixed NFC

Speed up animations

Audio: enabled custom audio policy again

Sepolicy: fixes + partial updates for N

frameworks/native: ported CAF code (mostly on surfaceflinger)

Add back changelog to Settings

SystemUpdateService: enable service but lock its receivers

Frameworks/base: general optimisations

skia: ported CAF code

Camera: various fixes

Build: fixed backuptools and override props functions

Build: completely reworked ROM versioning

OMS: exposed almost all harcoded colours (WIP)

native: ported cm fixes for QCOM devices

Webview: use Google WebView version instead of stock AOSP

Fixed LEDify

STweaks: fixed systemless root detection

SuperSU: update to v2.78

Settings: general fixes/enhancements and some icon materialization

Base: partially ported CAF code/optimisations

Update sources to Android 7.0.0 release 6

RIL: removed old LP hack for NO SIM issue in Airplane Mode and fix things in a proper way

20160901 - Alpha 1

Initial public release

Tips & Tricks

To be done after this ROM is installed. You decide what to do :)

To enable Developer options go in Settings>About phone and press "Build number" for 7 consecutive times.

Go to Setting>Wifi and then turn the Wifi On and Press the Option key and go to Advanced and Turn off Network notification.

Go Setting>More then Turn off NFC

Go to Setting>More>Cellular Networks and if you don't use mobile data, then you can choose 2G for Preferred network Type.

If you don't need Auto Brightness for Screen, Go to Setting>Display & Turn off Adaptive brightness.

Go to Setting>Display>Power Menu and put tick in Screenshot & Sound Panel.

If you don't use Ambient Display, Go to Setting>Gestures & Turn off ambient Display.

If you don't need hardware Key Backlight,Go to Setting>Display>HW buttons and Choose Backlight and Untick Illuminate buttons.

Go to Setting>Sound & Notification>Other sounds and turn off all of them...

Go to Setting>Supersu and Press No Thanks, then go to Setting Tab and Untick Re-authentication and choose Default Access then select Grant and Untick Show Notifications.

Go to Setting>About Device and press the Build Number for multiple times until Developer Options unlocked.

Go to Setting>System UI Tuner and turn on Show embedded battery percentage.

In Setting>System UI Tuner>Quick Settings, You can customize your favorite quick settings.

Using F2FS

What it is? Wikipedia

To use it you should first convert your EXT4 partitions through recovery, before installing this ROM.

Download and install this TWRP version: https://romhut.com/addons/twrp-2-8-7-2-f2fs

Wipe->advanced wipe

Select data->change or repair file system->f2fs (Warning: internal storage is formatted, make a backup of your personal data before doing this!)

Select cache->change or repair file system->f2fs

No need to convert /system as it is basically read-only, therefore better to keep it as ext4.

Now you can install this ROM following installation steps in post above