Android Ice Cold Project
AICP is known by everyone as the "Ice Cold Project" that started on a Desire HD years ago (2012) and since then has evolved into a mature ROM with the BEST community that you can find!!!
Until Android Lollipop, the ROM has always been based on AOKP. Unfortunately, since AOKP stopped development (but made a comeback later), we changed our base to CM.
With the re-brand of CM to LineageOS (LOS) we became LineageOS based with some tweaks from AOSP, for Android Pie we based on the "Ground Zero Open Source Project" (GZOSP), and now for Android 10 we are fully based on AOSP
#include <std_disclaimer.h> /* * 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. Hard & a lot. * */
Feature list (rough overview)
In the beginning we would like to thank:
LineageOS & CM (R.I.P.) team
@Maxwen and the rest of the OmniRom team
Resurrection Remix team
plus the rest of the crazy bunch that we call "team"
We are paying for servers that build nightlies/weeklies and everything that comes with it, so EVERY DONATION will really be appreciated and be used to cover those expenses.
Latest Beta Release Version 15.0
Download link: https://www.androidfilehost.com/?fid...26312261632665
5b2ab3e823 Don't fail dual map if memfd isn't supported
7a1132173 releasetools: Implement system-mount script to support any recovery system mount
099396de4 build: Force system-as-root layout for backuptool
35a4fe778 build: set custom fingerprint in ro.build.fingerprint too
1bfef38c7 releasetools: Add script to sign zips
1b80c6745 releasetools: support reading release keys out of some sort of command
7a8ffb83d Use AICP flash logo
16eb26d12 build: allow forcing build of otatools
8ac26d7ca releasetools: Use the first entry of a mount point when reading fstab
413a70bda releasetools: Store the build.prop file in the OTA zip
d319b950b releasetools: squash backuptool support
387dcd3ec build: Never set persist.sys.usb.config=none in recovery
80132f71 soong: Add function to return camera parameters library name
ff20ed1 sepolicy: Resolve firmware_file denials
7e2fd5f sepolicy: Allow init to mount system configs
49c5881 sepolicy: Label /firmware(/.*)? instead of /firmware/image(/.*)?
597e6ab [SQUASH]: Remove label for sysfs_disk_stat
e7b40cb4e camera: Allow devices to load custom CameraParameter code
a257ea0c2 camera: convert cameraserver back to mk
4939a1c032a Theme settings dashboard icons [1/3]
0b0fd6217 sensorservice: customize sensor fusion mag filter via prop
7c9855ccd sensorservice: Register orientation sensor if HAL doesn't provide it
cefcf29 Initial audio amplifier HAL
2054e5a71 Build audio.primary.* with BOARD_VNDK_VERSION
10fcd30 bt: Add guard makefile
ae146be76 display: Use * pathmap
4d6076a gps: Use * pathmap
ee3ffcd3e media: Use * pathmap
fc15319 AE: Add back settings dashboard icons theme settings
3ebee91 JamesDSPManager: Code cleanup.
44fe8d0 JamesDSP: add more EQ presets
e557ca33 NFCService: Add sysprop to prevent FW download during boot with NFC off.
532d7e28f7 Theme settings dashboard icons [2/3]
9b79e2e Automatic theme update
223f79c manifest: Merge android-10.0.0_r11 into q10.0
8c4beb4 manifest: fix provider origins
2d98536 manifest: track Phonogragh
db81798 manifest: track Media and DownloadProvider locally
1c1af49 manifest: Track local services_Telephony
fc37cf030 Add wrapped key support
de6651e0a libutils: Restore old RefBase-behavior for SDK < Q to avoid loops with legacy blobs
ee8e6160a utils: Threads: Handle empty thread names
d6ef631 vendor_aicp: update apns-conf.xml file from google
88d1fb9 adb insecure by default
046bbdb soong_config: add TARGET_NEEDS_NETD_DIRECT_CONNECT_RULE
346ba7f26 [SQUASH] Merge android-10.0.0_r11 into q10.0
a215aa4e build: Output kernel compiler
a3133184 soong: enhance deviceclean scope
997ff232 Add deviceclean for minimal cleaning
b58b291c Add targetclean to the mix
6b3b727f0 oce: Add props for headset cal and speaker protection cal
e906e11c6 oce: init.qcom.rc: add CAP_SYS_BOOT for charger
2a4520db0 [SQUASH] Merge android-10.0.0_r11 into q10.0
84ec3402129 Merge "telephony: Make IMS method updateToState accessible" into q10.0
60c488eca7d Merge "fwb: logo: code cleanup" into q10.0
1a046c0cf64 add configurable wake keys (1/2)
fa6a64e82d7 Custom button light [1/2]
5153d2d5efc base: Option to use volume keys to control ring volume anytime (1/2)
da962d29d09 base: allow to swap volume buttons rotation based [1/2]
6a63342fddd PhoneWindowManager: Allow torch during ambient display
443415d56e6 Long-press power while display is off for torch
957daca74bd HWKeys: Fix haptic feedback on navbar when hwkeys is disabled
790f1b5e999 HWKeys: Fix annoying trouble with wakeup from hw keys
a8bb25fc7f1 AmbientDisplay: Disable hw keys Prevent stop dozing after hw keys tapping
a4b0ce29026 Fix volume rocker skip track on Ambient Display and Lift to Wake
9c189a2c382 Framework: Volume key cursor control (1/2)
a2df24f6ffd Volume wake/skip track: Make it work independently
cac61a6980b base: fix double volume events on screen off
c13758b94c9 base: volume key music control [1/2]
f2f0c9a2cb2 Volume Rocker Wake [1/2]
5be9f0756f9 HwKeys: Rework kill logic with LOS code
6fe028786f2 Allow to disable HOME key when ringing [1/2]
b5bb81071db base: Introduce Accidental Touch
01065863e46 base: Introduce new navigation bar key event source
4a22c12846d HWKeys: Disable haptic on keyguard
6b21a7ece96 Buttons: Hardware key disable support with M adaptations
cf961989b5b Don't report existing menu key if it was remapped. [2/3]
facfb97800a base: add missing parts for toggleCameraFlash API
4506925aa5e base: API to restart SystemUI without root
1aa8ba82975 Add api to take screenshots
af0c76e8ba0 HW Keys customization support [1/2]
1c8e3495605 Always clear package cache when upgrade is detected
c77394acddd SystemUI: add more notification snooze times
19fc865fbb0 SystemUI: Name Cellular Tile based on carrier
457e439047d Improvements for swipe to screenshot
a2aabf11e28 Merge tag 'android-10.0.0_r11' into q10.0
64b1318f91b Revert "SystemUI: thread protect keyguard callbacks"
cf4f35ead30 base: tuner: fix navbar layout switch and remove old cruft
ad72cc02427 base: enable access to stock navbar settings
7ae0371c97e base: SystemUI: bring back tuner navbar editor from N
de1577f06f9 Bring back better dark for AOSP apps [3/3]
fa34726458a TypeClockController: Make it compile with new plugin API
0dd282709a1 Revert "Drop Type clock face."
0dc03d7603b etc: Add privapp whitelist permissions for ThemePicker
0c47ea4c500 SystemUI: enable custom clock faces
5231a9e99c4 [1/2] base: configure lock screen media artwork blur level
4a2e4586fc6 core: move OmniJaws client to its new home
838db0d05c3 TWS-A2DP: Add TWS+ codec to DevUI support
0771d43cc57 audio: Add support for audio extended codecs
e51848e148c BT: Adding aptX-Adaptive codec entry to Framework
ea01359e0ec Statusbar battery level device filter: add a few more ones
84fbc1efade media: Define MPEG-H Encoder Format
db36e50e685 audio: add support for extended formats
c3d67a3470d wm: Use a different execution context to register WFD rotation receiver
9bfb6aaebf1 wm:isplayRotation: Changes for WFD and UIBC.
087427123a7 Keyguard: add binary custom clock face
ca00e946525 Position "At a Glance" on type clock below status bar.
6d7ca7bf07f Remove a user/userdebug difference.
e1180acaf4e Fix memory leak in aapt2
4df9afeab95 aapt2: disable leak detection
56a90ba0be6 Add missing INTERACT_ACROSS_USERS_FULL permission
6973d6524be Revert "Disable custom clock faces in SystemUI"
5d286e989a7 Revert "Disable ClockOptionsProvider so clocks don't appear in picker app"
aa661794e16 PackageManager: allow build-time disabling of components
36d730d ae: brink back wake keys
2030073 ae: bring back hwkeys custom lights
a8adfaa ae: bring back volume keys control ring tone
fc11c2b ae: swap vol buttons are back
6e79398 ae: fix long press for torch timeout
feba1b5 ae: enable several volume key controls
4c34fa4 ae: enable long press power for torch
4356d3bf1a Merge "Expose homepage_container_bg for our legacy settings theme" into q10.0
c9111be [SQUASH] Merge android-10.0.0_r11 into lineage-17.0
6c61e06f9 Merge changes Id3d6656b,Ie9cf2e59,Id963fff5,I9960d167 into q10.0
7de88db vendor: Use PixelThemes style
77f4ae4 vendor_aicp: Build WallpaperPicker2
9c27d1b prebuilt: Add a script to simplify A-only recovery system mount
e63dd55 Add overlay to specify our custom theme provider
1e80e2f vendor_aicp: Build ThemePicker
a8e358b lineage: GMS updater components disable list bringup
4f7f321 vendor: Rename config_disabledComponents
92da4f0 sepolicy: Move sysfs_graphics to qcom
4ed937d sepolicy: allow sysfs livedisplay hal read privs to sysfs_graphics dirs
3e0c933ac oce: Don't build QTI GNSS HAL Service
78c92054b Revert "oce: Enable link probing"
e77f61849f6 SystemUI: Allow disabling BrightlineFalsingManager with config flag
56c11eb048 Remove empty space in tether preference
402b9cd07 oce: gps: Rename QTI GNSS HAL rc filename 1.0 -> 1.1
21242e395 oce: Build QTI GNSS HAL Service 1.0
40e8c58d6 Revert "oce: Remove creation of crashdump.d"
ac7f45839 oce: FR 53051: Self Contained Module
5ddb3031b oce: Remove creation of crashdump.d
dc3340abc oce: rootdir: Attach mm-pp-dpps process with hwcomposer-2-1
162046a jni: Add broadcom FM to the guard
f2f4d6e privapp-permissions: Grant START_ACTIVITIES_FROM_BACKGROUND perm to Snap
88a8b445b oce: Clean up a merging derp
069e1584d oce: Hexedit libcne.so to make it load with HTC QMI CCI blobs
0e96ffd4e Revert "oce: Update libqmi_cci.so from LA.UM.8.6.r1-01900-89xx.0"
d430811a5 oce: Update libqmi_cci.so from LA.UM.8.6.r1-01900-89xx.0
13e12026a oce: Update CNE/DPM from LA.UM.8.6.r1-01900-89xx.0
8977a8c05 Revert "oce: Disable system-side DPM blobs"
0b9b5903f Fix crash in call stats.
5bafa4fd6a Expose homepage_container_bg for our legacy settings theme
75971d9 Use homepage_container_bg for our legacy settings theme
7b5a47e88 oce: don't build rmnetcli
6f59c0c57 oce: overlay: Enable VoLTE for Airtel/Vodafone India
fa83d205b oce: configs: Update include path for audio policy
552a88d67 oce: configs: Remove surround recording support from audio policy config xml
67844f98d oce: configs: Remove Dolby formats by default.
70c892b3e oce: overlay: ignore rssnr signal implementation
975ef9523 oce: Bring in default volume table
fa4ac306c oce: configs: extend unprocessed audio
cbc7deff1bb fwb: logo: code cleanup
ce08c33d2 sdm: add board flag for panel shift
629a74e manifest: Track MediaProvider from LoS
17be435 sepolicy: Allow Snap to execute bcc
5029e14cf58 Color/tint the wifi/mobile status bar icons correctly
9fcb333 [2/2] ae: configure lock screen media artwork blur level
2e974365f Revert "config: enable LAUNCHER3_PROMISE_APPS_IN_ALL_APPS"
1946f46e8 Launcher: fix code leftovers in BubbleTextView
536eb38f0 Launcher: add numAllColumns to grid option class
1d8041fef Launcher: Hide Notification Dots on low RAM devices
a1cdd25 ThemePicker: Fix READ_EXTERNAL_STORAGE permission and ask on start
0a2462b WallpaperPicker2: ask for storage perms on start
9552e9081 Revert "oce: wifi direct cleanup"
0f5d174bb oce: touch: Convert GloveMode from lineagehw to Touch HAL
c8c688a66 oce: Update location to LA.UM.7.5.2.r1-03700-8x96.0
ce743000138 fwb: Slim recents Q
bcfc064fc [SQUASH] Merge android-10.0.0_r11 into q10.0
c1293f9eae740 cfg80211: Fix use after free when process wdev events
90351b2 Merge "AE: Bring back slim recents" into q10.0
ce1980f8b Specify the component name to start the picker
713cfdf6a Specify the wallpaper picker package
b6547a292 Launcher3: Introduce Quickspace [squashed]
9cb8110851 settings: Add toggle to enable ADB root Part 2
0c617c46 Merge tag 'android-10.0.0_r11' into q10.0
bda0ca7b [SQUASH] Merge android-10.0.0_r11 into q10.0
5a35fe33e Merge tag 'android-10.0.0_r11' into q10.0
73f66f762 bionic: Squash of pre-P mutex behavior restoration
bd6deba0 Make adb use a custom prop for adb root
dced495 Add adb_root rules
64d41e0d2 Revert "oce: don't build rmnetcli"
efc25d0bf oce: Compile fwk-detect
12456aa37 oce: Update gps to LA.UM.7.5.2.r1-03700-8x96.0
b453a4bcecc PrivacyItemController: Enable permission hub by default
9b121d35066 Revert "DO NOT MERGE Remove Privacy Indicators"
5276e833948 Whitelist settings to use adb root permission
83759221ef7 Expose the ADBRoot interface to priv-apps
6e5c98af3b Add toggle to enable ADB root
486814e650 Settings: Enable permission hub by default
b323a4a13a Revert "Remove Permissions Hub."
12b1b92 Remove wallpaper picker from launcher
e502502af Make adb use a custom prop for adb root
ab60ef4bc Add adb root hooks
8b57cf890 Add adb_root daemon
48c744e Build adb_root
46390abf1 oce: Update peripheral manager blobs from LA.UM.8.6.r1-01900-89xx.0
9ac08da70 oce: Update ims apk from mata-user 10 QP1A.190711.122
f33f6cfd9 oce: add missing privapp-permissions
dd3e2dad0 oce: cleanup charging
688908637 oce: mediacodec: Allow syscalls needed by OMX component
fbe3cf10fbb telephony: Make IMS method updateToState accessible
98b58b79 CallLogDatabase: Try to re-run the version 6 upgrade path
be3d69b64 oce: move htcdcpd to system
a45611e24 oce: add missing ims permission
You tell... :P
Q. Can I have an ETA for the next build?
A. Yes, just look here to see what day your device is built on.
Q. Does this ROM support custom kernels officially?
A. No. You can still use them, but discussion should go in the thread of the respective kernel. We don't offer support for bugs you might encounter while using them!
Q. Why doesn't this ROM support Xposed?
A. Xposed is a hack that is geared towards AOSP. Custom ROMs modify the framework a lot, so Xposed can cause a ton of issues on custom ROMs. Now it might work for you, however it is not to be discussed in this thread, and you should refrain from posting bug reports.
Q. Alright, but I still want to flash Xposed, so which version do I need to install?
A. Xposed is not yet released for android 10.
Flashing the ROM:
Q. What do I need to know before flashing?
A. Check the flashing instructions...
Q. Can the builds be dirty flashed over each other?
A. Yes, however make a nandroid backup first as there is a chance of getting a bootloop or encountering bugs. Also bugs may only be reported on a clean flash.
Q. How do I 'dirty flash' builds?
A. Wipe the System, Cache and ART/Dalvik cache. Flash the ROM, GApps (only needed if you wipe the system), your preferred root solution and reboot. Or just use the OTA app to preform that task for you.
Q. How do I flash kernel builds?
A1. If it's a .img file, boot into TWRP and go to the install page in TWRP, in the bottom right corner select "install image", select the desired kernel, then select "boot" as the destination, then swipe to flash, then go back to the install screen and install your root method again, if you don't want to loose root and reboot.
A2. If it's a flashable ZIP, you can flash it together with a ROM update or separately. Go to the install page in TWRP, choose the kernel zip (or add it to the flash queue right after the ROM zip). Then add your root method to the queue if you don't want to loose root. Now swipe to flash and reboot afterwards.
Using the ROM:
Q. I installed a bad theme and now I'm getting a bootloop, how do I fix it?
A. In TWRP, flash the substratum rescue zip that's in the substratum folder on the internal storage.
Q. I'm having issues with WhatsApp, how do I fix it?
A. Read this
Q. Do I need to provide a logcat if I'm reporting a bug?
A. If you want it to be fixed faster (or at all) then yes, you should definitely provide a logcat. (Note: Please just link the logcat from your GDrive, Dropbox, etc. and do not post the content here. Thanks.)
Q. How do I get a logcat, what type should I get and more questions that can conveniently be answered by my pre-determined answer?
A1. Read this thoroughly. Also, here's a good app for getting logs: https://play.google.com/store/apps/d....tortel.syslog (Root needed).
A2. If you are already rooted, you can use the built-in feature to make a logcat and provide that. Just look into the others section in the AICP Extras main page.
If you want the device to run the ROM "rooted", you can flash a root solution of your choice after the ROM Zipfile.
It is STRONGLY recommended to fully wipe your device before flashing and please avoid restoring system apps and system data with Titanium Backup (or with any backup/restore app) as this can cause stability issues that are very hard to debug, restoring regular apps is fine though.
If you believe you know what you're doing - then fine, go ahead, but please don't complain if you experience any strange behavior.
How to flash for the first time:
(Again: Don't do it if you don't know!)
1. Download the ROM and GApps and transfer them to your device.
2. Boot to recovery (TWRP recommended).
3. Wipe the System, Cache, and Data (you might need to format the data partition!).
4. Flash the ROM Zipfile.
5. Flash the GApps (optional, needed for e.g. Google Playstore to work).
6. Reboot and set up your device, enable developer settings and in them OEM unlock/Advanced reboot/USB tethering.
7. Reboot back into TWRP recovery.
8. Flash the root solution of your choice (optional).
9. Reboot your device.
The procedure may vary from device to device and is a bit different on system updates!
The ROM has GApps persistence in between dirty flashes, so you only have to flash them once! This might differ on AvB Devices.
Currently supported Root Solution:
Magisk versions >= 17.2 don't usually need to be flashed on every dirty flash.
Depending on the device, you may need to flash it every time, unless your maintainer says otherwise, you should be fine.
PREREQUISITE FOR OTA ("Over-The-Air" Updates):
TWRP recovery is needed to be able to flash using the built-in OTA app.
Please make sure that you are on the latest TWRP recovery, keep in mind that this could also be an unofficial version!
On encrypted devices you will have to enter your PIN/password in TWRP before the process starts.
If you want to contribute to AICP, or want see what is being worked on/merged, feel free to visit our Gerrit code review system. (Link is at the bottom!!!)
Device tree source:
ROM & Additional links:
AICP Gerrit Code Review
AICP sources on Github
AICP Discord Community
You want to see a "normal" night at the "DEV office", click here!!
aicp_oce_q-15.0-UNOFFICIAL, ROM for the HTC U Ultra
ROM OS Version: Android 10
ROM Kernel: Linux 3.x
ROM Firmware Required: N7 / O8
Based On: AOSP
Current Beta Version: 15.0
Beta Release Date: 2019-11-16
Last Updated 2019-11-16