[Xiaomi Mi 5 ROMs, Kernels, Recoveries, & Other Dev] 33bca:
About Us:

Dirty Unicorns is a project that started out with no name. It was a project that was first based off AOKP back in the early days of Jelly Bean. In the early days -- it was just a one man show on one device, the EVO 3D. Since then, many others have joined the project and it has grown exponentially.

We have seen a lot of talent contribute to this project of ours. Big or small, the focus was always on contributing to the community. That is ultimately why we do what we do. After Jelly Bean, we decided to move to a new base, OmniROM. While AOKP was fun, OmniROM proved to be even more exciting base because it challenged us to see what we could do with a project that had different goals in mind. We learned a lot and gained contributors in the process. With Lollipop, we moved to an AOSP base with a lot of patches from CAF to make our older devices function as they should. We grew further with experience and learned a lot more along the way.

It has been an awesome learning experience and it's still not over! We are still learning, striving to grow each day, and continuing to move forward. Lastly, we DO NOT accept, nor ask, for donations. We do not believe in that. Everything that is necessary to keep this project going comes out of our own pocket. Gerrit, Jenkins, Websites, Devices, etc. We will never ask for a dime. All that we do ask is that you have patience, search for answers prior to posting, read, and try to enjoy the process with us!!​

Kernel Source:

LINK

Flashing Instructions:

- Verify that you're using the latest version of TWRP

- Perform a FULL WIPE as described below

(A full wipe is when you wipe system/data/cache/dalvik)

- Flash the latest version of this ROM

- Flash recommended Firmware linked below

- Flash recommended GApps linked below

- Reboot and ENJOY!!

**If you fail to follow these instructions, please don't bother reporting any bugs**

**If you use Xposed, please don't bother reporting any bugs**

**If you use another kernel, please don't bother reporting any bugs**

Change Log:

[B]Version 10.6[/B]
- Update to Android 6.0.1_r68
- Lots of translations
- Configurable Themes tile components to apply
- Switch to HTTPS for our updater
- Add missing exposures and separate power dialog icons
- A lot of Gallery2 improvements/fixes
- Rewrite DU-About a little
- Fix lockscreen charging current switch
- Statusbar icons transparency
- A lot of Gallery2 improvements/fixes
- A lot of FMRadio improvements/files
- Refactor SlimSeekBarPreference
- Expose new hard coded colors for themes in Messaging
- Add vector image and fix themeing issue in Messaging
- Fling trails width configuration
- Update bcm4356 FW
- Use HTTPS when fetching changelogs
- DocumentsUI fixes
- Account for time changes when showing recent activities
- Increase max screen recording time to 1 hour
- Allow force landscape mode with screenrecord
- Bump DU Certified to 2.4.1
- Misc CMTE fixes that came in with CMSDK refactor
- Update Fling library from Orange Open Source to 1.2.6
- Display bluetooth battery status when available
- Added hardware key disable support with M adaptations
- OmniSwitch: launcher: change essentials launch intents
- OmniSwitch: revert recent apps should not change order in quick switcher
- OmniSwitch: no ripple no fun
- Make overlay permission check configurable
- Fix Slim Recents unknown window type error

[B]Version 10.5[/B]
- Lots of translations
- Update to Android-6.0.1_r62
- New DU logo for QS navbar/fling tile and keyboard
- Added revert recents in OmniSwitch
- Bring back basic group support
- Enable support for groups in External contacts accounts
- Sync citylist handling with upstream in DeskClock
- Fix crash when no storages are available
- Fix concurrent access to mStorages
- Disable all ListView and GridView selectors in OmniSwitch
- New DU logo everywhere
- Added ability to change location sensors mode in quick settings
- Added Solid bar sanity levels and Lavalamp anim speed
- Fix lock insanity with ActivityManager
- Fix and remember state with OmniSwitch's launcher mode
- Allow immersive options for Slim Recents
- Move LockClock up per request
- Fix notification panel can't hide in statusbar
- Enable camera hal v3 interface
- Disable cellular networks settings menu if airplane mode is enabled
- Set upper limit of 40 FPS on Pulse's renderer drawing
- Added Proximity wake on selected devices
- Fixed NPE in Messaging app
- Add tabs transitions effects in DirtyTweaks
- Add a blank footer to System app remover
- Add ability hide/show app launcher icon for OmniSwitch
- Make sure screenshot Qs and power menu icons match
- Fix volume timeout derp
- Get rid of ugly dialog in radio info
- Adjust padding between battery icon and text
- Add CPU info overlay
- Add backup services to the whitelist after the android-6.0.1_r54 merge
- Remove navigation bar option in Extended desktop settings conditionally
- Pulse 2.0 Advanced Audio/Visual Rendering
- Fix SmartBar alpha when pulse enabled and music paused from lockscreen
- Update DU Certified to v2.3

[B]Version 10.4[/B]
- Update to Android 6.0.1_r54
- Update SuperSU to v2.76 stable release
- Lots of translations
- Lots of changes and fixes to DU Certified
- SmartBar/Fling clear notifications action
- SmartBar/Fling volume panel action
- SmartBar editor action
- Add a visual cue when editing SmartBar
- Reset SmartBar button animation/pressed state when cancelled
- Add SmartBar save/restore profiles
- Add a visual cue when editing SmartBar
- Add volume tones back
- Add volume dialog timeout
- Fixed WiFi not saving bug
- Add edit action for screenshot notification
- Add support for gestures on certain devices
- Add draw stroke width support to Screenshot Crop/Share
- Add blur feature to Screenshot Crop/Share
- Add launcher mode to OmniSwitch
- OmniSwitch launcher mode day 0 fixes
- Fix a glitch causing shadow not to be reset when header disabled
- Fix one more misbehaving shadow
- Fixed storage permission issue for attachments
- Fix playback for mkv files with lacing
- Cleaned house in Dirty Tweaks, layout fixes
- Clean up System app remover
- Clean up and fix potential NPE's in Recents
- Move DU logo under statusbar items
- Add missing INTERACT_ACROSS_USERS_FULL permission
- Adding NullPointerException check in DocumentsUI
- Add new Theme Provider icon
- Remove unneeded top margin in QS tuner
- Set zygote process priority to -20 to speed up VM startup time
- Call eglReleaseThread in threadLoop for bootanimation
- Enable single tap rebinding for hwkey back and home
- Support MPEG4 codec in Matroska files
- Pass AAC profile from MatroskaExtractor
- Adds some parsing capability
- Support HEVC tracks in Matroska containers
- Remove charging from persisted function composition
- Expose extended statusbar shadow values for themers
- Use correct read/write perms for provider
- Update controls preview to properly render themed assets
- Apply band-aid to ensure theme provider preview permissions are correct
- Use proper API for Fling dialog handling and make them cancelable
- Add API to get detailed state of DeviceIdleController
- Create configurable default expanded desktop style

[B]Version 10.3[/B]
-Update to Android 6.0.1_r46
-Lots of translations
-Lots of CMTE fixes
-Add interpolators to qs tiles
Fixes the system server crash issues caused by null pointer in NetworkPolicyManagerService
-Screenshot Crop and Share
-Dyanamically Configurable Pulse Bar Dimensions
-Fix WaveGenerator memory leak
-Fix overflows in amrwbenc
-Fix for rounding error during encoding
-Enable Wifi Display to support 1920*1080 60fps
-Fix high battery drain after using flashlight
-Fix de-referencing NULL
-Added null check for memory reference
-Fix a video recording issue when sw encoder is used
-Fix compiler warnings
-Fix cameraId type of onDeviceStatusChanged
-Allow media server to disconnect camera even unlocked
-OmniSwitch: cleanup BitmapCache handling
-Remove gallery option from mid-screen shortcuts
-Power/reboot dialogs dim
-Remove bluetooth only when connected toggle
-Add back 'setOnlyAlertOnce' to notification for restricting background data
-Introduce ScreenType class
-Battery bar enhancements
-Fix lcd density theme derp with text edit color
-Restore custom DPI density after updates
-Remove unused observer in AmbientDisplayTile
-Tighten up how we execute a theme change
-Clean up spaghetti factory in BatterySaver tile
-Updated DU-About layout
-Show charging current in mAh on lockscreen
-Keyguard charging current switch
-Fix wakelock blocker's janky layout
-Fix animations duration slider preference janky layout
-Headers overlay support!
-Fix du logo size inside DU-About
-Fix Quick settings tiles font themes derp
-Update theme in CellBroadcastReceiver to match settings
-Fix wrong label for Desktop backup password
-Change battery full level from 90 to 100
-Bring back the 'AOSP look' in Settings
-Fix double tap power launching custom lockscreen icon
-Fix default app for default grants
-Grant signature permission to setup and search
-Fix adb over network
-Use VectorDrawable's for rendering battery
-Add UI/UX capability to attach a saved video to a MMS message
-Display humidity and wind data in LockClock forecast dialog
-National data roaming is off when no active subscriptions
-Adjust the CAF task manager layout
-Harden against null bitmaps from provider still processing
-Lots of Camera2 (AOSP Camera) fixes
-Fix jank with 'Show4LTE mod
-Make Launcher3 theme aware (for real this time)
-Add animations to quick settings tiles
-Added support for video and audio mms attachments
-Speed up notification panel pulldown animation when called externally
-Make sure to expand all the way when flinging
-Fix phone crashes after tapping Data Usage in Settings
-Stop adjustConfigurationLw causing sleep/lock
-Fix possible NPE in Settings
-Fix Storage Applications Manager dropdown
-Allow sorting Applications by size in Settings
-Fix the memory leak in TetherSettings
-Use DocumentsProvider API helper methods
-Long press StatusBarHeaderView to launch ThemeChooser headers
-Show title of category in browser fragment (CMTE)
-Battery fixes from CM (vector)
-Added RTL support to theme chooser
-Stop resetting per-app overlays all the time!
-Add More Storage preference to Gallery2
-Fix dismissing Play Store app installed notification
-Mark Pixel C keyboard as having hardware autorepeat
-Separate default header handling from contextual headers
-Fix google-explicit-constructor warnings
-Fix batterySendBroadcast not synchronized issue
-Fix system crash caused by invalid array index of LegacyTypeTracker
-Fix possible OOB
-Fix resume box appear when reopen a video by Gallery
-Fix facing check in CameraUtils
-Fix misleading indentation
-Gallery's progress bar stay at 0 when play some clips
-Fix so you can go back in Time zone page
-IP protocol shows wrong in ApnEditor
-Fix the memory leak in DrawOverlayDetails
-Use correct icon for sim card

[B]Version 10.2[/B]
- Update to Android 6.0.1_r43
- New and improved DU change log app
- Show more accurate internal storage capacity
- Allow screen recording to record up to one hour
- Allow screen recording in landscape
- Replace hamburger menu icons with horizontal ellipsis
- Allow system_app access to setenforce
- Fix font changes for clocks
- Fix notification LED NPE
- Add in-app search bindable actions and resources
- Fix recents passing through Google search bar
- Fix off-center date on lockscreen when no alarm is set
- Fix hotspot client AP count
- Fix InCallUI contact image position
- Add SMS/MMS limitation feature
- Enable turn on data when MMS received feature
- Update Chromium to LKGR
- Use circular reveal for showing/hiding task manager panel
- Update SmartBar editor popup menu logic and animation refresh
- Update OmniSwitch
- Show the option for 'Show running apps' for AOSP recents
- Re-center lockscreen notifs
- Add a carrier config for default value of WFC user setting
- Allow Smartbar to unlock recent apps button and make it removable
- Fling: Up swipe left/right support
- Enable quick pulldown for all
- Add a check to see whether the wallpaper's size has changed
- Point Ambient display tile longpress action to it's own settings
- Various CMTE fixes
- Various optimizations and fixes
- Updated translations

[B]Version 10.1[/B]
- Update to Android 6.0.1_r24
- Add Torch to Power Menu
- Adjust Themes tile
- Messaging: QuickReply
- Phone: Call blacklisting
- Custom Ambient Display options
- Add Caffeine QS tile
- Fix volume key music control seeking while ambient display is enabled
- Restore animations back to stock values
- Materialize SIM Toolkit icon
- SmartBar: Fixes across the board including DPI changing
- Fix the duplicate value in expanded download field
- Add custom shadow on header image
- OmniSwitch: Add basic multiwindow support
- Switch to OpenWeather for lockscreen and header weather
- Compile theme apps in the background
- Fix weather items NPE while casting
- Show volume panel tile in QS
- Update SuperSU to 2.71
- Add Heads Up button to the extended statusbar
- Centerize the empty view for WiFi and BT tiles
- Add Heads Up Timeout option
- Remove color picker options
- Fix annoying black statusbar and navbar issue
- Organize Dirty Tweaks more to make things streamlined
- Optimizations and bug fixes
- CMTE fixes and updates
- Updated translations

[B]9.7[/B]
- Update to Android 5.1.1_r18
- Add Hot Reboot to Power Menu
- Fix 3-finger Gesture
- Slimified Nav Ring targets
- Ability to ignore interruptions while active media playback
- Add OmniSwitch as Recents
- Add Gesture Lockscreen
- Ability to hide Power Menu on the Lockscreen
- Ability to have notification lights while screen is on
- Bring back the Battery Bar
- Allow lockscreen elements to be themeable via color changing
- Ability to disable Privacy Guard notifications
- Add Volume Panel QS tile
- Disable extended statusbar weather by default
- Add ability to rotate the lockscreen
- Haptic feedback for QS tiles
- Time Contextual Headers
- Fix NFC tile disappearing
- Volume panel timeout ability
- Long press lockscreen lock icon to activate Torch
- Add menu action to OmniSwitch
- Fix Ad Blocker
- Re-organize Dirty Tweaks to make things more streamlined
- Further optimizations and bug fixes
- CMTE fixes
- Updated translations

[B]9.6[/B]
- Update to Android 5.1.1_r9
- Patched up stagefright vulnerability
- OmniSwitch updates
- Added ability to enable or disable scrolling cache
- Add 3-finger screenshot gesture
- Fix QS - Notification shade blank area bug
- Add DT2S for Lockscreen
- Add Lockscreen Wallpaper functionality
- Add new nav bar icons by Bryan Owens
- Add Enable-Disable notification color inversion
- Customize Battery Saver notification icons
- Add Dotted Battery icon style
- Add Longpress Settings actions to QS
- Add System App Remover
- Add back menu button for navbar
- Reorganize Dirty Tweaks
- Reorganize About Phone - About Tablet
- Update more icons
- Fix backup tool
- Added optimizations to various repos
- Spruced up DeskClock
- Various translations
- Added back Omni's customizable PhaseBeam wallpapers
- Materialized Launcher3
- Fix assorted bugs reported or discovered

[B]Version 9.5[/B]
- Update to Android 5.1.1_r8
- Wi-Fi calling
- Add Breathing Notifications (calls/sms/voicemail)
- Slim Recents
- Option to disable Torch on screen off
- Add Slim Navbar customizations
- Add SlimPIE
- Add SELinux Switch
- Add NavBar Tile
- Move button mods to Navigation menu
- Add Expanded Desktop
- Add Weather to Settings (cLock)
- Add back IME arrows
- Add DU Logo in Statusbar (plus color changing ability)
- Add ability to disable Lockscreen Shortcuts
- Update more icons to Material Design
- Fix 4G instead of LTE switch
- Add Live Volume Steps
- Add Config for WiFi Country Code
- Hotspot Idle Config
- Per App Controls for keyguard
- Simplify how Extra Info determines density
- Font change size for SMS/MMS composition or incoming
- Various translations

[B]Version 9.4[/B]
- Android 5.1.1_r4
- Add USB Tether tile
- Remove carrier settings
- Make DU Extra Info themeable
- Force Expanded Notifications
- Add Music tile
- Fix disabling volume adjust sound
- Various ThemeChooser fixes
- Add Volume Rocker Swap button function
- Add Wakelock Blocker
- Add AOKP System Animations and Listview Animations
- Eliminate more checkbox options (replaced by switches)
- Add Task Manager
- Add ability to disable Lockscreen Shortcuts
- Update various icons to Material Design
- Show 4G instead of LTE switch
- Make headset notification dismissable
- Allow all files over BT
- Dirty Unicorns is starting...
- Stop About-DU from launching at startup
- Increasing ring volume
- Unlink ringer and notification volume
- Add ADB over Network tile
- Add Compass tile
- Notification ticker
- Add NFC tile
- Privacy Guard (functions alongside App Ops)
- Implement PIN keypad shuffler

[B]Version 9.3[/B]
~Update to Android 5.1.1
~Materialize DSPManager
~Fix SysUI FC for Themes with QS mods
~Change checkboxes to switches
~Remove Voice Dialer
~Fix for Play Services deep sleeping
~Fix various Theme Engine issues
~Add back notification LED settings backend
~Fix NavRing FC
~Expose values for our applications to be themed
~Hide lights settings if device doesn't support them
~Don't set preferred APN's automatically
~Fix battery and notification lights
~Various translations

[B]Version 9.2[/B]
~Added DU-Updater
~Enable WiFi Display
~Update properties to take full advantage of 3GB heap
~Make Navring available to devices with no navbar
~Add user configurable shortcuts
~Implement ambient display as Active Display
~Change location sensors mode in quick settings
~Show carrier label / custom & change color
~Add Left clock
~Volume rocker music controls
~Double tap to sleep on navigation bar
~Navbar ring targets
~Option to show four tiles per row
~Lots of tiles added
~Theme Chooser updates

[B]Version 9.1[/B]
~NavigationBar Customization
~Add navigation bar arrow keys toggle
~Add left and right virtual buttons while typing
~Create expandable volume panel
~Battery and Notification Lights
~Add Sync tile
~Screenshot Tile
~Update default app icon to a more material like icon
~Material Design makeover
~Proximity speaker: add time delay preference
~Headsup Options
~Mms improvements
~Lockscreen Tile
~Lockscreen shortcut customization
~Themed DU kb hints/spacebar
~Add About DU to settings/about phone
~Add our changelog back
~Allow disabling of FC dialogs
~Update SuperSU v2.45
~Materialize volume panel in/out animation
~Powermenu screenshot delay
~Theme Engine

[B]Version 9.0 [/B]- Initial Release of Lollipop
~Encryption is NOT forced
~SuperSU
~Add customization for Quick Settings
~Add notifications tile
~Add a standalone File Manager
~Proximity speaker
~Add long click support for QS tiles
~Option to disable brightness slider
~Optional DU Blackout keyboard
~Screenrecord
~Add FAB for recents and more locations
~Pimp the power menu out
~Smart Pulldown
~Add ability to change the color in battery saver mode
~Gesture Anywhere
~App circle sidebar
~Battery Bar
~Add Camera sound toggle
~Battery text mode & Forward port battery icon options
~Option to use volume keys to control media volume anytime
~Do not allow to access quick settings on secure lockscreen
~Configurable 0, 90, 180 and 270 degree rotation
~Add AdBlocker
~Add option to disable searchbar in recents
~Quick pulldown preference
~Statusbar clock and date customizations
~MediaScanner behavior on boot
~Add double tap to sleep
~Make voicemail notifications dismissable
~DSPManager
~Volume Rocker Wake
~Turn off carrier provisioning by default
~Doze (ambient display) timeout
~Port forward statusbar brightness control
~Disable Immersive Messages
~Added screenshot delete action in notifications
Disable/Enable screenshot sound
~OmniSwitch
~Network Traffic
~DU bootanimtion
~Quick unlock control for lockscreen
~AppOps
~Add back all keyboard IME features
~Dialer lookup
~Allow disabling volume adjust sound
~Don't wake up device when charger is plugged/unplugged

Credit and Thanks:

We would like to give thanks to everyone that contributes to the Android community, big or small because every bit counts. Although we can't list each and every contributor within the Android community, we would like to highlight some of the teams and individuals that have made it possible NOT only with just this version of DU but throughout the years because we don't ever want to forget where we came from nor those that have helped us!

That said, on behalf of the DU team we say THANKS to....

JMZ Software

5 lb 6 oz Baby Jesus [emoji23]

Code Aurora Forum

Omni ROM

Android Open Kang Project (AOKP)

Android Ice Cold Project (AICP)

XDA-Developers

SlimROMs

Preludedrew

Max Weninger

Team Black Out

CyanogenMod, specialy [MENTION=455439]bgcngm[/MENTION]

Pure Nexus Project

**If we have left someone or some team out, we apologize and please PM us**

Bugs:

Performance issues when battery level is bellow 5%

Download Links:

Final Stable Release (10.6) - Download

Required Firmware - Global Beta 6.9.29 Firmware

Recommended GAPPS - Open GApps

Other Links:

G+ community - https://plus.google.com/u/0/communities/109738128866939227235

ROM Source - https://github.com/DirtyUnicorns

Gerrit - http://gerrit.dirtyunicorns.com

Crowdin (translations) - https://crowdin.net/project/dirtyunicorns

​

XDA:DevDB Information

Dirty Unicorns, ROM for the Xiaomi Mi 5

Contributors

33bca (& [MENTION=455439]bgcngm[/MENTION] for the work on CyanogenMod)

Source Code: https://github.com/DirtyUnicorns

Device Source Code: https://github.com/33bca/android_device_xiaomi_gemini/tree/du-6.0

Kernel Source Code: https://github.com/CyanogenMod/android_kernel_xiaomi_msm8996

Version Information

Status: Beta

ROM OS Version: 6.0.x Marshmallow

Based On: AOSP

Created 2016-10-04

Last Updated 2016-11-17

Source Code: https://github.com/DirtyUnicorns