WARNING! This ROM is for the GT-I8730/T variants only!
CyanogenMod is a free, community built, aftermarket firmware distribution of Android 6.0 (Marshmallow), which is designed to increase performance and reliability over stock Android for your device.
Q/A thread:
N/A
Please use the above unless you have something development-related to contribute here. Thank you.
Code:
/*
* Your warranty is now void.
*
* We are 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 us for messing up your device, we will laugh at you.
*
*/
CyanogenMod is based on the Android Open Source Project with extra contributions from many people within the Android community. It can be used without any need to have any Google application installed. You will need to provide your own Google Applications package (gapps). CyanogenMod does still include various hardware-specific code, which is also slowly being open-sourced anyway.
All the source code for CyanogenMod is available in the CyanogenMod
Github repo. And if you would like to contribute to CyanogenMod, please visit our
Gerrit Code Review. Your changelog is whatever was merged into gerrit.
CM-13.0 Install Guide
Note: CM for Galaxy Express is provided with no warranty. You are installing this software at your own risk. You may be violating your warranty.
Download CM-13.0 and OpenGapps zips and put in /sdcard
[/LIST]
Before you install CM-13.0: Preparation (First three are optional. If you want to start fresh, these can be skipped)
- Install AppBak from Market, run it and save a list of all your apps.
- Install SMS Backup and Restore from Market, run it and backup your SMS history.
- Install Call Logs Backup and Restore from Market, run it and backup your call log history.
- Boot into TWRP recovery. Make a full backup. You will need this backup later if you decide to go back to your previous ROM and data.
WARNING: Many apps will Force Close crash if you restore data from a previous ROM.
Install
- Use TWRP Recovery.
- Warning: Only use this recovery to flash CM-13.0. Otherwise, you risk bricking your phone!
- Wipe system, data, dalvik and cache. (For clean installation)
- Flash cm-13*.zip.
- Flash gapps*.zip.
- Reboot phone.
- After you setup your Google account, reinstall the three apps from Market in order to restore most of your apps, call log and SMS history.
- Warning: Do not restore backup data of system apps!
- If you restore a bad backup with cached settings in telephony.db in data/data/com.*.*.telephony it can break MMS.
- It seems that restoring backups can also break Calendar sync.
Upgrades
Upgrades from previous versions of CM-13.0 are the same process as install, except you do not need to wipe anything. Contrary to popular belief, you do not need to even wipe cache and dalvik-cache when upgrading between CM-13.0 versions. You only need to wipe if you are doing a major upgrade, switching to a different ROM entirely, or attempting to fix bugs caused by bad backups or corrupt app data.
Switching From EXT4 TO F2FS Guide, thanks @zh_eco :
-
T.W.R.P recovery support F2FS is recommended ,
here.
-
Clean install is recommended (wipe everything)
Switching Steps :
1- Reboot to T.W.R.P .
2- from T.W.R.P Home , select "
Wipe" .
3- then select "
Advanced Wipe" .
4- then choose Data .
5- click on "
Repair or change file system" .
6- then click on "
Change File System" and choose F2FS , wait until formatting .
7- do the same method on cache .
8- after formating Data and cache to F2FS, now flash CM-13.0 ROM and GApps then reboot
*Note: Formatting /system with F2FS isn't supported, only data and cache
Useful Links:
Credits:
Epic Touch CM Team for the install instructions
Everyone that donated beers
The CyanogenMod team would like to thank everyone involved in helping with testing, coding, debugging & documenting! Enjoy!
Screenshots
Code:
Latest Release is [COLOR="Red"]20160406[/COLOR]!
[URL="https://www.androidfilehost.com/?fid=24459283995313858"]Download[/URL]
[URL="https://www.androidfilehost.com/?fid=24459283995312046"]Custom Kernel[/URL] (Optional)
Code:
[COLOR="Red"]-20160406-[/COLOR]
*CM sources update
*Android 6.0.1_r24
*Build ID MHC19J --> MHC19Q
*Fix lockscreen
[COLOR="Red"]-20160403-[/COLOR]
*CM sources update
*Fix for RIL when device encrypted
*Fix google play crashes
*qcom-common: Automatic translation import
[COLOR="Red"]-20160328-[/COLOR]
*CM sources update
*Use Intel's Memory Recommendations
*audio: Lower earpiece volume a little bit
*Switch to QCOM's FM radio app
*audio_policy: Add AUDIO_DEVICE_OUT_FM to output devices
*overlay: Enable config_wifi_background_scan_support
*Kernel: pipe: iovec: Fix memory corruption when retrying atomic copy as non-atomic
*Kernel: tty: Fix unsafe ldisc reference via ioctl(TIOCGETD)
*Kernel: KEYS: Fix race between read and revoke
*Custom Kernel: Disable Mpdecision
[COLOR="Red"]-20160321-[/COLOR]
*CM sources update
*Remove custom AudioSystemLegacy.h and cleanup audio flags
*Revert "Ship prebuilt version of stupid toybox for now (again)"
*msm8930-common: sepolicy: Resolve debugfs denial
*qcom-common: Automatic translation import
*Kernel: arm: Move to upstream udelay via timer implementation
*Kernel: kernel: gtod: Add MSM-specific user-accessible timers
*Kernel: defconfig: Enable CONFIG_SCHED_DEBUG
*Kernel: Makefile: Drop custom ARCH and CROSS_COMPILE variables
*Kernel: defconfig: Enable CONFIG_SECCOMP
*Kernel: BACKPORT: module: add flags arg to sys_finit_module()
*Kernel: CHROMIUM: finit_module: add syscall to ARM
*Kernel: CHROMIUM: finit_module: add syscall to asm-generic
*Kernel: CHROMIUM: security: introduce kernel_module_from_file hook
*Kernel: CHROMIUM: module: add syscall to load module from fd
*Kernel: seccomp: Use atomic operations that are present in kernel 3.4.
*Kernel: seccomp: implement SECCOMP_FILTER_FLAG_TSYNC
*Kernel: seccomp: allow mode setting across threads
*Kernel: seccomp: introduce writer locking
*Kernel: seccomp: split filter prep from check and apply
*Kernel: sched: move no_new_privs into new atomic flags
*Kernel: ARM: add seccomp syscall
*Kernel: seccomp: add "seccomp" syscall
*Kernel: seccomp: split mode setting routines
*Kernel: seccomp: extract check/assign mode helpers
*Kernel: seccomp: create internal mode-setting function
*Kernel: MAINTAINERS: create seccomp entry
*Kernel: CHROMIUM: ARM: r1->r0 for get/set arguments
*Kernel: CHROMIUM: seccomp: set -ENOSYS if there is no tracer
*Kernel: CHROMIUM: ARM: arch/arm: allow a scno of -1 to not cause a SIGILL
*Kernel: CHROMIUM: arch/arm: select HAVE_ARCH_SECCOMP_FILTER
*Kernel: CHROMIUM: arch/arm: move secure_computing into trace; respect return code
*Kernel: CHROMIUM: arch/arm: add asm/syscall.h
*Kernel: samples/seccomp: fix dependencies on arch macros
*Kernel: seccomp: fix build warnings when there is no CONFIG_SECCOMP_FILTER
*Kernel: seccomp: ignore secure_computing return values
*Kernel: seccomp: use a static inline for a function stub
*Kernel: Documentation: prctl/seccomp_filter
*Kernel: ptrace,seccomp: Add PTRACE_SECCOMP support
*Kernel: seccomp: Add SECCOMP_RET_TRAP
*Kernel: signal, x86: add SIGSYS info and make it synchronous.
*Kernel: seccomp: add SECCOMP_RET_ERRNO
*Kernel: seccomp: remove duplicated failure logging
*Kernel: seccomp: add system call filtering using BPF
*Kernel: arch/x86: add syscall_get_arch to syscall.h
*Kernel: asm/syscall.h: add syscall_get_arch
*Kernel: seccomp: kill the seccomp_t typedef
*Kernel: net/compat.c,linux/filter.h: share compat_sock_fprog
*Kernel: sk_run_filter: add BPF_S_ANC_SECCOMP_LD_W
[COLOR="Red"]-20160315-[/COLOR]
*CM sources update
*Android 6.0.1_r22
*Build ID MMB29U --> MHC19J
*Update prebuilt Eleven
*overlay: Enable config_suspendWhenScreenOffDueToProximity
*Ship prebuilt version of stupid toybox for now
*overlay: Use MONOTONIC instead of BOOTTIME for sensor timestamp
*overlay: Change bool used for setting rotation timestamp to new name
*msm8930-common: sepolicy: Fix some new denials
*Kernel: Revert "ptrace: fix ptrace defect cause by a merge fail"
*Kernel: random: remove rand_initialize_irq()
*Kernel: random: add new get_random_bytes_arch() function
*Kernel: random: use the arch-specific rng in xfer_secondary_pool
*Kernel: random: create add_device_randomness() interface
*Kernel: random: use lockless techniques in the interrupt path
*Kernel: random: make 'add_interrupt_randomness()' do something sane
*Kernel: sched: Fix migration thread runtime bogosity
*Kernel: include/linux/poison.h: fix LIST_POISON{1,2} offset
*Kernel: msm: null pointer dereferencing
*Kernel: kernel: use the gnu89 standard explicitly
*Kernel: Fix gcc-4.9.0 miscompilation of load_balance() in scheduler
*Kernel: kbuild: Remove reference to uninitialised variable
*Kernel: kbuild: Remove useless warning while appending KCFLAGS
*Kernel: ftrace: Add -mfentry to Makefile on function tracer
*Kernel: kbuild: make: fix if_changed when command contains backslashes
*Kernel: module: fix out-by-one error in kallsyms
*Kernel: defconfig: Disable CONFIG_DM_VERITY
*Kernel: Remove all traces of TIMA from the sources
[COLOR="Red"]-20160306-[/COLOR]
*CM sources update
*qcom-common: Automatic translation import
*Kernel: soc: qcom: smd: Validate read and write addresses
*Kernel: net: ipc_router: Defer workqueue initialization
*Kernel: ALSA: control: Add sanity checks for user ctl id name string
*Kernel: ALSA: pcm: Don't leave PREPARED state after draining
*Kernel: ALSA: pcm: fix fifo_size frame calculation
*Kernel: ALSA: Add SNDRV_PCM_STATE_PAUSED case in wait_for_avail function
[COLOR="Red"]-20160228-[/COLOR]
*CM sources update
*Revert "Switch to Clang"
*Kernel: msm: ipc_socket: fix leak of kernel memory to userspace
[COLOR="Red"]-20160224-[/COLOR]
*CM sources update
*Fix Livedisplay
*camera: Update face detection parameters in CameraParametersExtra.h
*msm8930-common: camera: Remove all possible face detection parameters
*qcom-common: Automatic translation import
*Updated Widevine blobs from Flo MMB29Q
*Kernel: msm_fb: Add KCAL interface
*Kernel: msm_fb: Enable MDP4 IGC LUT
*Kernel: msm_fb: Fix GC & IGC LUT
*Kernel: Revert "video: mdp4: Color temperature interface using PCC"
*Kernel: Revert "mdp4: pcc: fix PCC disablement"
*Kernel: Revert "msm: mdp: Restore PCC config when MDP goes on"
[COLOR="Red"]-20160219-[/COLOR]
*CM sources update
*Fixed Youtube playback
*Revert back to phone-xhdpi-1024 dalvik heap configuration
*media_profiles.xml: Sync with upstream
*Recheck and reorganize blobs
[COLOR="Red"]-20160217-[/COLOR]
*CM sources update
*Revert "gps: fix error when building with clang"
*gps: Misc fixups
*gps: Re-enable MSA capability
*gps: Various fixes from CAF
*Update prebuilt Eleven
*Revert "ril: Fix data after reboot"
*Kernel: msm: mdp: Restore PCC config when MDP goes on
*Kernel: timekeeping: fix 32-bit overflow in get_monotonic_boottime
*Kernel: tick: Dynamically set broadcast irq affinity
*Kernel: timekeeping: Add missing update call in timekeeping_resume()
[COLOR="Red"]-20160210-[/COLOR]
*CM sources update
*power: Sync changes to Flo's version
*cmhw: don't crash if serial number file is unreadable
*cmhw: use CMHW to return proper device serial
*common: Use full path to cmhw
*rootdir: Remove obsolete crda service
*bluetooth: Disable some features (testing)
*bluetooth: Remove obsolete features
*Revert "bluetooth: Define max supported L2CAP channels"
*Switch to CLANG by default
*gps: fix error when building with clang
*msm8930-common: Remove obsolete crda packages
*Kernel: mdp4: pcc: fix PCC disablement
*Kernel: cpufreq: Kang governor changes from d2 kernel
*Kernel: defconfig: Enable cpufreq limit driver
*Kernel: cpufreq: Add cpufreq limit driver
*Kernel: UPSTREAM: selinux: fix bug in conditional rules handling
*Kernel: UPSTREAM: memcg: Only free spare array when readers are done
*Kernel: net: inet_diag: zero out uninitialized idiag_{src,dst} fields
[COLOR="Red"]-20160204-[/COLOR]
*CM sources update
*Android 6.0.1_r13
*Build ID MMB29T --> MMB29U
*overlay: Disable data by default
*rootdir: Clean init.qcom.power.rc
*Update Adreno blobs from Flo MMB29Q
*msm8930-common: sepolicy: Sync with LA.AF.1.2.1_rb1.5
*qcom-common: Automatic translation import
*Kernel: bluetooth: Sync with LA.AF.1.2.1_rb1.5
*Kernel: fuse: break infinite loop in fuse_fill_write_pages()
[COLOR="Red"]-20160131-[/COLOR]
*CM sources update
*Sync media codecs with LA.AF.1.2.1_rb1.5
*bluetooth: Define max supported L2CAP channels
*bluetooth: Update features config
*Switch to phone-hdpi dalvik heap configuration
*rootdir: Remove unused USB compositions
*Revert "rootdir: Add USB charging mode"
*rootdir: set swappiness to 100
*Revert "sepolicy: Allow qti_init_shell to set audio prop"
*rootdir: Remove setprop of obsolete qcom.audio.init
*Kernel: Update defconfig
*msm8930-common: overlay: Disable wifi region code preferences
*msm8930-common: sepolicy: Another stupid external storage rule
*msm8930-common: sepolicy: Address some stupid shell denials
*Kernel: msm: vidc: Enable dynamic debug level & out for video kernel driver
*Kernel: msm: camera: Add check to prevent array index out of bounds
*Kernel: msm: wlan: Update regulatory database for some countries
*Kernel: staging: Remove the Android logger driver
*Kernel: staging: Remove the Android alarm-dev driver
*Kernel: staging: Remove logger and alarm-dev from android Makefile
[COLOR="Red"]-20160123-[/COLOR]
*CM sources update
*msm8930-common: sepolicy: Allow qti_init_shell to set audio prop
*Kernel: bluetooth: Validate socket address length in sco_sock_bind().
[COLOR="Red"]-20160117-[/COLOR]
*CM sources update
*Deodex the ROM for any xposed user
*Snap: Fix broken camera preview
*Use Snap Camera instead of Camera2
*overlay: Snap: Don't use OpenLegacy() for opening camera
*Update prebuilt Eleven
*Modify default regional settings
*Decrease zRam to 128MB
*msm8930-common: Remove obsolete BOARD_HAS_QCOM_WLAN_SDK define
*qcom-common: Automatic translation import
[COLOR="Red"]-20160107-[/COLOR]
*CM sources update
*Android 6.0.1_r10
*Build ID MMB29M --> MMB29T
*Remove low ram flags
*ril: Fix data after reboot
*overlay: Disable Hardware FLP overlay
*Revert "Disable ambient display for now"
*Latest security patch level(2016-01-01)
*Kernel: msm: mdp: Add support for display always on mode
*Kernel: Revert "Replace timeconst.pl with a bc script"
*Kernel: timeconst.pl: Eliminate Perl warning
*qcom-common: doze: remove screen_gestures_panel_summary
[COLOR="Red"]-20160103-[/COLOR]
*CM sources update
*Enable TARGET_USERIMAGES_USE_F2FS
*msm8930-common: sepolicy: Move external storage policies to vendor/cm
*msm8930-common: sepolicy: Fixup external storage rules
*msm8930-common: sepolicy: Fixes for external storage denials
*msm8930-common: sepolicy: Typo in filename
*Kernel: UPSTREAM: proc: make proc_fd_permission() thread-friendly
*Kernel: UPSTREAM: proc: actually make proc_fd_permission() thread-friendly
*Kernel: defconfig: Enable F2FS
[COLOR="Red"]-20151229-[/COLOR]
*CM sources update
*fstab: Add support for f2fs filesystem
*ril: Fix invalid number error
*Kernel: cpufreq: Avoid using global variable total_cpus
*Kernel: Failed to load kernel modules
*qcom-common: Automatic translation import
[COLOR="Red"]-20151223-[/COLOR]
*CM sources update
*BoarConfig.mk: Cleanup
*sec_config: Update the list from CAF
*Revert "expressltexx: Update radio access family list"
*ril: Use correct preferredNetworkType instead of networkModes
*ril: Return static radio capability from getRadioCapability
*Fix wired headset : Add missing "Voice Headset: usecase
*Reduce headset volume during calls
*Update prebuilt Eleven
*fstab: Add back selinux context for /firmware
*rootdir: Remove logwrapper from irsc_util service
*Set selinux back to enforced again
*prop: Remove props used for debugging during bringup
*msm8930-common: sepolicy: Fix denials when formatting as adoptable storage
*msm8930-common: sepolicy: Fix bluetooth mac address loading
*msm8930-common: Revert "Use dlmalloc instead of jemalloc"
*msm8930-common: sepolicy: Device updates for M
*msm8930-common: sepolicy: Sync with LA.AF.1.2.1
*Kernel: md: use kzalloc() when bitmap is disabled
*Kernel: KEYS: Fix handling of stored error in a negatively instantiated user key
*Kernel: ipv6: addrconf: validate new MTU before applying it
*Kernel: _ptrace_may_access() should not deny sub-threads
*Kernel: net: fix iterating over hashtable in tcp_nuke_addr()
*Kernel: net: add validation for the socket syscall protocol argument
*Kernel: msm: vidc: Add support for Picture Order Count Type
*Kernel: drivercore: Avoid adding devices without pm_ops to dpm list
*Kernel: PM: Fix a bug in dpm_suspend_late()
*Kernel: PM / Wakeup: Use rcu callbacks for better performance
*Kernel: fs: f2fs: Sync with jaegeuk
[COLOR="Red"]-20151213-[/COLOR]
*CM sources update
*Android 6.0.1
*Build ID MDB08M --> MMB29M
*Custom PowerHAL implementation
*Revert: "Add CarrierConfig overlay for disabling world phone and CDMA"
*overlay: Update Trebuchet defaults for the drawer
*Fix offline charging
[COLOR="Red"]-20151207-[/COLOR]
*CM sources update
*Odex the ROM
*rootdir: Remove setting of governor on boot
*Disable ashmem tracking in parcels
*ril: Revert changes for LP blobs
*Fix Mic
*Enable FM Radio
*Revert "express: Use rild and libril.so from Galaxy A5 lollipop"
*Revert "express: Use rild/libril blobs from I9505"
*Kernel: Set interactive governor as default
[COLOR="Red"]-20151202-[/COLOR]
*CM sources update
*Remove hardware_qcom_fm deps
*Revert "rootdir: Fix LTE doesn't come up on boot"
*ril: These are not the UNSOLs you're looking for
*ril: Remove dialEmergencyCall
*media: Kill mm-parser
*ril: Move mQANElements to a system prop
*ril: Update namePresentation for LP blobs
*prop: Remove CDMA and obsolete props
*remove unsupported 1080p profiles from camera
*Set config_eap_sim_based_auth_supported to false
*Use rild/libril blobs from I9505
*Kill mm-parser blobs
*qcom-common: cleanup packages
*msm8930-common: Don't build qcmediaplayer
*Kernel: BACKPORT: pagemap: do not leak physical addresses to non-privileged userspace
*Kernel: ANDROID: exec_domains: Disable request_module() call for personalities
*Kernel: ANDROID: android: base-cfg: disable CONFIG_SYSVIPC
*Kernel: defconfig: disable CONFIG_SYSVIPC
[COLOR="Red"]-20151124-[/COLOR]
*CM sources update
*power: Disable useless power hints
*audio: Bring back removed stuff during M bringup
*audio: Explicitly enable proxy and usb audio features
*include: Add custom AudioSystemLegacy.h
*init.target.rc: Sync with Serrano
*Update radio access family list
*Add CarrierConfig overlay for disabling world phone and CDMA
*Use bionic loader solution to load the RIL shim library
*overlay: Disable Ultrasound support
*overlay: Remove obsolete FM overlay
*media: Sync media_codecs.xml with LA.AF.1.2.1
*rootdir: Mount system in charger mode
*audio: Remove duplicate device line in audio_policy.conf
*qcom-common: remove setup_fs
*qcom-common: healthd: Disable log spam
*qcom-common: healthd: Draw battery level
*msm8930-common: Explicitly build all media related packages
*Kernel: msm: video: Checks for code robustness
*Kernel: msm: vidc: cache-flush encoder output buffers after alloc
[COLOR="Red"]-20151112-[/COLOR]
*Initial Release
Code:
If you like it, give me a thanks or ever a beer :)