272 Commits

Author SHA1 Message Date
Joey
c694a8dbd8 config: Update PIF to latest caiman_beta
Signed-off-by: MOVZX <movzx@yahoo.com>
2025-12-19 00:15:56 +07:00
f44c1bd73b Merge remote-tracking branch 'evo/bka' into evolution
Signed-off-by: MOVZX <movzx@yahoo.com>
2025-12-11 07:22:49 +07:00
TechPanelGM
3d167a7651 version: Uprev to 11.4.2 2025-12-10 00:00:44 +09:00
Joey
e8c25c957a component-overrides: Add more google components 2025-12-10 00:00:26 +09:00
Pranav Vashi
ce72147292 component-overrides: Force disable various google components
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:26 +09:00
minaripenguin
6a9e8f166c config: properties: Add pihooks default values
* A16 QPR2 Beta 3.3

Spoof BuildFingerprint as Pixel Beta

* It is necessary to pass integrity with the built-in Keybox Importer, as our stock fingerprint is not "Valid"

Co-authored-by: Joel Lucas <joelcba57@gmail.com>
Co-authored-by: Joey <joey@evolution-x.org>
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
2025-12-10 00:00:26 +09:00
Pranav Vashi
d0d2a2baf0 overlay: Use google sans flex for lockscreen clock
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:26 +09:00
Joey
e12323db58 Update default wallpaper from Pixel 10 Pro XL 2025-12-10 00:00:25 +09:00
aswin7469
0126eefc8c device_config: enable new now playing QS tile and updated lockscreen UI
preview: https://t.me/aswinaskurup/729

Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-12-10 00:00:25 +09:00
aswin7469
40996b0ec2 device_config: cleanup and update from 16 QPR2
* set only whatever we need gms will handle rest

Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-12-10 00:00:25 +09:00
minaripenguin
3e012054c5 config: Dexpreopt pixel launcher 2025-12-10 00:00:25 +09:00
Ghosuto
cdc40b49d3 release: Wifi multiuser flag
Change-Id: I72205b7762d6052ed0c22a6e44ceb68545a14831
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
2025-12-10 00:00:25 +09:00
Joey
fe8680cc88 version: Uprev to 11.4.1
* After adding pixel-fw
2025-12-10 00:00:25 +09:00
rmp22
f938500551 config: add target_ims_override flag
Change-Id: Ib386515e21c6cabeb8c3bacd5b82f63e7796ef94
2025-12-10 00:00:25 +09:00
Dhina17
4222bb2257 config: Build LMO systemui clock plugin
Change-Id: If4f6431bdbab5c9f4f75b8116d445a0f83c39ee9
2025-12-10 00:00:25 +09:00
Joey
dd49bf5586 config: Don't build OmniJaws 2025-12-10 00:00:25 +09:00
Joey
870a8fe790 version: Uprev to 11.4
* November 2025 patches
2025-12-10 00:00:25 +09:00
rmp22
ec97cd9901 config: disabling hwc composition strategy on perf anim targets
perfetto shows a lot of wasted time done on hwc composition strategy on mtk targets

Change-Id: I88c810c954ae689f5ecd5c8f03e5130c356ae631
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
rmp22
5f1c729e35 config/common: preopt extracted apk always 2025-12-10 00:00:25 +09:00
Mathieu Chartier
2c683a6e84 config/common: Reduce system server verbosity
Enable it only with user builds

Test: lunch statix_cannon-user && m
Change-Id: I58d2e993ae9a7213e94661d22b47c28b0a2243e8
Signed-off-by: Vaisakh Murali <mvaisakh@statixos.com>
Reviewed-on: https://review.statixos.com/c/android_vendor_statix/+/13531
2025-12-10 00:00:25 +09:00
Mathieu Chartier
248f49d60e config/common: Disable dexpreopt debug info on user builds
Test: lunch statix_cannon-user && m
Change-Id: I9e4b4c9907b92fea764cf07e218541bb33937b3c
Signed-off-by: Vaisakh Murali <mvaisakh@statixos.com>
Reviewed-on: https://review.statixos.com/c/android_vendor_statix/+/13530
2025-12-10 00:00:25 +09:00
minaripenguin
270324c575 config: Load boot image profile from frameworks/base
[YAAP:] art boot image profile is only intended for thin art builds
without frameworks/base.

Change-Id: I60f3117c6ba948311af9f3fe048d0cf304fc283a
2025-12-10 00:00:25 +09:00
Pranav Vashi
c138d69750 vendor: Do not clone default AudioFX app
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
rmp22
76beb102b0 config: adding flashlight strength flag
Change-Id: I69f051676d6e3048307c48aead46a1b04d7b872d
2025-12-10 00:00:25 +09:00
Ghosuto
0a74a5c8c2 release: Enable move_transition_animation_layer
- Enables moving the launching window on top of the origin window in the Animation library

Change-Id: I9b383064253cd44026932182161bfc96b36daeaf
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
2025-12-10 00:00:25 +09:00
minaripenguin
b56bbff5d2 aconfig: Disable FRP enforcement
Change-Id: I77f990d2187b4afa3d106a79361a8dc340d09065
2025-12-10 00:00:25 +09:00
rmp22
b9b6331318 overlay: disable dreams feature
Change-Id: Iac6460e742aa11e175008db4b891d1b4768d5aec
2025-12-10 00:00:25 +09:00
Pranav Vashi
85e046ccf0 Revert "overlay: Default to Seedvault backup transport"
* If we never set up SeedVault, we get error notification every boot.

This reverts commit a88d06f120.
2025-12-10 00:00:25 +09:00
Pranav Vashi
fd122ea34b overlay: Drop now playing customization
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
rmp22
6bcaa7d896 vendor: overlay: enable ambient burn in protection
Change-Id: I479491bae09e089aba646ade34d7bff5d460e12f
2025-12-10 00:00:25 +09:00
Oliver Scott
910c084b85 Disable nfc by default
Issue: calyxos#3038
Change-Id: Ifd8a9e4826b0c48c58d923086cf0aaea3e945722
2025-12-10 00:00:25 +09:00
minaripenguin
7914ff3197 overlay: frameworks: Suppress ASI system crash dialogs
* this issue started from u beta and some users on t also reported ASI crash upon reboot or so.  this is probably google side since the crash happens when ASI tries to update its text classifier flags but ended up triggering bad base-64 due to a bad/malformed string.

Change-Id: Id33679c48585ced550ba005ef99f19694bb27bf4
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
Henrique Silva
e337645258 overlay: Don't warn user about FC in Google TTS
This happens on almost all FDE devices, I don't see any workaround other than hiding these dialogs
2025-12-10 00:00:25 +09:00
Danny Lin
de58de3d30 overlay: core: Suppress System UI ANRs
It looks like Android 12 qpr1 still has the bug where "System UI not
responding" dialogs appear sporadically after taking a screenshot. Just
suppress the ANRs for now.
2025-12-10 00:00:25 +09:00
Danny Lin
5aad200cc4 HACK: overlay: core: Suppress Intent Filter Verification Service crashes
Intent Filter Verification Service, the AOSP service that verifies
app link domains, is crashing for some users depending on their
installed apps. Temporarily suppress the crashes until we have a better
solution.
2025-12-10 00:00:25 +09:00
Joey Huab
2c0851ca60 config: Set new audio from mustang BD3A.250721.001.B7 as default 2025-12-10 00:00:25 +09:00
rmp22
bad2ec70f5 config: add PERF_ANIM_OVERRIDE flag
Change-Id: I7d264207abef968739b57c9fce19e8f65466ee8c
2025-12-10 00:00:25 +09:00
Adithya R
cc35f6908d overlay: SystemUI: Tune new biometric dialog UI
Change-Id: Idcc5995f657b61647facd8d147a346e4898d677a
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Saikrishna1504
bd8bc701f7 build: Skip ABI Checks
Signed-off-by: Saikrishna1504 <saikrishna26918@gmail.com>
2025-12-10 00:00:25 +09:00
rmp22
b519a08ecb overlay: Enable split shade for notifications in landscape
default landscape is so ugly

Change-Id: Ida1fdc8199070ede063c394942cabdff1d7f4fb8
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
a21bd138fe release: Disable apply_picture_profiles
We do not have a media quality service set up yet.

Change-Id: If32e802eddac7464d98685f15aa86eb8f8228b6a
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
c248a7367b release: Generate themed/monochrome icons for all apps
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
71e8e6040f release: Remove glanceable hub
Broken atm.

Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
84dcb920a4 release: Remove some useless notification flags
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Pranav Vashi
e4a3b510ff release: Remove flag for using emphasized font family for shade header
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Pranav Vashi
aedbe2bce1 release: Remove glitchy depth push scaling effect
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
7bb4fb59d1 release: Disable lpp squeeze effect
Causes crash on power button hold when using assistant.

Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
2025-12-10 00:00:25 +09:00
Sourajit Karmakar
66383a987e overlay: Make Google Sans the default headline font
Change-Id: I60fd95e4fa73335a01f187f74b7ded6bb16067ce
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Abhay Singh Gill
52769f46ab release: Disable codec_availability flags
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
2025-12-10 00:00:25 +09:00
Joey Huab
04432fb9e8 vendor: Drop notification themed icons
* Users cannot distinguish each app from one another, apparently.
2025-12-10 00:00:25 +09:00
Dmitrii
2defcd3e0c vendor: drop more launcher flags
expressive dimiss is bugged, and launcher icon shapes is unused
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
3208af661e vendor: drop more flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Pranav Vashi
3f80b26ba2 build: Ship adb_root only WITH_SU
* TBH - hardly any user uses adb root.
* adb root poses root detection risks.
* Most devices are user or userbuild type.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
ahnet-69
5e5a0ed197 vendor: Disable thumbnail_block_model flag
Change-Id: Iebd8a44c2591031c02096402bcec8a513c1da1ac
Signed-off-by: Frost <frost.github@proton.me>
2025-12-10 00:00:25 +09:00
Vaisakh Murali
c34cae45cb release: Enable android.app flags
Change-Id: I9f3e4416ead6f65d138002775a29ad7b5498a651
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
ace6d7a918 release: more flag changes
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
a8de57c739 release: enable more flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
fa18d9f681 release: drop low_light_clock_dream
06-24 16:53:23.418  2021  2021 E AndroidRuntime: java.lang.RuntimeException: Unable to create service com.google.android.systemui.lowlightclock.LowLightClockDreamService: java.lang.RuntimeException: Couldn't call constructor
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.handleCreateService(ActivityThread.java:5317)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.-$$Nest$mhandleCreateService(Unknown Source:0)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2606)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:110)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:248)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:338)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:9102)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:598)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: Caused by: java.lang.RuntimeException: Couldn't call constructor
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.systemui.SystemUIAppComponentFactoryBase.instantiateService(go/retraceme 4d9244815cb2a8db26361f6e20f13b475cc86e8d80733cfefb09c7ddee4d5759:66)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.handleCreateService(ActivityThread.java:5274)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	... 9 more
06-24 16:53:23.418  2021  2021 E AndroidRuntime: Caused by: java.lang.NoSuchMethodException: com.google.android.systemui.lowlightclock.LowLightClockDreamService.<init> []

Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
720b64b6fe release: drop some flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
Dmitrii
82bca4346f release: drop new sb icons
buggy and dont work well with customizations atm
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-12-10 00:00:25 +09:00
ralph950412
2d1abcb339 release: Enable WallpaperPicker2 flags
Change-Id: I7f389e8bdb6e9998681cf7abb561d5aaf6b8d909
2025-12-10 00:00:25 +09:00
ralph950412
51e5ca18f9 release: Enable SystemUI flags (com.android.systemui.shared)
Change-Id: I7a4b4fa22e3f3c6f5b2eceea9e3fde573a937e9c
2025-12-10 00:00:25 +09:00
ralph950412
4f66c6ca39 release: Enable SystemUI flags
Change-Id: Id7b6b7ec61363c9a90a4354ec78215c7ce697652
2025-12-10 00:00:25 +09:00
ralph950412
5f04e45f34 release: Enable SettingsLib flags
Change-Id: Ide729f28d84e05063b961c504e52dc2249febe98
2025-12-10 00:00:25 +09:00
ralph950412
8f4aff7f10 release: Enable Settings flags
Change-Id: I4aacdc60d799a139941783dc69fd03cb591ec84a
2025-12-10 00:00:25 +09:00
ralph950412
c86148e1f1 release: Enable Launcher3 flags
Change-Id: I06cb64470805c579619fe2512ae79d60a746d65c
2025-12-10 00:00:25 +09:00
techyminati
aca33c3349 config: Enable Material Design 3 Expressive
Change-Id: Ib6d3ac2e0f3d76768c508e1b00efc51e141c1b09
Signed-off-by: techyminati <sinha.aryan03@gmail.com>
2025-12-10 00:00:25 +09:00
rmp22
9775ee20ab config: Add bypass charging prop
Change-Id: Iee2e99e9ec929221336fea361ab516b00f47bb7e
2025-12-10 00:00:25 +09:00
rmp22
7004acff27 overlay: add applock whitelist
Change-Id: I491f05eb300285adf453d35954c35080ec1207cf
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
rmp22
4d0ee65e6a common: Disable art debug builds
Change-Id: I44e16c12c70e30dea8e85a9751cc94e4ff329898
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
rmp22
eecb421245 config: add blur support
Change-Id: I5fabdbbdfe812346f17dbba5d4bf9abe7344e0ca
2025-12-10 00:00:25 +09:00
Dyneteve
dd21781b9b overlay: Allow ShannonIMS to access ServiceState
Change-Id: Ic43f212f81e6a53daf6879a7110effafbc000ec4
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-12-10 00:00:25 +09:00
rmp22
fe4664e23e overlay: Update circle to search overlays for vanilla builds
Change-Id: Id72c2e81494f793d773cfc5de24cb15eeaaaf5e9
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Ido Ben-Hur
7e9ad70d27 overlay: Enable circle to search 2025-12-10 00:00:25 +09:00
rmp22
06f77082c1 Enable ThinLTO cache
Change-Id: I8438591a418fc4f9ce3ceead84cda9b6870758ff
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
rmp22
f575611d9a build: Override host metadata
reference taken from
https://grapheneos.social/@GrapheneOS/113870255397154703

instead of fixed host number, use a random generated host number that follows google's host number format to bypass revolut's host checks

Change-Id: I72feafd663a551eb0c6c4146d52137ed0dc7456d
Co-authored-by: Terminator-J <terminator_j@hotbutteredmonkey.com>
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Terminator-J
827e376212 kernel: Set "safe" default values for kernel build host & user
Take all the fun out of the game and set sanitized values by default.
2025-12-10 00:00:25 +09:00
Dyneteve
055d583b2b overlay: Enable keyboard vibration
Change-Id: Ibb162e8ce74ce566f326b8d21951a3eaec0113d8
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-12-10 00:00:25 +09:00
Dyneteve
7079bd0d26 overlay: SystemUI: Add plugin whitelist
Change-Id: I38e6a5c5eb9ceaee13e0cd8ab1c3d858d72aa19c
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-12-10 00:00:25 +09:00
John Galt
7aff929a68 DeviceConfig: drop smartspace flashlight action chip (again)
Accidentally made it back recently
2025-12-10 00:00:25 +09:00
John Galt
0a8d901a2e DeviceConfig: update nearby flags
Fixes gms find my device drain on some devices such as waffle, found
on new pixel configs
2025-12-10 00:00:25 +09:00
Pranav Vashi
1239c2fe8c config: Conditionally build ColumbusService
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
rmp22
16a49934ef Add option to ship viperfx
Change-Id: I35cea2206d098a53e03c54f462b59db991c891bb
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-12-10 00:00:25 +09:00
Asriadi Rahim
b69c1b3a9d vendor: Make BCR optional 2025-12-10 00:00:25 +09:00
tejas101k
93f4346d72 config: Build Updater for all
* Local update could still be helpful
2025-12-10 00:00:25 +09:00
Danny Lin
7da4a6fe33 config: Disable RescueParty
RescueParty's aggressive approach to error recovery almost never helps
with the problems we're likely to face, and its risk of data loss is far
too high. Force-disable it entirely and remove all other conditions,
especially those that depend on data integrity in the first place, to
reduce the risk of RescueParty triggering falsely and causing data loss.

Note that it is still possible to force-enable RescueParty for testing
purposes using the persist.sys.enable_rescue property.
2025-12-10 00:00:25 +09:00
Adithya R
46670d30c5 config: Build LMO Freeform app and sidebar
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: GXC 2356 <gxcdev2356@gmail.com>
2025-12-10 00:00:25 +09:00
Pranav Vashi
02a1bbb9b2 config: Build OmniJaws service
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
Pranav Vashi
b8edd4d97c config: Build OmniStyle
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
someone5678
4a6375bdf0 config: Build BtHelper 2025-12-10 00:00:25 +09:00
Pranav Vashi
395fbdb085 config: Build GameSpace
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:25 +09:00
minaripenguin
5d9936187d config: Build tensorflow lite jni
Signed-off-by: clarencelol <clarencekuiek@proton.me>
2025-12-10 00:00:25 +09:00
HeCheng Yu
718e836637 config: Disable default frame rate limit for games
Android 15 limits refresh rate to 60hz for games unless we enable the developer option 'Disable default frame rate for games' manually.
Adding this prop enables it by default.
2025-12-10 00:00:24 +09:00
minaripenguin
181e9e7d40 vendor: Introduce bootanimation styles [2/3]
vendor: Add more bootanimation styles [2/3]

vendor: Add ctOS bootanimation [2/3]

by benmeroff - https://xdaforums.com/t/boot-animation-ctos-boot-animation.2843830/

vendor: Add Evolution X Reveal boot animation [2/3]

vendor: Add more classic boot animation styles [2/3]

* Remove anniv bootanimation as it takes a lot of space.

Co-authored-by: 0xsharkboy <achille@0xsharkboy.dev>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
Signed-off-by: 0xsharkboy <achille@0xsharkboy.dev>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:24 +09:00
Andrzej Perczak
4bd9a756f8 common: Optimize Launcher3 and Settings for speed
Signed-off-by: Andrzej Perczak <linux@andrzejperczak.com>
2025-12-10 00:00:23 +09:00
someone5678
e619be3bd7 config: props: Set default wifi country code
* To 00
* Make it overridable

Change-Id: I2025fc927363baf547b36ecd6ebe9c7fbc4d7611
2025-12-10 00:00:23 +09:00
Le Hong Duc
b6fa508501 config: Don't dexpreopt prebuilt apps
Pre-optimizing prebuilt Gapps is not needed because they are mostly
updated via Play Store and device will optimize them on install.

Save some space on /product partition and reduce build time.

Signed-off-by: Le Hong Duc <hongducthbk123@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
227ba9a4c9 common: Inherit pixel-fw when available
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
minaripenguin
0acce350a6 config: Disable memtag for different processes
* it defaults to async if not specified

Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
ShevT
598eb3083b config: Adding an option to build DeviceAsWebcam 2025-12-10 00:00:23 +09:00
Pranav Vashi
39157a51aa overlay: Set AOSP webview as fallback
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
DarkJoker360
3cdf1dda7f Drop custom adb drawable
Signed-off-by: DarkJoker360 <simoespo159@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Jyotiraditya Panda
ba61c1ebbf overlay: Update default keyguard affordance setup
- Left affordance: flashlight
 - Right affordance: camera

Change-Id: I3295007e351d6e17b6efb13cacd9665475f4f34a
Signed-off-by: Jyotiraditya Panda <jyotiraditya@aospa.co>
2025-12-10 00:00:23 +09:00
Adithya R
66788309c6 overlay: Remove bouncer delay when face unlock is enabled
No idea why was this annoying thing made a "feature" in the first place.

Suggested-by: Omkar Chandorkar <gotenksIN@aospa.co>
Change-Id: Iefd47099c48586dd97644e90fadf93707617a74e
(cherry picked from commit ec3160865ccb36fb8c02a5f447f670b3176c0601)
Signed-off-by: clarencelol <clarencekuiek@proton.me>
2025-12-10 00:00:23 +09:00
someone5678
6c77a4511e overlay: device_config: Updates
From gms device config:
- textclassifier: set manifests + needed options
- window manager: set splash screen exemption list

Co-authored-by: John Galt <johngaltfirstrun@gmail.com>
Co-authored-by: Joey Huab <joey@evolution-x.org>
2025-12-10 00:00:23 +09:00
cyberknight777
c2aed9c4d0 overlay: device_config: Add values required for Speech Recognition
Dumped from whatever gms sets as a configurator
2025-12-10 00:00:23 +09:00
Ido Ben-Hur
7ce04ab78f overlay: device_config: Escape special characters 2025-12-10 00:00:23 +09:00
aswin7469
67ee633278 overlay: device_config: animate navbar on long press
Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-12-10 00:00:23 +09:00
Ionut Gherman
3952d23f92 overlay: update configs for AiAi
* taken from LineageOS/android_device_google_zumapro@9d1b0cf
Signed-off-by: Ionut Gherman <ghermanionut96@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
f06d205d9c overlay: Use google-sans for font config overlays
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
e989dde1ed overlay: Add gms location history to extra location packages
* From pixel dump. Suggested by @nikhilmenghani.
* Nikgapps will remove this overlay as it conflicts here.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
447570d484 overlay: Add tethering to location exemption
Ref: 404b4778ec

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
7686d980cb overlay: Add SystemUI to location extra packages
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
5787d9f321 overlay: Add OmniJaws to location extra packages
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Danny Lin
cd42a3078b overlay: Offload WM shell to another thread
Android 12 added this config to offload some window management to a
dedicated thread. Enable it to improve performance when the main System
UI thread is busy.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
90a36910bc overlay: Update SettingsProvider defaults
* Reduce default screen off timeout to 30 sec.
* Turn on automation brightness mode by default.
* Turn on vibrate when ringing by default.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Pranav Vashi
cbcffbf473 common: Allow OTA downgrade regardless build type
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:00:23 +09:00
Dhina17
c3ac1d235e soong: Add libcameraservice extension config
Change-Id: Id20f782c1008fed1f15250129618326091f61bf8
2025-12-10 00:00:23 +09:00
Adithya R
faa7d20e7b soong: Add support for miui camera mode [2/2]
Change-Id: I0c912a1c7056bb204a24bd5f0a08308cae71f3f3
2025-12-10 00:00:23 +09:00
AnierinB
ce53198051 soong: Conditionally spoof ro.product.first_api_level to 32 [1/2]
Devices that shipped on API 33 or higher need to set
ro.product.first_api_level to 32 in order to pass integrity.

Set SPOOF_FIRST_API_LEVEL_32 := true in BoardConfig*.mk to enable.

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Jake Weinstein
c590a805b1 soong: Add support to set vendor tag with client package name
* OEMs like OnePlus and Nothing detect camera package name to unlock features like 48mp.
* Use TARGET_CAMERA_PACKAGE_NAME to specify the package name.

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
ponces
58694be85f evolution: Switch to AOSPA's face unlock implementation
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Dyneteve
a27e1e1522 overlay: Update device configs global overrides
Co-authored-by: Joey <joey@evolution-x.org>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Co-authored-by: aswin7469 <aswinas@pixysos.com>
Co-authored-by: someone5678 <someone5678@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Dyneteve
52f2f6a6d4 overlay: Allow new SystemUI clocks
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I51ab1eb06b1e77bd8048d5064f811e8e69884b24
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Danny Lin
168a7257bc overlay: Settings: Show memory usage in app info
The system tracks memory usage for each app, so we might as well show it
to the user so that users can track down which apps are hogging their
memory. This shouldn't be a developer-only feature that was previously
only exposed in Developer Options.

Change-Id: Ib900438f856369286b7621208020c5c8da73765f
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
aswin7469
564d2194f7 evolution: Enable Cloned App
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: John Galt <johngaltfirstrun@gmail.com>
Co-authored-by: minaripenguin <minaripenguin@users.noreply.github.com>

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Pranav Vashi
a27d521172 overlay: Use google-sans for remaining font configs
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
AnierinB
6eae7c78e3 evolution: Configure support for Evolution X Vanilla
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:23 +09:00
Dyneteve
e6070f27e8 evolution: Inherit Pixel additions via WITH_GMS
* GMS
* Audio
* Charger
* RRO overlays

Co-authored-by: Joey <joey@evolution-x.org>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Co-authored-by: someone5678 <nemui3353@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:00:22 +09:00
AnierinB
66084de289 lineage: Initial Evolution X rebrand
Co-authored-by: Joey Huab <joey@evolution-x.org>
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: Lup Gabriel <gwolf2u.website@gmail.com>
Co-authored-by: Hemant Sachdeva <hemant.evolver@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-09 23:59:33 +09:00
Joey Huab
5ee062d790 Revert "config: Use add_soong_config_namespace/add_soong_config_var macros"
This reverts commit c2dd68f84a.
2025-12-09 23:59:33 +09:00
Joey Huab
5938954e81 Revert "Revert "Add product_launched_with_j{,_mr1,mr2}.mk""
This reverts commit e1e121bea4.
2025-12-09 23:59:33 +09:00
Joey Huab
7edb656bf3 Revert "bootanimation: Convert to Android.bp"
This reverts commit 3b29ed3826.
2025-12-09 23:59:33 +09:00
Joey Huab
3cebf44d8f Revert "charger: Convert to Android.bp"
This reverts commit b3e6f3ad7e.
2025-12-09 23:59:22 +09:00
Michael Bestas
418ab429bc Disable yet another gms update component
Change-Id: If8104a9e75a6fdd46a7fb4da164c81fbdd5f748b
2025-12-07 19:07:10 +00:00
76b4b8c38e Add my custom boot animation
Signed-off-by: MOVZX <movzx@yahoo.com>
2025-12-05 18:19:58 +07:00
Michael Bestas
2128bc72f1 release: Bump Security String to 2025-12-01
Implemented:
============
CVE:            References:    Type:  Severity:  Updated AOSP versions:
CVE-2025-32319  A-291281543    EoP    High       16
CVE-2025-48572  A-385736540    EoP    High       13, 14, 15, 16
CVE-2025-48573  A-339637822    EoP    High       13, 14, 15, 16
CVE-2025-48575  A-417463103    EoP    High       13, 14, 15, 16
CVE-2025-48576  A-426205822    DoS    High       13, 14, 15, 16
CVE-2025-48580  A-393582077    EoP    High       13, 14, 15, 16
CVE-2025-48583  A-381885240    EoP    High       14, 15, 16
CVE-2025-48584  A-425662627    DoS    High       16
CVE-2025-48586  A-337784859    EoP    High       15, 16
CVE-2025-48589  A-362492829    EoP    High       13, 14, 15, 16
CVE-2025-48590  A-417987184    DoS    High       13, 14, 15, 16
CVE-2025-48592  A-427113482    ID     High       15, 16
CVE-2025-48594  A-427206637    EoP    High       14, 15, 16
CVE-2025-48596  A-438098181    EoP    High       13, 14, 15, 16
CVE-2025-48597  A-436270922    EoP    High       14, 15, 16
CVE-2025-48598  A-418774489    EoP    High       16
CVE-2025-48600  A-435188844    ID     High       15, 16
CVE-2025-48601  A-426207912    EoP    High       13, 14, 15, 16
CVE-2025-48603  A-416259832    DoS    High       13, 14, 15, 16
CVE-2025-48604  A-305710989    ID     High       13, 14, 15, 16
CVE-2025-48607  A-416490321    DoS    High       15, 16
CVE-2025-48612  A-429417453    EoP    High       13, 14, 15, 16
CVE-2025-48614  A-430568718    DoS    High       13, 14, 15, 16
CVE-2025-48615  A-433250316    EoP    High       13, 14, 15, 16
CVE-2025-48617  A-441823943    EoP    High       13, 14, 15, 16
CVE-2025-48618  A-404254549    EoP    High       13, 14, 15, 16
CVE-2025-48620  A-352024705    EoP    High       13, 14, 15, 16
CVE-2025-48621  A-266433089    EoP    High       13, 14, 15, 16
CVE-2025-48622  A-412662901    ID     High       13, 14, 15, 16
CVE-2025-48626  A-381339822    EoP    High       13, 14, 15, 16
CVE-2025-48628  A-376462130    ID     High       13, 14, 15, 16
CVE-2025-48629  A-352518318    EoP    High       13, 14, 15, 16
CVE-2025-48631  A-444671303    DoS    Critical   13, 14, 15, 16
CVE-2025-48632  A-443742829    EoP    High       14, 15, 16
CVE-2025-48633  A-417988098    ID     High       13, 14, 15, 16
CVE-2025-48639  A-301952571    EoP    High       13, 14, 15, 16

Previously Implemented:
================
CVE:            References:    Type:  Severity:  Updated AOSP versions:
CVE-2023-40130  A-289809991    EoP    High       13, 14, 15, 16
CVE-2025-22420  A-337775777    EoP    High       13, 14, 15, 16
CVE-2025-22432  A-376461726    EoP    High       13, 14, 15, 16
CVE-2025-48525  A-391895151    EoP    High       13, 14, 15, 16
CVE-2025-48536  A-388034510    EoP    High       13, 14, 15, 16
CVE-2025-48555  A-396666065    ID     High       13, 14, 15, 16
CVE-2025-48564  A-403565650    EoP    High       13, 14, 15, 16
CVE-2025-48565  A-407763772    EoP    High       13, 14, 15, 16
CVE-2025-48566  A-397216638    EoP    High       13, 14, 15, 16

Not Implemented:
================
None

Not Applicable (platform source):
=================================
CVE:            References:    Type:  Severity:  Updated AOSP versions:
CVE-2025-32328  A-327137311    EoP    High       13, 14, 15
CVE-2025-32329  A-326926596    EoP    High       13, 14, 15
CVE-2025-48588  A-303408193    EoP    High       13, 14, 15
CVE-2025-48591  A-305710469    ID     High       13, 14, 15
CVE-2025-48599  A-299633613    EoP    High       13, 14
CVE-2025-48627  A-326571066    EoP    High       13, 14

Change-Id: I6dac6f7431f5ac075be2e1be03d7ddc0c6b0908d
2025-12-04 20:14:51 +02:00
d3e7a8141d Add my signature
Signed-off-by: MOVZX <movzx@yahoo.com>
2025-12-04 18:20:03 +07:00
Thomas Makin
bec0fb162f kernel: Prevent creating any files in kernel platform source tree
Original command redirected output to the android build out. However, a
handful of configs were still generated in the source tree. Set the
bazel flag output_root to redirect these configs to the android build
out as well.

Change-Id: I5181270b773a49d74eab00b89eaaf1187471a144
2025-12-03 07:01:35 +00:00
TechPanelGM
81c768ce9a version: Uprev to 11.4.2 2025-12-02 21:52:27 +08:00
TechPanelGM
01e7c8761b release: Bump Security String to 2025-12-01 2025-12-02 21:52:27 +08:00
Joey
fb79d1435d component-overrides: Add more google components 2025-11-23 23:35:12 +09:00
Pranav Vashi
224cfc1f94 component-overrides: Force disable various google components
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:35:12 +09:00
minaripenguin
eb1b2d3d8e config: properties: Add pihooks default values
* A16 QPR2 Beta 3.3

Spoof BuildFingerprint as Pixel Beta

* It is necessary to pass integrity with the built-in Keybox Importer, as our stock fingerprint is not "Valid"

Co-authored-by: Joel Lucas <joelcba57@gmail.com>
Co-authored-by: Joey <joey@evolution-x.org>
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
2025-11-23 23:35:04 +09:00
Pranav Vashi
ac59c4d7fd overlay: Use google sans flex for lockscreen clock
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:35:04 +09:00
Joey
954727c25c Update default wallpaper from Pixel 10 Pro XL 2025-11-23 23:35:04 +09:00
aswin7469
8111829ca6 device_config: enable new now playing QS tile and updated lockscreen UI
preview: https://t.me/aswinaskurup/729

Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-11-23 23:35:04 +09:00
aswin7469
7683716477 device_config: cleanup and update from 16 QPR2
* set only whatever we need gms will handle rest

Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-11-23 23:35:04 +09:00
minaripenguin
7519fa43a5 config: Dexpreopt pixel launcher 2025-11-23 23:35:04 +09:00
Ghosuto
1c8abc55da release: Wifi multiuser flag
Change-Id: I72205b7762d6052ed0c22a6e44ceb68545a14831
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
2025-11-23 23:35:04 +09:00
Joey
6f5cfaebfa version: Uprev to 11.4.1
* After adding pixel-fw
2025-11-23 23:35:04 +09:00
rmp22
09b417ac18 config: add target_ims_override flag
Change-Id: Ib386515e21c6cabeb8c3bacd5b82f63e7796ef94
2025-11-23 23:35:04 +09:00
Dhina17
760136fd8a config: Build LMO systemui clock plugin
Change-Id: If4f6431bdbab5c9f4f75b8116d445a0f83c39ee9
2025-11-23 23:32:24 +09:00
Joey
c2e7ecc1f3 config: Don't build OmniJaws 2025-11-23 23:32:24 +09:00
Joey
51654e0509 version: Uprev to 11.4
* November 2025 patches
2025-11-23 23:32:24 +09:00
rmp22
8f9782a25a config: disabling hwc composition strategy on perf anim targets
perfetto shows a lot of wasted time done on hwc composition strategy on mtk targets

Change-Id: I88c810c954ae689f5ecd5c8f03e5130c356ae631
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-11-23 23:32:24 +09:00
rmp22
b4c1bc89f7 config/common: preopt extracted apk always 2025-11-23 23:32:24 +09:00
Mathieu Chartier
7ed9b8eea8 config/common: Reduce system server verbosity
Enable it only with user builds

Test: lunch statix_cannon-user && m
Change-Id: I58d2e993ae9a7213e94661d22b47c28b0a2243e8
Signed-off-by: Vaisakh Murali <mvaisakh@statixos.com>
Reviewed-on: https://review.statixos.com/c/android_vendor_statix/+/13531
2025-11-23 23:32:24 +09:00
Mathieu Chartier
5d12187ecf config/common: Disable dexpreopt debug info on user builds
Test: lunch statix_cannon-user && m
Change-Id: I9e4b4c9907b92fea764cf07e218541bb33937b3c
Signed-off-by: Vaisakh Murali <mvaisakh@statixos.com>
Reviewed-on: https://review.statixos.com/c/android_vendor_statix/+/13530
2025-11-23 23:32:24 +09:00
minaripenguin
e4be5b1b1b config: Load boot image profile from frameworks/base
[YAAP:] art boot image profile is only intended for thin art builds
without frameworks/base.

Change-Id: I60f3117c6ba948311af9f3fe048d0cf304fc283a
2025-11-23 23:32:24 +09:00
Pranav Vashi
1f048d0691 vendor: Do not clone default AudioFX app
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:24 +09:00
rmp22
226c4948e3 config: adding flashlight strength flag
Change-Id: I69f051676d6e3048307c48aead46a1b04d7b872d
2025-11-23 23:32:24 +09:00
Ghosuto
149e5093aa release: Enable move_transition_animation_layer
- Enables moving the launching window on top of the origin window in the Animation library

Change-Id: I9b383064253cd44026932182161bfc96b36daeaf
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
2025-11-23 23:32:24 +09:00
minaripenguin
9036906863 aconfig: Disable FRP enforcement
Change-Id: I77f990d2187b4afa3d106a79361a8dc340d09065
2025-11-23 23:32:24 +09:00
rmp22
30fdccb2f7 overlay: disable dreams feature
Change-Id: Iac6460e742aa11e175008db4b891d1b4768d5aec
2025-11-23 23:32:24 +09:00
Pranav Vashi
d2ba0fde94 Revert "overlay: Default to Seedvault backup transport"
* If we never set up SeedVault, we get error notification every boot.

This reverts commit a88d06f120.
2025-11-23 23:32:24 +09:00
Pranav Vashi
d684193d3d overlay: Drop now playing customization
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
rmp22
5d8df83a16 vendor: overlay: enable ambient burn in protection
Change-Id: I479491bae09e089aba646ade34d7bff5d460e12f
2025-11-23 23:32:23 +09:00
Oliver Scott
3d0836ba2b Disable nfc by default
Issue: calyxos#3038
Change-Id: Ifd8a9e4826b0c48c58d923086cf0aaea3e945722
2025-11-23 23:32:23 +09:00
minaripenguin
337b528636 overlay: frameworks: Suppress ASI system crash dialogs
* this issue started from u beta and some users on t also reported ASI crash upon reboot or so.  this is probably google side since the crash happens when ASI tries to update its text classifier flags but ended up triggering bad base-64 due to a bad/malformed string.

Change-Id: Id33679c48585ced550ba005ef99f19694bb27bf4
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
2025-11-23 23:32:23 +09:00
Henrique Silva
c99be54e9f overlay: Don't warn user about FC in Google TTS
This happens on almost all FDE devices, I don't see any workaround other than hiding these dialogs
2025-11-23 23:32:23 +09:00
Danny Lin
fee01c616e overlay: core: Suppress System UI ANRs
It looks like Android 12 qpr1 still has the bug where "System UI not
responding" dialogs appear sporadically after taking a screenshot. Just
suppress the ANRs for now.
2025-11-23 23:32:23 +09:00
Danny Lin
3d75a613d2 HACK: overlay: core: Suppress Intent Filter Verification Service crashes
Intent Filter Verification Service, the AOSP service that verifies
app link domains, is crashing for some users depending on their
installed apps. Temporarily suppress the crashes until we have a better
solution.
2025-11-23 23:32:23 +09:00
Joey Huab
3837bde522 config: Set new audio from mustang BD3A.250721.001.B7 as default 2025-11-23 23:32:23 +09:00
rmp22
156f6b18f8 config: add PERF_ANIM_OVERRIDE flag
Change-Id: I7d264207abef968739b57c9fce19e8f65466ee8c
2025-11-23 23:32:23 +09:00
Adithya R
fa1f2887c6 overlay: SystemUI: Tune new biometric dialog UI
Change-Id: Idcc5995f657b61647facd8d147a346e4898d677a
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Saikrishna1504
505d3c295b build: Skip ABI Checks
Signed-off-by: Saikrishna1504 <saikrishna26918@gmail.com>
2025-11-23 23:32:23 +09:00
rmp22
0d78b1e917 overlay: Enable split shade for notifications in landscape
default landscape is so ugly

Change-Id: Ida1fdc8199070ede063c394942cabdff1d7f4fb8
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
e6223ea349 release: Disable apply_picture_profiles
We do not have a media quality service set up yet.

Change-Id: If32e802eddac7464d98685f15aa86eb8f8228b6a
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
6e3382bd5c release: Generate themed/monochrome icons for all apps
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
f56e580047 release: Remove glanceable hub
Broken atm.

Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
b6349d5564 release: Remove some useless notification flags
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Pranav Vashi
859b6b75e0 release: Remove flag for using emphasized font family for shade header
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Pranav Vashi
2709818ccd release: Remove glitchy depth push scaling effect
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
d7ade17ca2 release: Disable lpp squeeze effect
Causes crash on power button hold when using assistant.

Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
2025-11-23 23:32:23 +09:00
Sourajit Karmakar
eca7e4b626 overlay: Make Google Sans the default headline font
Change-Id: I60fd95e4fa73335a01f187f74b7ded6bb16067ce
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-23 23:32:23 +09:00
Abhay Singh Gill
cd9a9775e9 release: Disable codec_availability flags
Signed-off-by: Abhay Singh Gill <abhaygill017@gmail.com>
2025-11-12 23:50:54 +09:00
Joey Huab
2a8268aa75 vendor: Drop notification themed icons
* Users cannot distinguish each app from one another, apparently.
2025-11-12 23:50:54 +09:00
Dmitrii
8a846ecdb2 vendor: drop more launcher flags
expressive dimiss is bugged, and launcher icon shapes is unused
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
c4ed6c7a11 vendor: drop more flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Pranav Vashi
936a907306 build: Ship adb_root only WITH_SU
* TBH - hardly any user uses adb root.
* adb root poses root detection risks.
* Most devices are user or userbuild type.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
ahnet-69
2f91c76b79 vendor: Disable thumbnail_block_model flag
Change-Id: Iebd8a44c2591031c02096402bcec8a513c1da1ac
Signed-off-by: Frost <frost.github@proton.me>
2025-11-12 23:50:54 +09:00
Vaisakh Murali
137b17b608 release: Enable android.app flags
Change-Id: I9f3e4416ead6f65d138002775a29ad7b5498a651
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
ffdde2ec12 release: more flag changes
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
77c639ea69 release: enable more flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
5ab102ae80 release: drop low_light_clock_dream
06-24 16:53:23.418  2021  2021 E AndroidRuntime: java.lang.RuntimeException: Unable to create service com.google.android.systemui.lowlightclock.LowLightClockDreamService: java.lang.RuntimeException: Couldn't call constructor
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.handleCreateService(ActivityThread.java:5317)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.-$$Nest$mhandleCreateService(Unknown Source:0)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2606)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:110)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:248)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:338)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:9102)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:598)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: Caused by: java.lang.RuntimeException: Couldn't call constructor
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at com.android.systemui.SystemUIAppComponentFactoryBase.instantiateService(go/retraceme 4d9244815cb2a8db26361f6e20f13b475cc86e8d80733cfefb09c7ddee4d5759:66)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	at android.app.ActivityThread.handleCreateService(ActivityThread.java:5274)
06-24 16:53:23.418  2021  2021 E AndroidRuntime: 	... 9 more
06-24 16:53:23.418  2021  2021 E AndroidRuntime: Caused by: java.lang.NoSuchMethodException: com.google.android.systemui.lowlightclock.LowLightClockDreamService.<init> []

Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
0f47463020 release: drop some flags
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
Dmitrii
761b3a1d0b release: drop new sb icons
buggy and dont work well with customizations atm
Signed-off-by: Dmitrii <bankersenator@gmail.com>
2025-11-12 23:50:54 +09:00
ralph950412
970e210182 release: Enable WallpaperPicker2 flags
Change-Id: I7f389e8bdb6e9998681cf7abb561d5aaf6b8d909
2025-11-12 23:50:54 +09:00
ralph950412
fe386ac300 release: Enable SystemUI flags (com.android.systemui.shared)
Change-Id: I7a4b4fa22e3f3c6f5b2eceea9e3fde573a937e9c
2025-11-12 23:50:54 +09:00
ralph950412
3af13fdedd release: Enable SystemUI flags
Change-Id: Id7b6b7ec61363c9a90a4354ec78215c7ce697652
2025-11-12 23:50:54 +09:00
ralph950412
819b342ae1 release: Enable SettingsLib flags
Change-Id: Ide729f28d84e05063b961c504e52dc2249febe98
2025-11-12 23:50:54 +09:00
ralph950412
f10598cc6b release: Enable Settings flags
Change-Id: I4aacdc60d799a139941783dc69fd03cb591ec84a
2025-11-12 23:50:54 +09:00
ralph950412
3cb3539504 release: Enable Launcher3 flags
Change-Id: I06cb64470805c579619fe2512ae79d60a746d65c
2025-11-12 23:50:54 +09:00
techyminati
190b0db80c config: Enable Material Design 3 Expressive
Change-Id: Ib6d3ac2e0f3d76768c508e1b00efc51e141c1b09
Signed-off-by: techyminati <sinha.aryan03@gmail.com>
2025-11-12 23:50:54 +09:00
rmp22
f63d3ed3c5 config: Add bypass charging prop
Change-Id: Iee2e99e9ec929221336fea361ab516b00f47bb7e
2025-11-12 23:50:54 +09:00
rmp22
8d659b540a overlay: add applock whitelist
Change-Id: I491f05eb300285adf453d35954c35080ec1207cf
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-11-12 23:50:54 +09:00
rmp22
d607bf656a common: Disable art debug builds
Change-Id: I44e16c12c70e30dea8e85a9751cc94e4ff329898
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-11-12 23:50:54 +09:00
rmp22
6aaad33937 config: add blur support
Change-Id: I5fabdbbdfe812346f17dbba5d4bf9abe7344e0ca
2025-11-12 23:50:54 +09:00
Dyneteve
8c010e59f8 overlay: Allow ShannonIMS to access ServiceState
Change-Id: Ic43f212f81e6a53daf6879a7110effafbc000ec4
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-11-12 23:50:54 +09:00
rmp22
07fdacd660 overlay: Update circle to search overlays for vanilla builds
Change-Id: Id72c2e81494f793d773cfc5de24cb15eeaaaf5e9
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
Ido Ben-Hur
328506e398 overlay: Enable circle to search 2025-11-12 23:50:54 +09:00
rmp22
1f2fbb09e3 Enable ThinLTO cache
Change-Id: I8438591a418fc4f9ce3ceead84cda9b6870758ff
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-11-12 23:50:54 +09:00
rmp22
9dec6f3798 build: Override host metadata
reference taken from
https://grapheneos.social/@GrapheneOS/113870255397154703

instead of fixed host number, use a random generated host number that follows google's host number format to bypass revolut's host checks

Change-Id: I72feafd663a551eb0c6c4146d52137ed0dc7456d
Co-authored-by: Terminator-J <terminator_j@hotbutteredmonkey.com>
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
Terminator-J
61ff48b0d2 kernel: Set "safe" default values for kernel build host & user
Take all the fun out of the game and set sanitized values by default.
2025-11-12 23:50:54 +09:00
Dyneteve
973f65e10a overlay: Enable keyboard vibration
Change-Id: Ibb162e8ce74ce566f326b8d21951a3eaec0113d8
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-11-12 23:50:54 +09:00
Dyneteve
30857c244e overlay: SystemUI: Add plugin whitelist
Change-Id: I38e6a5c5eb9ceaee13e0cd8ab1c3d858d72aa19c
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
2025-11-12 23:50:54 +09:00
John Galt
5e36dee4dc DeviceConfig: drop smartspace flashlight action chip (again)
Accidentally made it back recently
2025-11-12 23:50:54 +09:00
John Galt
63f3cd3d02 DeviceConfig: update nearby flags
Fixes gms find my device drain on some devices such as waffle, found
on new pixel configs
2025-11-12 23:50:54 +09:00
Pranav Vashi
56251e2e96 config: Conditionally build ColumbusService
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
rmp22
17cdd72eb7 Add option to ship viperfx
Change-Id: I35cea2206d098a53e03c54f462b59db991c891bb
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
2025-11-12 23:50:54 +09:00
Asriadi Rahim
0cdfe18b28 vendor: Make BCR optional 2025-11-12 23:50:54 +09:00
tejas101k
a35a0de6ac config: Build Updater for all
* Local update could still be helpful
2025-11-12 23:50:54 +09:00
Danny Lin
165131380b config: Disable RescueParty
RescueParty's aggressive approach to error recovery almost never helps
with the problems we're likely to face, and its risk of data loss is far
too high. Force-disable it entirely and remove all other conditions,
especially those that depend on data integrity in the first place, to
reduce the risk of RescueParty triggering falsely and causing data loss.

Note that it is still possible to force-enable RescueParty for testing
purposes using the persist.sys.enable_rescue property.
2025-11-12 23:50:54 +09:00
Adithya R
e9d8aa27f1 config: Build LMO Freeform app and sidebar
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: GXC 2356 <gxcdev2356@gmail.com>
2025-11-12 23:50:54 +09:00
Pranav Vashi
1fe97222f7 config: Build OmniJaws service
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
Pranav Vashi
79f18bbb4a config: Build OmniStyle
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:54 +09:00
someone5678
0f57665ea8 config: Build BtHelper 2025-11-12 23:50:53 +09:00
Pranav Vashi
230a9ce7ed config: Build GameSpace
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:53 +09:00
minaripenguin
80fc8c761f config: Build tensorflow lite jni
Signed-off-by: clarencelol <clarencekuiek@proton.me>
2025-11-12 23:50:53 +09:00
HeCheng Yu
37953432c7 config: Disable default frame rate limit for games
Android 15 limits refresh rate to 60hz for games unless we enable the developer option 'Disable default frame rate for games' manually.
Adding this prop enables it by default.
2025-11-12 23:50:53 +09:00
minaripenguin
50bddb3f36 vendor: Introduce bootanimation styles [2/3]
vendor: Add more bootanimation styles [2/3]

vendor: Add ctOS bootanimation [2/3]

by benmeroff - https://xdaforums.com/t/boot-animation-ctos-boot-animation.2843830/

vendor: Add Evolution X Reveal boot animation [2/3]

vendor: Add more classic boot animation styles [2/3]

* Remove anniv bootanimation as it takes a lot of space.

Co-authored-by: 0xsharkboy <achille@0xsharkboy.dev>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
Signed-off-by: 0xsharkboy <achille@0xsharkboy.dev>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:53 +09:00
Andrzej Perczak
f357314af4 common: Optimize Launcher3 and Settings for speed
Signed-off-by: Andrzej Perczak <linux@andrzejperczak.com>
2025-11-12 23:50:49 +09:00
someone5678
350059d2a4 config: props: Set default wifi country code
* To 00
* Make it overridable

Change-Id: I2025fc927363baf547b36ecd6ebe9c7fbc4d7611
2025-11-12 23:50:49 +09:00
Le Hong Duc
cbf9fce170 config: Don't dexpreopt prebuilt apps
Pre-optimizing prebuilt Gapps is not needed because they are mostly
updated via Play Store and device will optimize them on install.

Save some space on /product partition and reduce build time.

Signed-off-by: Le Hong Duc <hongducthbk123@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
addd0ec34b common: Inherit pixel-fw when available
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
minaripenguin
8d5a2850c6 config: Disable memtag for different processes
* it defaults to async if not specified

Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
ShevT
a1e8e055f3 config: Adding an option to build DeviceAsWebcam 2025-11-12 23:50:49 +09:00
Pranav Vashi
294b7e4fa9 overlay: Set AOSP webview as fallback
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
DarkJoker360
836728c491 Drop custom adb drawable
Signed-off-by: DarkJoker360 <simoespo159@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Jyotiraditya Panda
2a60eef69e overlay: Update default keyguard affordance setup
- Left affordance: flashlight
 - Right affordance: camera

Change-Id: I3295007e351d6e17b6efb13cacd9665475f4f34a
Signed-off-by: Jyotiraditya Panda <jyotiraditya@aospa.co>
2025-11-12 23:50:49 +09:00
Adithya R
e28558f962 overlay: Remove bouncer delay when face unlock is enabled
No idea why was this annoying thing made a "feature" in the first place.

Suggested-by: Omkar Chandorkar <gotenksIN@aospa.co>
Change-Id: Iefd47099c48586dd97644e90fadf93707617a74e
(cherry picked from commit ec3160865ccb36fb8c02a5f447f670b3176c0601)
Signed-off-by: clarencelol <clarencekuiek@proton.me>
2025-11-12 23:50:49 +09:00
someone5678
da22ca4955 overlay: device_config: Updates
From gms device config:
- textclassifier: set manifests + needed options
- window manager: set splash screen exemption list

Co-authored-by: John Galt <johngaltfirstrun@gmail.com>
Co-authored-by: Joey Huab <joey@evolution-x.org>
2025-11-12 23:50:49 +09:00
cyberknight777
f881236437 overlay: device_config: Add values required for Speech Recognition
Dumped from whatever gms sets as a configurator
2025-11-12 23:50:49 +09:00
Ido Ben-Hur
d6ee6038fa overlay: device_config: Escape special characters 2025-11-12 23:50:49 +09:00
aswin7469
e1c92ed2b4 overlay: device_config: animate navbar on long press
Signed-off-by: aswin7469 <aswinas@pixysos.com>
2025-11-12 23:50:49 +09:00
Ionut Gherman
da035911ac overlay: update configs for AiAi
* taken from LineageOS/android_device_google_zumapro@9d1b0cf
Signed-off-by: Ionut Gherman <ghermanionut96@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
fd7d1b2b47 overlay: Use google-sans for font config overlays
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
d1bc4b1e38 overlay: Add gms location history to extra location packages
* From pixel dump. Suggested by @nikhilmenghani.
* Nikgapps will remove this overlay as it conflicts here.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
59d1a18fcb overlay: Add tethering to location exemption
Ref: 404b4778ec

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
dea3555ceb overlay: Add SystemUI to location extra packages
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
b5f815f941 overlay: Add OmniJaws to location extra packages
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Danny Lin
dd5b13b527 overlay: Offload WM shell to another thread
Android 12 added this config to offload some window management to a
dedicated thread. Enable it to improve performance when the main System
UI thread is busy.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
26deeda842 overlay: Update SettingsProvider defaults
* Reduce default screen off timeout to 30 sec.
* Turn on automation brightness mode by default.
* Turn on vibrate when ringing by default.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Pranav Vashi
405909061c common: Allow OTA downgrade regardless build type
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-12 23:50:49 +09:00
Dhina17
65693adfc4 soong: Add libcameraservice extension config
Change-Id: Id20f782c1008fed1f15250129618326091f61bf8
2025-11-12 23:50:49 +09:00
Adithya R
9db2f1c74a soong: Add support for miui camera mode [2/2]
Change-Id: I0c912a1c7056bb204a24bd5f0a08308cae71f3f3
2025-11-12 23:50:49 +09:00
AnierinB
e5c777927f soong: Conditionally spoof ro.product.first_api_level to 32 [1/2]
Devices that shipped on API 33 or higher need to set
ro.product.first_api_level to 32 in order to pass integrity.

Set SPOOF_FIRST_API_LEVEL_32 := true in BoardConfig*.mk to enable.

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Jake Weinstein
e0a87580e4 soong: Add support to set vendor tag with client package name
* OEMs like OnePlus and Nothing detect camera package name to unlock features like 48mp.
* Use TARGET_CAMERA_PACKAGE_NAME to specify the package name.

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
ponces
5b8298e576 evolution: Switch to AOSPA's face unlock implementation
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Dyneteve
5856660524 overlay: Update device configs global overrides
Co-authored-by: Joey <joey@evolution-x.org>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Co-authored-by: aswin7469 <aswinas@pixysos.com>
Co-authored-by: someone5678 <someone5678@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Dyneteve
86fe5eb28e overlay: Allow new SystemUI clocks
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I51ab1eb06b1e77bd8048d5064f811e8e69884b24
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Danny Lin
d448eedf5b overlay: Settings: Show memory usage in app info
The system tracks memory usage for each app, so we might as well show it
to the user so that users can track down which apps are hogging their
memory. This shouldn't be a developer-only feature that was previously
only exposed in Developer Options.

Change-Id: Ib900438f856369286b7621208020c5c8da73765f
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
aswin7469
1362de157d evolution: Enable Cloned App
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: John Galt <johngaltfirstrun@gmail.com>
Co-authored-by: minaripenguin <minaripenguin@users.noreply.github.com>

Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Pranav Vashi
aec455072f overlay: Use google-sans for remaining font configs
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
AnierinB
539f263c54 evolution: Configure support for Evolution X Vanilla
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
Dyneteve
671bab67a1 evolution: Inherit Pixel additions via WITH_GMS
* GMS
* Audio
* Charger
* RRO overlays

Co-authored-by: Joey <joey@evolution-x.org>
Co-authored-by: AnierinB <anierin@evolution-x.org>
Co-authored-by: someone5678 <nemui3353@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:49 +09:00
AnierinB
5b200d6862 lineage: Initial Evolution X rebrand
Co-authored-by: Joey Huab <joey@evolution-x.org>
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: Lup Gabriel <gwolf2u.website@gmail.com>
Co-authored-by: Hemant Sachdeva <hemant.evolver@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-11-12 23:50:48 +09:00
Joey Huab
f251f3b7dc Revert "config: Use add_soong_config_namespace/add_soong_config_var macros"
This reverts commit c2dd68f84a.
2025-11-12 23:50:48 +09:00
Joey Huab
eccd59d458 Revert "Revert "Add product_launched_with_j{,_mr1,mr2}.mk""
This reverts commit e1e121bea4.
2025-11-12 23:50:48 +09:00
Joey Huab
a01876c0ed Revert "bootanimation: Convert to Android.bp"
This reverts commit 3b29ed3826.
2025-11-12 23:50:48 +09:00
Joey Huab
46164fb8a5 Revert "charger: Convert to Android.bp"
This reverts commit b3e6f3ad7e.
2025-11-12 23:50:43 +09:00
187 changed files with 2009 additions and 785 deletions

View File

@@ -1,26 +1,2 @@
LineageOS Evolution X
=========== ===========
Getting started
---------------
Please see the [LineageOS Wiki](https://wiki.lineageos.org/) for building instructions, by device.
Submitting patches
------------------
Patches are always welcome! Please submit your patches via LineageOS Gerrit!
Simply follow our guide on [how to submit patches](https://wiki.lineageos.org/submitting-patch-howto.html).
To view the status of your and others' patches, visit [LineageOS Gerrit Code Review](https://review.lineageos.org/).
Buildbot
--------
All supported devices are built weekly and periodically as changes are committed to ensure the source trees remain buildable.
You can view the current build statuses at [LineageOS Buildkite](https://buildkite.com/lineageos).
Builds produced weekly by the buildbot can be downloaded from [LineageOS downloads](https://download.lineageos.org/).

View File

@@ -1,61 +0,0 @@
//
// SPDX-FileCopyrightText: The LineageOS Project
// SPDX-License-Identifier: Apache-2.0
//
genrule {
name: "gen-bootanimation.zip",
tools: [
"mogrify",
"soong_zip",
],
tool_files: [
"bootanimation.tar",
"desc.txt",
"gen-bootanimation.sh",
],
out: ["bootanimation.zip"],
cmd: select((soong_config_variable("lineage_bootanimation", "height"),
soong_config_variable("lineage_bootanimation", "width"),
soong_config_variable("lineage_bootanimation", "half_res"),
soong_config_variable("lineage_bootanimation", "prebuilt_file")), {
(any @ height, any @ width, any @ half_res, any @ prebuilt_file):
"cp ../../../../../" + prebuilt_file + " $(out)",
(any @ height, any @ width, any @ half_res, default):
"$(location gen-bootanimation.sh)" +
" $(out)" +
" $(genDir)" +
" $(location bootanimation.tar)" +
" $(location desc.txt)" +
" $(location mogrify)" +
" $(location soong_zip)" +
" " + height +
" " + width +
" " + half_res,
(default, default, default, default):
"$(location gen-bootanimation.sh)" +
" $(out)" +
" $(genDir)" +
" $(location bootanimation.tar)" +
" $(location desc.txt)" +
" $(location mogrify)" +
" $(location soong_zip)" +
" 600" +
" 600" +
" false",
}),
}
prebuilt_media {
name: "bootanimation.zip",
src: ":gen-bootanimation.zip",
product_specific: true,
}
install_symlink {
name: "bootanimation-dark.zip",
product_specific: true,
installed_location: "media/bootanimation-dark.zip",
symlink_target: "bootanimation.zip",
}

72
bootanimation/Android.mk Normal file
View File

@@ -0,0 +1,72 @@
#
# Copyright (C) 2016 The CyanogenMod Project
# 2017-2024 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
TARGET_GENERATED_BOOTANIMATION := $(TARGET_OUT_INTERMEDIATES)/BOOTANIMATION/bootanimation.zip
$(TARGET_GENERATED_BOOTANIMATION): INTERMEDIATES := $(call intermediates-dir-for,BOOTANIMATION,bootanimation)
$(TARGET_GENERATED_BOOTANIMATION): $(SOONG_ZIP)
@echo "Building bootanimation.zip"
@rm -rf $(dir $@)
@mkdir -p $(INTERMEDIATES)
$(hide) tar xfp vendor/lineage/bootanimation/bootanimation.tar -C $(INTERMEDIATES)
$(hide) if [ $(TARGET_SCREEN_HEIGHT) -lt $(TARGET_SCREEN_WIDTH) ]; then \
IMAGEWIDTH=$(TARGET_SCREEN_HEIGHT); \
else \
IMAGEWIDTH=$(TARGET_SCREEN_WIDTH); \
fi; \
IMAGESCALEWIDTH=$$IMAGEWIDTH; \
IMAGESCALEHEIGHT=$$(expr $$IMAGESCALEWIDTH / 3); \
if [ "$(TARGET_BOOTANIMATION_HALF_RES)" = "true" ]; then \
IMAGEWIDTH="$$(expr "$$IMAGEWIDTH" / 2)"; \
fi; \
IMAGEHEIGHT=$$(expr $$IMAGEWIDTH / 3); \
RESOLUTION="$$IMAGEWIDTH"x"$$IMAGEHEIGHT"; \
prebuilts/tools-lineage/${HOST_OS}-x86/bin/mogrify -resize $$RESOLUTION -colors 256 $(INTERMEDIATES)/*/*.png; \
echo "$$IMAGESCALEWIDTH $$IMAGESCALEHEIGHT 60" > $(INTERMEDIATES)/desc.txt; \
cat vendor/lineage/bootanimation/desc.txt >> $(INTERMEDIATES)/desc.txt
$(hide) $(SOONG_ZIP) -L 0 -o $@ -C $(INTERMEDIATES) -D $(INTERMEDIATES)
# Custom Boot Animation
CUSTOM_BOOTANIMATION := BootAnimations/bootanimation.zip
ifeq ($(TARGET_BOOTANIMATION),)
ifneq ($(wildcard $(CUSTOM_BOOTANIMATION)),)
TARGET_BOOTANIMATION := $(CUSTOM_BOOTANIMATION)
$(warning [BootAnimation] Custom global animation found at $(CUSTOM_BOOTANIMATION))
else
TARGET_BOOTANIMATION := $(TARGET_GENERATED_BOOTANIMATION)
$(warning [BootAnimation] Custom file not found. Falling back to default generation.)
endif
endif
include $(CLEAR_VARS)
LOCAL_MODULE := bootanimation.zip
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT)/media
include $(BUILD_SYSTEM)/base_rules.mk
$(LOCAL_BUILT_MODULE): $(TARGET_BOOTANIMATION)
@cp $(TARGET_BOOTANIMATION) $@
include $(CLEAR_VARS)
BOOTANIMATION_SYMLINK := $(TARGET_OUT_PRODUCT)/media/bootanimation-dark.zip
$(BOOTANIMATION_SYMLINK): $(LOCAL_INSTALLED_MODULE)
@mkdir -p $(dir $@)
$(hide) ln -sf bootanimation.zip $@
ALL_DEFAULT_INSTALLED_MODULES += $(BOOTANIMATION_SYMLINK)

Binary file not shown.

View File

@@ -1,56 +0,0 @@
#!/bin/bash -e
#
# Copyright (C) 2016 The CyanogenMod Project
# 2017-2024 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
PARAM_OUT=$1
PARAM_GENDIR=$2
PARAM_BOOTANIMATION_TAR=$3
PARAM_DESC_TXT=$4
PARAM_MOGRIFY=$5
PARAM_SOONG_ZIP=$6
PARAM_TARGET_SCREEN_HEIGHT=$7
PARAM_TARGET_SCREEN_WIDTH=$8
PARAM_TARGET_BOOTANIMATION_HALF_RES=$9
INTERMEDIATES=$PARAM_GENDIR/intermediates
mkdir -p $INTERMEDIATES
tar xfp $PARAM_BOOTANIMATION_TAR -C $INTERMEDIATES
if [ $PARAM_TARGET_SCREEN_HEIGHT -lt $PARAM_TARGET_SCREEN_WIDTH ]; then
IMAGEWIDTH=$PARAM_TARGET_SCREEN_HEIGHT
else
IMAGEWIDTH=$PARAM_TARGET_SCREEN_WIDTH
fi
IMAGESCALEWIDTH=$IMAGEWIDTH
IMAGESCALEHEIGHT=$(expr $IMAGESCALEWIDTH / 3);
if [ "$PARAM_TARGET_BOOTANIMATION_HALF_RES" = "true" ]; then
IMAGEWIDTH="$(expr "$IMAGEWIDTH" / 2)"
fi
IMAGEHEIGHT=$(expr $IMAGEWIDTH / 3);
RESOLUTION="$IMAGEWIDTH"x"$IMAGEHEIGHT";
$PARAM_MOGRIFY -resize $RESOLUTION -colors 256 $INTERMEDIATES/*/*.png;
echo "$IMAGESCALEWIDTH $IMAGESCALEHEIGHT 60" > $INTERMEDIATES/desc.txt;
cat $PARAM_DESC_TXT >> $INTERMEDIATES/desc.txt
$PARAM_SOONG_ZIP -L 0 -o $PARAM_OUT -C $INTERMEDIATES -D $INTERMEDIATES

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,32 @@
#
# Copyright (C) 2023 The risingOS Android Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
PRODUCT_SOONG_NAMESPACES += \
vendor/lineage/prebuilts
PRODUCT_COPY_FILES += \
vendor/lineage/bootanimation/prebuilts/bootanimation_aokp.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_aokp.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_cm.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_cm.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_ctos.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_ctos.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_cyberpunk.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_cyberpunk.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_du.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_du.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_evo_reveal.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_evo_reveal.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_google.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_google.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_google_monet.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_google_monet.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_pac.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_pac.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_rr.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_rr.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_slim.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_slim.zip \
vendor/lineage/bootanimation/prebuilts/bootanimation_valorant.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation_valorant.zip

View File

@@ -32,7 +32,7 @@ function brunch()
{ {
breakfast $* breakfast $*
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
mka bacon mka evolution
else else
echo "No such item in brunch menu. Try 'breakfast'" echo "No such item in brunch menu. Try 'breakfast'"
return 1 return 1
@@ -707,7 +707,7 @@ function cmka() {
if [ ! -z "$1" ]; then if [ ! -z "$1" ]; then
for i in "$@"; do for i in "$@"; do
case $i in case $i in
bacon|otapackage|systemimage) evolution|otapackage|systemimage)
mka installclean mka installclean
mka $i mka $i
;; ;;
@@ -1012,3 +1012,17 @@ function build_kernel() {
chmod -x "${target_kernel_dir}/"* chmod -x "${target_kernel_dir}/"*
echo "Kernel build output copied to ${target_kernel_dir}/" echo "Kernel build output copied to ${target_kernel_dir}/"
} }
function generate_host_overrides() {
export BUILD_USERNAME=android-build
HEX=$(openssl rand -hex 8)
ALPHA=$(cat /dev/urandom | tr -dc 'a-z0-9' | fold -w 4 | head -n 1)
export BUILD_HOSTNAME="r-${HEX}-${ALPHA}"
echo "BUILD_USERNAME=$BUILD_USERNAME"
echo "BUILD_HOSTNAME=$BUILD_HOSTNAME"
}
generate_host_overrides
export USE_THINLTO_CACHE=true
export SKIP_ABI_CHECKS=true

View File

@@ -23,7 +23,7 @@ lineage_generator {
// The headers make command // The headers make command
cmd: "if [ -n \"$(TARGET_KERNEL_PLATFORM_TARGET)\" ]; then " + cmd: "if [ -n \"$(TARGET_KERNEL_PLATFORM_TARGET)\" ]; then " +
" pushd $(KERNEL_PATH); " + " pushd $(KERNEL_PATH); " +
" ./tools/bazel --output_user_root=$(KERNEL_BUILD_OUT_PREFIX)$(genDir)/bazel-out run --experimental_convenience_symlinks=ignore --cpu=$(KERNEL_ARCH) //$(TARGET_KERNEL_SOURCE):$(TARGET_KERNEL_PLATFORM_TARGET)_uapi_headers_dist -- --destdir=$(KERNEL_BUILD_OUT_PREFIX)$(genDir); " + " ./tools/bazel --output_user_root=$(KERNEL_BUILD_OUT_PREFIX)$(genDir)/bazel-out --output_root=$(KERNEL_BUILD_OUT_PREFIX)$(genDir)/bazel-out run --experimental_convenience_symlinks=ignore --cpu=$(KERNEL_ARCH) //$(TARGET_KERNEL_SOURCE):$(TARGET_KERNEL_PLATFORM_TARGET)_uapi_headers_dist -- --destdir=$(KERNEL_BUILD_OUT_PREFIX)$(genDir); " +
" popd; " + " popd; " +
" gzip -d $(KERNEL_BUILD_OUT_PREFIX)$(genDir)/kernel-uapi-headers.tar.gz; " + " gzip -d $(KERNEL_BUILD_OUT_PREFIX)$(genDir)/kernel-uapi-headers.tar.gz; " +
" tar -xf $(KERNEL_BUILD_OUT_PREFIX)$(genDir)/kernel-uapi-headers.tar -C $(KERNEL_BUILD_OUT_PREFIX)$(genDir); " + " tar -xf $(KERNEL_BUILD_OUT_PREFIX)$(genDir)/kernel-uapi-headers.tar -C $(KERNEL_BUILD_OUT_PREFIX)$(genDir); " +
@@ -108,3 +108,20 @@ cc_library_headers {
name: "prebuilt_kernel_headers", name: "prebuilt_kernel_headers",
defaults: ["prebuilt_kernel_header_defaults"], defaults: ["prebuilt_kernel_header_defaults"],
} }
soong_config_module_type {
name: "spoof_first_api_level_32",
module_type: "cc_defaults",
config_namespace: "lineageGlobalVars",
bool_variables: ["spoof_first_api_level_32"],
properties: ["cppflags"]
}
spoof_first_api_level_32 {
name: "spoof_first_api_level_32_defaults",
soong_config_variables: {
spoof_first_api_level_32: {
cppflags: ["-DSPOOF_FIRST_API_LEVEL_32"],
},
},
}

View File

@@ -0,0 +1,2 @@
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
PRODUCT_SHIPPING_API_LEVEL := 16

View File

@@ -0,0 +1,2 @@
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
PRODUCT_SHIPPING_API_LEVEL := 17

View File

@@ -0,0 +1,2 @@
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
PRODUCT_SHIPPING_API_LEVEL := 18

15
build/tasks/ascii_output.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/bin/bash
BLUE="\e[34m"
GREEN="\e[32m"
ENDCOLOR="\e[0m"
echo -e "${GREEN}===========================================================${ENDCOLOR}"
echo -e "${BLUE} ______ __ __ _ _ __ ${ENDCOLOR}"
echo -e "${BLUE} / ____/ ______ / /_ __/ /_(_)___ ____ | |/ / ${ENDCOLOR}"
echo -e "${BLUE} / __/ | | / / __ \/ / / / / __/ / __ \/ __ \ | / ${ENDCOLOR}"
echo -e "${BLUE} / /___ | |/ / /_/ / / /_/ / /_/ / /_/ / / / / / | ${ENDCOLOR}"
echo -e "${BLUE} /_____/ |___/\____/_/\__,_/\__/_/\____/_/ /_/ /_/|_| ${ENDCOLOR}"
echo -e "${BLUE} ${ENDCOLOR}"
echo -e "${BLUE}#KeepEvolving ${ENDCOLOR}"
echo -e "${GREEN}===========================================================${ENDCOLOR}"

View File

@@ -14,16 +14,19 @@
# limitations under the License. # limitations under the License.
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# Lineage OTA update package # Evolution X OTA update package
LINEAGE_TARGET_PACKAGE := $(PRODUCT_OUT)/lineage-$(LINEAGE_VERSION).zip LINEAGE_TARGET_PACKAGE := $(PRODUCT_OUT)/$(LINEAGE_VERSION).zip
SHA256 := prebuilts/build-tools/path/$(HOST_PREBUILT_TAG)/sha256sum SHA256 := prebuilts/build-tools/path/$(HOST_PREBUILT_TAG)/sha256sum
$(LINEAGE_TARGET_PACKAGE): $(INTERNAL_OTA_PACKAGE_TARGET) $(LINEAGE_TARGET_PACKAGE): $(INTERNAL_OTA_PACKAGE_TARGET)
$(hide) ln -f $(INTERNAL_OTA_PACKAGE_TARGET) $(LINEAGE_TARGET_PACKAGE) $(hide) mv -f $(INTERNAL_OTA_PACKAGE_TARGET) $(LINEAGE_TARGET_PACKAGE)
$(hide) $(SHA256) $(LINEAGE_TARGET_PACKAGE) | sed "s|$(PRODUCT_OUT)/||" > $(LINEAGE_TARGET_PACKAGE).sha256sum $(hide) $(SHA256) $(LINEAGE_TARGET_PACKAGE) | sed "s|$(PRODUCT_OUT)/||" > $(LINEAGE_TARGET_PACKAGE).sha256sum
$(hide) ./vendor/lineage/build/tools/createjson.py $(TARGET_DEVICE) $(PRODUCT_OUT) $(LINEAGE_VERSION).zip $(TARGET_BUILD_VARIANT) $(WITH_GMS)
$(hide) rm -rf $(call intermediates-dir-for,PACKAGING,target_files)
$(hide) ./vendor/lineage/build/tasks/ascii_output.sh
@echo "Package Complete: $(LINEAGE_TARGET_PACKAGE)" >&2 @echo "Package Complete: $(LINEAGE_TARGET_PACKAGE)" >&2
.PHONY: bacon .PHONY: evolution
bacon: $(LINEAGE_TARGET_PACKAGE) $(DEFAULT_GOAL) evolution: $(LINEAGE_TARGET_PACKAGE) $(DEFAULT_GOAL)

View File

@@ -268,6 +268,11 @@ ifneq ($(TARGET_KERNEL_ADDITIONAL_FLAGS),)
KERNEL_MAKE_FLAGS += $(TARGET_KERNEL_ADDITIONAL_FLAGS) KERNEL_MAKE_FLAGS += $(TARGET_KERNEL_ADDITIONAL_FLAGS)
endif endif
# Custom Build User/Host
KERNEL_MAKE_FLAGS += KBUILD_BUILD_USER=MOVZX
KERNEL_MAKE_FLAGS += KBUILD_BUILD_HOST=Telegram.org
KERNEL_MAKE_FLAGS += KBUILD_BUILD_VERSION=666
# Internal implementation of make-kernel-target # Internal implementation of make-kernel-target
# $(1): output path (The value passed to O=) # $(1): output path (The value passed to O=)
# $(2): target to build (eg. defconfig, modules, dtbo.img) # $(2): target to build (eg. defconfig, modules, dtbo.img)
@@ -716,9 +721,8 @@ KERNEL_PATH := $(abspath $(BUILD_TOP)/../kernel-$(TARGET_KERNEL_VERSION))
$(TARGET_PREBUILT_INT_KERNEL): $(DEPMOD) $(KERNEL_MODULES_PARTITION_FILE_LIST) $(SYSTEM_KERNEL_MODULES_PARTITION_FILE_LIST) $(TARGET_PREBUILT_INT_KERNEL): $(DEPMOD) $(KERNEL_MODULES_PARTITION_FILE_LIST) $(SYSTEM_KERNEL_MODULES_PARTITION_FILE_LIST)
@echo "Building $(BOARD_KERNEL_IMAGE_NAME)" @echo "Building $(BOARD_KERNEL_IMAGE_NAME)"
@mkdir -p $(KERNEL_OUT) @mkdir -p $(KERNEL_OUT)
@rm -rf $(KERNEL_PATH)/out
$(hide) cd $(KERNEL_PATH) && python3 .repo/repo/repo manifest -o - -r > $(abspath $(KERNEL_OUT))/manifest.xml $(hide) cd $(KERNEL_PATH) && python3 .repo/repo/repo manifest -o - -r > $(abspath $(KERNEL_OUT))/manifest.xml
$(hide) cd $(KERNEL_PATH) && ./tools/bazel --output_user_root=$(abspath $(KERNEL_OUT)/bazel-out) run --experimental_convenience_symlinks=ignore --cpu=$(KERNEL_ARCH) --repo_manifest $(abspath $(KERNEL_PATH)):$(abspath $(KERNEL_OUT)/manifest.xml) --config=stamp //$(KERNEL_SRC):$(TARGET_KERNEL_PLATFORM_TARGET)_dist -- --destdir=$(abspath $(KERNEL_OUT)) $(hide) cd $(KERNEL_PATH) && ./tools/bazel --output_user_root=$(abspath $(KERNEL_OUT)/bazel-out) --output_root=$(abspath $(KERNEL_OUT)/bazel-out) run --experimental_convenience_symlinks=ignore --cpu=$(KERNEL_ARCH) --repo_manifest $(abspath $(KERNEL_PATH)):$(abspath $(KERNEL_OUT)/manifest.xml) --config=stamp //$(KERNEL_SRC):$(TARGET_KERNEL_PLATFORM_TARGET)_dist -- --destdir=$(abspath $(KERNEL_OUT))
$(if $(BOOT_KERNEL_MODULES),\ $(if $(BOOT_KERNEL_MODULES),\
$(call build-image-kernel-modules-lineage,$(addprefix $(KERNEL_OUT)/,$(BOOT_KERNEL_MODULES)),$(KERNEL_VENDOR_RAMDISK_MODULES_OUT),,$(KERNEL_VENDOR_RAMDISK_DEPMOD_STAGING_DIR),$(KERNEL_VENDOR_RAMDISK_KERNEL_MODULES_LOAD),,,)\ $(call build-image-kernel-modules-lineage,$(addprefix $(KERNEL_OUT)/,$(BOOT_KERNEL_MODULES)),$(KERNEL_VENDOR_RAMDISK_MODULES_OUT),,$(KERNEL_VENDOR_RAMDISK_DEPMOD_STAGING_DIR),$(KERNEL_VENDOR_RAMDISK_KERNEL_MODULES_LOAD),,,)\
) )

126
build/tools/createjson.py Executable file
View File

@@ -0,0 +1,126 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# SPDX-FileCopyrightText: 2025 The Evolution X Project
# SPDX-License-Identifier: Apache-2.0
import argparse
import os
import hashlib
import json
def generate_json(target_device, product_out, file_name, build_variant, with_gms):
output = os.path.join(product_out, f"{target_device}.json")
if os.path.exists(output):
os.remove(output)
android_version = file_name.split('-')[1].split('.')[0] + ("_vanilla" if with_gms == "false" else "")
existing_ota_json = os.path.join(f"./evolution/OTA{'-VANILLA' if with_gms == 'false' else ''}/builds", f"{target_device}.json")
maintainer = ""
currently_maintained = False
oem = ""
device = ""
forum = ""
firmware = ""
paypal = ""
github = ""
initial_installation_images = []
extra_images = []
if os.path.exists(existing_ota_json):
with open(existing_ota_json, 'r') as f:
ota_data = json.load(f)
response_data = ota_data["response"][0]
maintainer = response_data.get("maintainer", "")
currently_maintained = response_data.get("currently_maintained", False)
oem = response_data.get("oem", "")
device = response_data.get("device", "")
forum = response_data.get("forum", "")
firmware = response_data.get("firmware", "")
paypal = response_data.get("paypal", "")
github = response_data.get("github", "")
initial_installation_images = response_data.get("initial_installation_images", [])
extra_images = response_data.get("extra_images", [])
filename = file_name
if "Official" in file_name:
download = f"https://cdn.evolution-x.org/{target_device}/{android_version}/{file_name}/download"
else:
download = f"https://sourceforge.net/projects/your_unoffical_sourceforge_project/files/{target_device}/{android_version}/{file_name}/download"
version = file_name.split('-')[4]
buildprop = os.path.join(product_out, "system", "build.prop")
timestamp = get_timestamp_from_buildprop(buildprop)
md5 = get_checksum(os.path.join(product_out, file_name), 'md5')
sha256 = get_checksum(os.path.join(product_out, file_name), 'sha256')
size = os.path.getsize(os.path.join(product_out, file_name))
json_data = {
"response": [
{
"maintainer": maintainer,
"currently_maintained": currently_maintained,
"oem": oem,
"device": device,
"filename": filename,
"download": download,
"timestamp": timestamp,
"md5": md5,
"sha256": sha256,
"size": size,
"version": version,
"buildtype": build_variant,
"forum": f"{forum}" if forum else "",
"firmware": f"{firmware}" if firmware else "",
"paypal": f"{paypal}" if paypal else "",
"github": github,
"initial_installation_images": initial_installation_images,
"extra_images": extra_images
}
]
}
with open(output, 'w') as f:
json.dump(json_data, f, indent=2)
def get_timestamp_from_buildprop(buildprop_path):
with open(buildprop_path, 'r') as f:
for line in f:
if "ro.system.build.date.utc" in line:
return int(line.split('=')[1].strip())
return 0
def get_checksum(file_path, checksum_type='md5'):
if checksum_type == 'md5':
return calculate_md5(file_path)
elif checksum_type == 'sha256':
return calculate_sha256(file_path)
def calculate_md5(file_path):
hash_md5 = hashlib.md5()
with open(file_path, "rb") as f:
for chunk in iter(lambda: f.read(4096), b""):
hash_md5.update(chunk)
return hash_md5.hexdigest()
def calculate_sha256(file_path):
hash_sha256 = hashlib.sha256()
with open(file_path, "rb") as f:
for chunk in iter(lambda: f.read(4096), b""):
hash_sha256.update(chunk)
return hash_sha256.hexdigest()
def main():
parser = argparse.ArgumentParser(description="Generate a JSON file for OTA.")
parser.add_argument("target_device", help="Target device name")
parser.add_argument("product_out", help="Product output directory")
parser.add_argument("file_name", help="File name for OTA")
parser.add_argument("build_variant", help="Build variant")
parser.add_argument("with_gms", help="Whether with GMS (true/false)")
args = parser.parse_args()
generate_json(args.target_device, args.product_out, args.file_name, args.build_variant, args.with_gms)
if __name__ == "__main__":
main()

View File

@@ -1,6 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
# Copyright (C) 2012-2013, The CyanogenMod Project # Copyright (C) 2012-2013, The CyanogenMod Project
# (C) 2017-2018,2020-2021, The LineageOS Project # (C) 2017-2018,2020-2021, The LineageOS Project
# (C) 2024, The Evolution X Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@@ -16,11 +17,12 @@
from __future__ import print_function from __future__ import print_function
import base64
import glob import glob
import json import json
import netrc
import os import os
import re import re
import subprocess
import sys import sys
import urllib.error import urllib.error
import urllib.parse import urllib.parse
@@ -45,22 +47,38 @@ except:
device = product device = product
if not depsonly: if not depsonly:
print("Device %s not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS)." % device) print("Device %s not found. Attempting to retrieve device repository from Evolution-X-Devices Github (http://github.com/Evolution-X-Devices)." % device)
repositories = [] repositories = []
try:
authtuple = netrc.netrc().authenticators("api.github.com")
if authtuple:
auth_string = ('%s:%s' % (authtuple[0], authtuple[2])).encode()
githubauth = base64.encodestring(auth_string).decode().replace('\n', '')
else:
githubauth = None
except:
githubauth = None
def add_auth(githubreq):
if githubauth:
githubreq.add_header("Authorization","Basic %s" % githubauth)
if not depsonly: if not depsonly:
githubreq = urllib.request.Request("https://raw.githubusercontent.com/LineageOS/mirror/main/default.xml") githubreq = urllib.request.Request("https://api.github.com/search/repositories?q=%s+user:Evolution-X-Devices+in:name+fork:true" % device)
add_auth(githubreq)
try: try:
result = ElementTree.fromstring(urllib.request.urlopen(githubreq, timeout=10).read().decode()) result = json.loads(urllib.request.urlopen(githubreq, timeout=10).read().decode())
except urllib.error.URLError: except urllib.error.URLError:
print("Failed to fetch data from GitHub") print("Failed to search GitHub")
sys.exit(1) sys.exit(1)
except ValueError: except ValueError:
print("Failed to parse return data from GitHub") print("Failed to parse return data from GitHub")
sys.exit(1) sys.exit(1)
for res in result.findall('.//project'): for res in result.get('items', []):
repositories.append(res.attrib['name'][10:]) repositories.append(res)
local_manifests = r'.repo/local_manifests' local_manifests = r'.repo/local_manifests'
if not os.path.exists(local_manifests): os.makedirs(local_manifests) if not os.path.exists(local_manifests): os.makedirs(local_manifests)
@@ -100,12 +118,6 @@ def get_manifest_path():
except IndexError: except IndexError:
return ".repo/manifests/{}".format(m.find("include").get("name")) return ".repo/manifests/{}".format(m.find("include").get("name"))
def get_default_revision():
m = ElementTree.parse(get_manifest_path())
d = m.findall('default')[0]
r = d.get('revision')
return r.replace('refs/heads/', '').replace('refs/tags/', '')
def get_from_manifest(devicename): def get_from_manifest(devicename):
for path in glob.glob(".repo/local_manifests/*.xml"): for path in glob.glob(".repo/local_manifests/*.xml"):
try: try:
@@ -115,7 +127,7 @@ def get_from_manifest(devicename):
lm = ElementTree.Element("manifest") lm = ElementTree.Element("manifest")
for localpath in lm.findall("project"): for localpath in lm.findall("project"):
if re.search("android_device_.*_%s$" % device, localpath.get("name")): if re.search("device_.*_%s$" % device, localpath.get("name")):
return localpath.get("path") return localpath.get("path")
return None return None
@@ -154,6 +166,17 @@ def is_in_manifest(projectpath):
if localpath.get("path") == projectpath: if localpath.get("path") == projectpath:
return True return True
# ... and don't forget the evolution snippet
try:
lm = ElementTree.parse(".repo/manifests/snippets/evolution.xml")
lm = lm.getroot()
except:
lm = ElementTree.Element("manifest")
for localpath in lm.findall("project"):
if localpath.get("path") == projectpath:
return True
return False return False
def add_to_manifest(repositories): def add_to_manifest(repositories):
@@ -169,41 +192,45 @@ def add_to_manifest(repositories):
for repository in repositories: for repository in repositories:
repo_name = repository['repository'] repo_name = repository['repository']
repo_target = repository['target_path'] repo_target = repository['target_path']
repo_revision = repository['branch'] repo_remote = repository.get("remote", "evo-devices")
repo_revision = repository.get('revision')
if repo_remote != "evo-devices" and not repo_remote.startswith("aosp-"):
repo_revision = repo_revision or repository.get('branch') or get_default_or_fallback_revision(repo_name)
print('Checking if %s is fetched from %s' % (repo_target, repo_name)) print('Checking if %s is fetched from %s' % (repo_target, repo_name))
if is_in_manifest(repo_target): if is_in_manifest(repo_target):
print('LineageOS/%s already fetched to %s' % (repo_name, repo_target)) print('%s already fetched to %s' % (repo_name, repo_target))
continue continue
project = ElementTree.Element("project", attrib = { project_attrib = {
"path": repo_target, "path": repo_target,
"remote": "github", "name": repo_name,
"name": "LineageOS/%s" % repo_name, "remote": repo_remote,
"revision": repo_revision }) }
if repo_remote := repository.get("remote", None):
# aosp- remotes are only used for kernel prebuilts, thus they if repo_revision and not (repo_remote == "evo-devices" and repo_revision == get_default_or_fallback_revision(repo_name)):
# don't let you customize clone-depth/revision. project_attrib["revision"] = repo_revision
if repo_remote.startswith("aosp-"):
project.attrib["name"] = repo_name project = ElementTree.Element("project", attrib=project_attrib)
project.attrib["remote"] = repo_remote
project.attrib["clone-depth"] = "1" if repo_remote.startswith("aosp-"):
del project.attrib["revision"] project.set("clone-depth", "1")
if project.attrib.get("revision", None) == get_default_revision(): project.attrib.pop('revision', None)
del project.attrib["revision"]
print("Adding dependency: %s -> %s" % (project.attrib["name"], project.attrib["path"])) print("Adding dependency: %s -> %s" % (repo_name, repo_target))
lm.append(project) lm.append(project)
indent(lm, 0) indent(lm, 0)
raw_xml = ElementTree.tostring(lm).decode() raw_xml = ElementTree.tostring(lm).decode()
raw_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + raw_xml raw_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + raw_xml
f = open('.repo/local_manifests/roomservice.xml', 'w') with open('.repo/local_manifests/roomservice.xml', 'w') as f:
f.write(raw_xml) f.write(raw_xml)
f.close()
def fetch_dependencies(repo_path): def fetch_dependencies(repo_path):
print('Looking for dependencies in %s' % repo_path) print('Looking for dependencies in %s' % repo_path)
dependencies_path = repo_path + '/lineage.dependencies' dependencies_path = repo_path + '/evolution.dependencies'
syncable_repos = [] syncable_repos = []
verify_repos = [] verify_repos = []
@@ -244,37 +271,34 @@ def fetch_dependencies(repo_path):
for deprepo in verify_repos: for deprepo in verify_repos:
fetch_dependencies(deprepo) fetch_dependencies(deprepo)
def get_default_or_fallback_revision(repo_name): def get_remote_revision_from_snippet(snippet_path, remote_name):
default_revision = get_default_revision()
print("Default revision: %s" % default_revision)
print("Checking branch info")
try: try:
stdout = subprocess.run( tree = ElementTree.parse(snippet_path)
["git", "ls-remote", "-h", "https://:@github.com/LineageOS/" + repo_name], root = tree.getroot()
stdout=subprocess.PIPE, remote = root.find(f".//remote[@name='{remote_name}']")
stderr=subprocess.PIPE, if remote is not None:
).stdout.decode() revision = remote.get('revision')
branches = [x.split("refs/heads/")[-1] for x in stdout.splitlines()] return revision.split('/')[-1]
except: except FileNotFoundError:
return "" print(f"Error: {snippet_path} not found.")
raise
except ElementTree.ParseError:
print(f"Error: There was a problem parsing {snippet_path}.")
raise
if default_revision in branches: raise ValueError(f"Remote {remote_name} not found in the snippet.")
return default_revision
if os.getenv('ROOMSERVICE_BRANCHES'): def get_default_or_fallback_revision(repo_name):
fallbacks = list(filter(bool, os.getenv('ROOMSERVICE_BRANCHES').split(' '))) default_revision = get_remote_revision_from_snippet(".repo/manifests/snippets/evolution.xml", "evo-devices")
for fallback in fallbacks: print("Using default revision: %s" % default_revision)
if fallback in branches:
print("Using fallback branch: %s" % fallback)
return fallback
print("Default revision %s not found in %s. Bailing." % (default_revision, repo_name)) fallback_revision = os.getenv('ROOMSERVICE_FALLBACK_REVISION')
print("Branches found:")
for branch in branches: if fallback_revision:
print(branch) print("Using fallback revision from environment: %s" % fallback_revision)
print("Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.") return fallback_revision
return ""
return default_revision
if depsonly: if depsonly:
repo_path = get_from_manifest(device) repo_path = get_from_manifest(device)
@@ -286,11 +310,12 @@ if depsonly:
sys.exit() sys.exit()
else: else:
for repo_name in repositories: for repository in repositories:
if re.match(r"^android_device_[^_]*_" + device + "$", repo_name): repo_name = repository['name']
print("Found repository: %s" % repo_name) if re.match(r"^device_[^_]*_" + device + "$", repo_name):
print("Found repository: %s" % repository['name'])
manufacturer = repo_name.replace("android_device_", "").replace("_" + device, "") manufacturer = repo_name.replace("device_", "").replace("_" + device, "")
repo_path = "device/%s/%s" % (manufacturer, device) repo_path = "device/%s/%s" % (manufacturer, device)
revision = get_default_or_fallback_revision(repo_name) revision = get_default_or_fallback_revision(repo_name)
if revision == "": if revision == "":
@@ -311,4 +336,4 @@ else:
print("Done") print("Done")
sys.exit() sys.exit()
print("Repository for %s not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml." % device) print("Repository for %s not found in the Evolution-X-Devices Github repository list. If this is an error, you may need to manually add it to your local_manifests/roomservice.xml." % device)

View File

@@ -1,85 +0,0 @@
//
// SPDX-FileCopyrightText: The LineageOS Project
// SPDX-License-Identifier: Apache-2.0
//
lineage_charger_density = select(soong_config_variable("lineage_charger", "density"), {
any @ flag_val: flag_val,
default: "mdpi",
})
prebuilt_etc {
name: "lineage_charger_battery_scale",
filename: "battery_scale.png",
src: lineage_charger_density + "/battery_scale.png",
relative_install_path: "res/images/charger",
product_specific: true,
}
prebuilt_etc {
name: "lineage_charger_battery_scale_vendor",
filename: "battery_scale.png",
src: lineage_charger_density + "/battery_scale.png",
relative_install_path: "res/images/charger",
proprietary: true,
}
prebuilt_etc {
name: "lineage_charger_battery_fail",
filename: "battery_fail.png",
src: lineage_charger_density + "/battery_fail.png",
relative_install_path: "res/images/charger",
product_specific: true,
}
prebuilt_etc {
name: "lineage_charger_battery_fail_vendor",
filename: "battery_fail.png",
src: lineage_charger_density + "/battery_fail.png",
relative_install_path: "res/images/charger",
proprietary: true,
}
prebuilt_etc {
name: "lineage_charger_font",
filename: "percent_font.png",
src: lineage_charger_density + "/percent_font.png",
relative_install_path: "res/images/charger",
product_specific: true,
}
prebuilt_etc {
name: "lineage_charger_font_vendor",
filename: "percent_font.png",
src: lineage_charger_density + "/percent_font.png",
relative_install_path: "res/images/charger",
proprietary: true,
}
prebuilt_etc {
name: "lineage_charger_animation",
filename: "animation.txt",
required: [
"lineage_charger_battery_fail",
"lineage_charger_battery_scale",
"lineage_charger_font",
],
src: "animation.txt",
relative_install_path: "res/values/charger",
product_specific: true,
}
prebuilt_etc {
name: "lineage_charger_animation_vendor",
filename: "animation.txt",
required: [
"lineage_charger_battery_fail_vendor",
"lineage_charger_battery_scale_vendor",
"lineage_charger_font_vendor",
],
src: "animation.txt",
relative_install_path: "res/values/charger",
proprietary: true,
}

View File

@@ -1,31 +0,0 @@
# animation: num_cycles, first_frame_repeats, animation_file
animation: 7 1 charger/battery_scale
# percent_display: text_percent_pos_x, text_percent_pos_y, color_r, color_g, color_b, color_a, font_file
percent_display: c c 255 255 255 255 charger/percent_font
fail: charger/battery_fail
# frame: disp_time min_level max_level
frame: 500 0 4
frame: 500 0 9
frame: 500 5 14
frame: 500 10 19
frame: 500 15 24
frame: 500 20 29
frame: 500 25 34
frame: 500 30 39
frame: 500 35 44
frame: 500 40 49
frame: 500 45 54
frame: 500 50 59
frame: 500 55 64
frame: 500 60 69
frame: 500 65 74
frame: 500 70 79
frame: 500 75 84
frame: 500 80 89
frame: 500 85 94
frame: 500 90 99
frame: 500 95 99
frame: 1000 100 100

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -1,28 +0,0 @@
#!/bin/bash
if [ -z "$(which convert)" ] || [ -z "$(which pngcrush)" ]; then
echo "Please install imagemagick and pngcrush"
exit 1
fi
for DENSITY in mdpi:160 hdpi:240 xhdpi:320 xxhdpi:480 xxxhdpi:640; do
DPI=$(echo $DENSITY | cut -f1 -d ':')
WIDTH=$(echo $DENSITY | cut -f2 -d ':')
rm $DPI/battery_fail.png
rm $DPI/battery_scale.png
for SVG in svg/*.svg; do
PNG="$DPI/$(basename $SVG | cut -f1 -d '.').png"
convert -density $WIDTH -resize ${WIDTH}x${WIDTH} $SVG png24:$PNG
done
SCALEFILE="$DPI/battery_scale.png"
SCALEFILES="$(ls $DPI/battery_scale_*.png)"
FRAMES="$(ls -l $SCALEFILES | wc -l)"
SCALEHEIGHT=$(($WIDTH * $FRAMES))
convert -size ${WIDTH}x${SCALEHEIGHT} canvas:black $SCALEFILES -fx "u[j%$FRAMES+1].p{i,int(j/$FRAMES)}" png24:$SCALEFILE.tmp
pngcrush -text b "Frames" "$FRAMES" $SCALEFILE.tmp $SCALEFILE
rm $SCALEFILES $SCALEFILE.tmp
done

View File

@@ -1,5 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M0 150C0 232.843 67.1573 300 150 300C232.843 300 300 232.843 300 150C300 67.1573 232.843 0 150 0C67.1573 0 0 67.1573 0 150ZM150 0.000214268L169.738 31.6154L169.771 31.6209L198.705 8.12763L207.106 44.433L207.143 44.4527L242.132 31.6291L238.287 68.7251L238.288 68.7264L275.575 67.958L259.91 101.76L259.931 101.809L295.41 113.177L269.596 140.084L269.597 140.096L299.487 162.387L266.362 179.441L266.349 179.49L287.366 210.255L250.478 215.631L250.465 215.652L260.358 251.593L223.712 244.698L223.705 244.704L221.392 281.921L189.001 263.52L188.947 263.538L174.689 297.954L150 270L125.31 297.954L111.052 263.538L110.998 263.52L78.6075 281.921L76.2945 244.704L76.2875 244.698L39.6411 251.593L49.535 215.651L49.5221 215.631L12.6336 210.255L33.6504 179.49L33.6382 179.441L0.511969 162.387L30.4029 140.096L30.4038 140.085L4.58961 113.177L40.0687 101.809L40.09 101.76L24.4247 67.958L61.7121 68.7264L61.7127 68.7257L57.8678 31.6291L92.8571 44.4528L92.8929 44.4334L101.295 8.12763L130.229 31.621L130.262 31.6156L150 0.000214268Z" fill="#167c80"/>
<path d="M138.78 169.072Q138.78 159.656 141.117 154.063Q143.453 148.469 150.356 141.779Q157.259 135.088 159.1 132.256Q161.932 127.937 161.932 122.91Q161.932 116.255 158.64 112.75Q155.348 109.246 148.976 109.246Q142.887 109.246 139.17 112.679Q135.453 116.113 135.453 121.99L118.248 121.99Q118.39 109.458 126.78 102.166Q135.169 94.873 148.976 94.873Q163.207 94.873 171.172 102.095Q179.137 109.316 179.137 122.273Q179.137 133.813 168.375 145L159.667 153.567Q154.994 158.877 154.852 169.072Z M137.577 191.091Q137.577 186.914 140.196 184.33Q142.816 181.746 147.276 181.746Q151.808 181.746 154.427 184.401Q157.047 187.056 157.047 191.091Q157.047 194.985 154.498 197.605Q151.949 200.225 147.276 200.225Q142.604 200.225 140.09 197.605Q137.577 194.985 137.577 191.091Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -1,6 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 580 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137037 169.941 1.33137C172.294 1.64706 174.64 2.0186 176.976 2.44566C187.842 4.43214 193.586 15.8576 190.172 26.3627L189.021 29.9054C181.983 51.5661 150 46.5005 150 23.725L150 20Z" fill="#c62828"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 817 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137173 169.941 1.33127C187.911 3.74157 205.298 9.391 221.252 18.0033C230.972 23.2501 232.905 35.8917 226.412 44.8278L186.18 100.202C174.792 115.876 150 107.821 150 88.4464L150 20Z" fill="#c62828"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 817 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137072 169.941 1.33136C186.679 3.57645 202.966 8.63872 218.099 16.349C233.231 24.0593 246.9 34.2606 258.554 46.4822C266.177 54.4759 264.108 67.0954 255.172 73.5879L181.756 126.928C168.535 136.533 150 127.089 150 110.748L150 20Z" fill="#c62828"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 865 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137173 169.941 1.33127C194.494 4.62455 217.959 13.9649 238.168 28.6475C258.377 43.33 274.511 62.7604 285.23 85.0935C290.01 95.0516 284.142 106.414 273.637 109.828L176.18 141.493C163.258 145.692 150 136.06 150 122.472L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 862 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137047 169.941 1.33137C182.784 3.05407 195.379 6.4376 207.403 11.4181C225.601 18.9563 242.137 30.0052 256.066 43.934C269.995 57.8628 281.044 74.3987 288.582 92.5975C293.562 104.621 296.946 117.216 298.669 130.059C300.137 141.007 291.046 150 280 150L170 150C158.954 150 150 141.046 150 130L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 934 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137072 169.941 1.33136C186.679 3.57645 202.966 8.63872 218.099 16.349C239.19 27.0957 257.439 42.6815 271.353 61.8322C285.266 80.9829 294.45 103.155 298.153 126.535C300.81 143.309 300.591 160.364 297.554 176.976C295.568 187.842 284.142 193.585 273.637 190.172L163.82 154.49C155.579 151.813 150 144.134 150 135.469L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 958 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137109 169.941 1.33134C190.581 4.09984 210.494 11.1469 228.375 22.104C251.962 36.558 271.092 57.2532 283.651 81.9014C296.21 106.55 301.708 134.191 299.538 161.769C297.892 182.675 291.889 202.927 281.997 221.252C276.75 230.972 264.108 232.905 255.172 226.412L158.244 155.99C153.065 152.227 150 146.212 150 139.809L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 958 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137173 169.941 1.33127C194.494 4.62455 217.959 13.9649 238.168 28.6475C263.795 47.2667 282.87 73.5209 292.658 103.647C302.447 133.774 302.447 166.226 292.658 196.353C284.939 220.109 271.446 241.458 253.518 258.554C245.524 266.177 232.905 264.108 226.412 255.172L153.82 155.257C151.337 151.84 150 147.725 150 143.502L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 961 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137283 169.941 1.33108C198.42 5.15078 225.355 17.0964 247.417 35.9391C274.575 59.1345 292.566 91.2591 298.153 126.535C303.74 161.811 296.557 197.922 277.896 228.375C262.737 253.113 240.811 272.797 214.906 285.23C204.948 290.01 193.585 284.142 190.172 273.637L150.979 153.013C150.33 151.017 150 148.931 150 146.832L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 959 B

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137047 169.941 1.33137C182.784 3.05407 195.379 6.4376 207.403 11.4181C225.601 18.9563 242.137 30.0052 256.066 43.934C269.995 57.8628 281.044 74.3987 288.582 92.5975C296.12 110.796 300 130.302 300 150C300 169.698 296.12 189.204 288.582 207.403C281.044 225.601 269.995 242.137 256.066 256.066C242.137 269.995 225.601 281.044 207.402 288.582C195.379 293.562 182.784 296.946 169.941 298.669C158.993 300.137 150 291.046 150 280L150 150L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137056 169.941 1.33137C184.731 3.31516 199.18 7.49993 212.799 13.7785C232.49 22.8562 249.979 36.095 264.061 52.5828C278.143 69.0705 288.483 88.4152 294.368 109.284C300.254 130.153 301.545 152.049 298.153 173.465C294.761 194.881 286.767 215.307 274.72 233.335C262.674 251.364 246.862 266.567 228.375 277.896C209.887 289.225 189.163 296.412 167.631 298.96C152.738 300.723 137.703 300.238 123.024 297.554C112.158 295.568 106.415 284.142 109.828 273.637L149.021 153.013C149.67 151.017 150 148.931 150 146.832L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137072 169.941 1.33136C186.679 3.57645 202.966 8.63872 218.099 16.349C239.19 27.0957 257.439 42.6815 271.353 61.8322C285.266 80.9829 294.45 103.155 298.153 126.535C301.856 149.915 299.973 173.84 292.658 196.353C285.344 218.866 272.804 239.328 256.066 256.066C239.328 272.804 218.866 285.344 196.353 292.658C173.84 299.973 149.915 301.856 126.535 298.153C109.761 295.496 93.6083 290.018 78.7474 281.997C69.0275 276.75 67.0955 264.108 73.588 255.172L146.18 155.257C148.663 151.84 150 147.725 150 143.502L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.993 -0.137085 169.941 1.33136C188.629 3.83801 206.738 9.85427 223.293 19.1256C245.686 31.666 264.486 49.7423 277.896 71.6252C291.306 93.5082 298.877 118.466 299.884 144.111C300.892 169.756 295.303 195.231 283.651 218.099C271.999 240.966 254.675 260.462 233.336 274.72C211.996 288.979 187.355 297.524 161.769 299.538C136.183 301.551 110.509 296.966 87.2011 286.221C69.9695 278.278 54.458 267.163 41.4457 253.518C33.8228 245.524 35.8917 232.905 44.8278 226.412L141.756 155.99C146.935 152.227 150 146.212 150 139.809L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137109 169.941 1.33134C190.581 4.09984 210.494 11.1469 228.375 22.104C251.962 36.558 271.092 57.2532 283.651 81.9014C296.21 106.55 301.708 134.191 299.538 161.769C297.367 189.347 287.613 215.788 271.353 238.168C255.092 260.548 232.96 277.996 207.403 288.582C181.845 299.168 153.858 302.481 126.535 298.153C99.2121 293.826 73.6182 282.027 52.5828 264.061C36.6366 250.442 23.781 233.681 14.7699 214.906C9.99029 204.948 15.8576 193.586 26.3627 190.172L136.18 154.49C144.421 151.813 150 144.134 150 135.469L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137139 169.941 1.33131C192.536 4.36201 214.235 12.5169 233.336 25.2796C258.003 41.7618 277.229 65.1886 288.582 92.5975C299.935 120.006 302.906 150.166 297.118 179.264C291.33 208.361 277.044 235.088 256.066 256.066C235.088 277.044 208.361 291.33 179.264 297.118C150.166 302.906 120.006 299.935 92.5975 288.582C65.1886 277.229 41.7618 258.003 25.2796 233.336C12.5169 214.235 4.36201 192.536 1.33131 169.941C-0.137139 158.994 8.95431 150 20 150L130 150C141.046 150 150 141.046 150 130L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137173 169.941 1.33127C194.494 4.62455 217.959 13.9649 238.168 28.6475C263.795 47.2667 282.87 73.5209 292.658 103.647C302.447 133.774 302.447 166.226 292.658 196.353C282.87 226.479 263.795 252.733 238.168 271.353C212.541 289.972 181.677 300 150 300C118.323 300 87.4593 289.972 61.8322 271.353C36.2051 252.733 17.1302 226.479 7.34152 196.353C-0.377567 172.596 -2.0096 147.393 2.44542 123.024C4.43186 112.159 15.8576 106.414 26.3627 109.828L123.82 141.493C136.742 145.692 150 136.06 150 122.472L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.13721 169.942 1.33122C196.455 4.88752 221.666 15.4912 242.864 32.2025C269.324 53.0615 287.99 82.2213 295.855 114.983C303.721 147.745 300.327 182.201 286.221 212.799C272.116 243.397 248.119 268.355 218.099 283.651C188.078 298.947 153.782 303.691 120.736 297.118C87.691 290.545 57.8208 273.037 35.9391 247.417C14.0573 221.797 1.43841 189.556 0.115643 155.889C-0.944093 128.917 5.29598 102.288 18.0031 78.7477C23.25 69.0277 35.8917 67.0954 44.8278 73.5879L118.244 126.928C131.465 136.533 150 127.089 150 110.748L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137283 169.941 1.33108C198.42 5.15078 225.355 17.0964 247.417 35.9391C274.575 59.1345 292.566 91.2591 298.153 126.535C303.74 161.811 296.557 197.922 277.896 228.375C259.235 258.827 230.32 281.622 196.353 292.658C162.385 303.695 125.594 302.25 92.5974 288.582C59.6007 274.914 32.5635 249.921 16.349 218.099C0.134526 186.276 -4.1931 149.712 4.14452 114.983C10.9176 86.7713 25.6875 61.2748 46.4819 41.4454C54.4756 33.8226 67.0955 35.8916 73.588 44.8278L113.82 100.202C125.208 115.876 150 107.821 150 88.4463L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,7 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#181818"/>
<path d="M150 20C150 8.9543 158.994 -0.137312 169.942 1.33104C200.389 5.41475 229.026 18.7812 251.82 39.8516C279.537 65.4731 296.576 100.602 299.538 138.231C302.499 175.86 291.165 213.222 267.798 242.864C244.43 272.506 210.746 292.249 173.465 298.153C136.185 304.058 98.0484 295.691 66.6644 274.72C35.2804 253.75 12.9559 221.719 4.1445 185.017C-4.66693 148.314 0.682508 109.639 19.1256 76.7068C34.2927 49.6239 57.3981 28.0622 85.0931 14.7697C95.0512 9.99024 106.415 15.8576 109.828 26.3626L110.979 29.9051C118.017 51.5659 150 46.5002 150 23.7248L150 20Z" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,6 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
<path d="M162.73 230.297L149.298 254.672C149.006 255.202 148.199 254.959 148.247 254.357L149.72 236.199L137.762 236.199C137.336 236.199 137.064 235.742 137.27 235.367L150.703 210.992C150.995 210.462 151.802 210.705 151.753 211.307L150.281 229.465L162.238 229.465C162.665 229.465 162.935 229.922 162.73 230.297Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 580 B

View File

@@ -1,5 +0,0 @@
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="300" fill="black"/>
<circle cx="150" cy="150" r="150" fill="#167c80"/>
<circle cx="150" cy="150" r="128" fill="black"/>
</svg>

Before

Width:  |  Height:  |  Size: 253 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -116,6 +116,11 @@ endif
# Clear this first to prevent accidental poisoning from env # Clear this first to prevent accidental poisoning from env
KERNEL_MAKE_FLAGS := KERNEL_MAKE_FLAGS :=
# Use "safe" default values for kernel build user & host - matches Pixels, helps avoid detection
KERNEL_MAKE_FLAGS += \
KBUILD_BUILD_USER="build-user" \
KBUILD_BUILD_HOST="build-host"
# Add back threads, ninja cuts this to $(getconf _NPROCESSORS_ONLN)/2 # Add back threads, ninja cuts this to $(getconf _NPROCESSORS_ONLN)/2
KERNEL_MAKE_FLAGS += -j$(shell getconf _NPROCESSORS_ONLN) KERNEL_MAKE_FLAGS += -j$(shell getconf _NPROCESSORS_ONLN)

View File

@@ -18,37 +18,37 @@ EXPORT_TO_SOONG := \
# Documentation here: # Documentation here:
# https://github.com/LineageOS/android_build_soong/commit/8328367c44085b948c003116c0ed74a047237a69 # https://github.com/LineageOS/android_build_soong/commit/8328367c44085b948c003116c0ed74a047237a69
$(call add_soong_config_namespace,lineageVarsPlugin) SOONG_CONFIG_NAMESPACES += lineageVarsPlugin
$(foreach v,$(EXPORT_TO_SOONG),$(eval $(call add_soong_config_var,lineageVarsPlugin,$(v))))
# Bootanimation SOONG_CONFIG_lineageVarsPlugin :=
TARGET_BOOTANIMATION_HALF_RES ?= false
$(call soong_config_set,lineage_bootanimation,height,$(TARGET_SCREEN_HEIGHT))
$(call soong_config_set,lineage_bootanimation,width,$(TARGET_SCREEN_WIDTH))
$(call soong_config_set,lineage_bootanimation,half_res,$(TARGET_BOOTANIMATION_HALF_RES))
ifneq ($(TARGET_BOOTANIMATION),) define addVar
$(call soong_config_set,lineage_bootanimation,prebuilt_file,$(TARGET_BOOTANIMATION)) SOONG_CONFIG_lineageVarsPlugin += $(1)
endif SOONG_CONFIG_lineageVarsPlugin_$(1) := $($1)
endef
$(foreach v,$(EXPORT_TO_SOONG),$(eval $(call addVar,$(v))))
SOONG_CONFIG_NAMESPACES += lineageGlobalVars
SOONG_CONFIG_lineageGlobalVars += \
spoof_first_api_level_32
# Soong bool variables
SOONG_CONFIG_lineageGlobalVars_spoof_first_api_level_32 := $(SPOOF_FIRST_API_LEVEL_32)
# Camera # Camera
ifneq ($(TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED),) ifneq ($(TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED),)
$(error TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED is deprecated, please migrate to soong_config_set,camera,override_format_from_reserved) $(error TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED is deprecated, please migrate to soong_config_set,camera,override_format_from_reserved)
endif endif
ifneq ($(TARGET_CAMERA_PACKAGE_NAME),)
# Charger $(call soong_config_set,camera,package_name,$(TARGET_CAMERA_PACKAGE_NAME))
lineage_charger_density := mdpi endif
ifneq (,$(TARGET_SCREEN_DENSITY)) ifneq ($(TARGET_CAMERA_SERVICE_EXT_LIB),)
lineage_charger_density := $(strip \ $(call soong_config_set,libcameraservice,ext_lib,$(TARGET_CAMERA_SERVICE_EXT_LIB))
$(or $(if $(filter $(shell echo $$(($(TARGET_SCREEN_DENSITY) >= 560))),1),xxxhdpi),\ endif
$(if $(filter $(shell echo $$(($(TARGET_SCREEN_DENSITY) >= 400))),1),xxhdpi),\ ifneq ($(TARGET_USES_MIUI_CAMERA),)
$(if $(filter $(shell echo $$(($(TARGET_SCREEN_DENSITY) >= 280))),1),xhdpi),\ $(call soong_config_set,camera,uses_miui_camera,$(TARGET_USES_MIUI_CAMERA))
$(if $(filter $(shell echo $$(($(TARGET_SCREEN_DENSITY) >= 200))),1),hdpi,mdpi)))
else ifneq (,$(filter mdpi hdpi xhdpi xxhdpi xxxhdpi,$(PRODUCT_AAPT_PREF_CONFIG)))
# If PRODUCT_AAPT_PREF_CONFIG includes a dpi bucket, then use that value.
lineage_charger_density := $(PRODUCT_AAPT_PREF_CONFIG)
endif endif
$(call soong_config_set,lineage_charger,density,$(lineage_charger_density))
# Libui # Libui
ifneq ($(TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS),) ifneq ($(TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS),)

View File

@@ -1,10 +1,25 @@
# Allow vendor/extra to override any property by setting it first # Allow vendor/extra to override any property by setting it first
$(call inherit-product-if-exists, vendor/extra/product.mk) $(call inherit-product-if-exists, vendor/extra/product.mk)
$(call inherit-product, vendor/lineage/config/evolution.mk)
$(call inherit-product, vendor/extras/evolution.mk)
ifeq ($(TARGET_INCLUDE_VIPERFX),true)
$(call inherit-product, packages/apps/ViPER4AndroidFX/config.mk)
endif
# Allow vendor prebuilt repos to exclude themselves from bp scanning # Allow vendor prebuilt repos to exclude themselves from bp scanning
-include $(sort $(wildcard vendor/*/*/exclude-bp.mk)) -include $(sort $(wildcard vendor/*/*/exclude-bp.mk))
PRODUCT_BRAND ?= LineageOS # Pixel additions
ifeq ($(WITH_GMS),true)
$(call inherit-product, vendor/google/overlays/ThemeIcons/config.mk)
$(call inherit-product, vendor/pixel-framework/config.mk)
$(call inherit-product, vendor/pixel-style/config/common.mk)
# Don't dexpreopt prebuilts. (For GMS).
DONT_DEXPREOPT_PREBUILTS := true
endif
PRODUCT_BRAND ?= EvolutionX
ifeq ($(PRODUCT_GMS_CLIENTID_BASE),) ifeq ($(PRODUCT_GMS_CLIENTID_BASE),)
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
@@ -43,6 +58,10 @@ endif
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += persist.sys.strictmode.disable=true PRODUCT_SYSTEM_DEFAULT_PROPERTIES += persist.sys.strictmode.disable=true
endif endif
# Enable Material Design 3 Expressive
PRODUCT_PRODUCT_PROPERTIES += \
is_expressive_design_enabled=true
# Backup Tool # Backup Tool
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
vendor/lineage/prebuilt/common/bin/backuptool.sh:install/bin/backuptool.sh \ vendor/lineage/prebuilt/common/bin/backuptool.sh:install/bin/backuptool.sh \
@@ -63,11 +82,9 @@ PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
system/bin/backuptool_ab.functions \ system/bin/backuptool_ab.functions \
system/bin/backuptool_postinstall.sh system/bin/backuptool_postinstall.sh
ifneq ($(TARGET_BUILD_VARIANT),user)
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
ro.ota.allow_downgrade=true ro.ota.allow_downgrade=true
endif endif
endif
# Lineage-specific broadcast actions whitelist # Lineage-specific broadcast actions whitelist
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
@@ -97,28 +114,45 @@ PRODUCT_PACKAGES += \
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
vendor/lineage/config/permissions/org.lineageos.android.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/org.lineageos.android.xml vendor/lineage/config/permissions/org.lineageos.android.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/org.lineageos.android.xml
# Enforce privapp-permissions whitelist # Enable transitional log for Privileged permissions
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.control_privapp_permissions=enforce ro.control_privapp_permissions=log
ifneq ($(TARGET_DISABLE_LINEAGE_SDK), true) ifneq ($(TARGET_DISABLE_LINEAGE_SDK), true)
# Lineage SDK # Lineage SDK
include vendor/lineage/config/lineage_sdk_common.mk include vendor/lineage/config/lineage_sdk_common.mk
endif endif
# Do not include art debug targets ART_BUILD_TARGET_NDEBUG := false
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false ART_BUILD_TARGET_DEBUG := false
ART_BUILD_HOST_NDEBUG := false
ART_BUILD_HOST_DEBUG := false
# Strip the local variable table and the local variable type table to reduce # Flags
# the size of the system image. This has no bearing on stack traces, but will ifeq ($(TARGET_BUILD_VARIANT), user)
# leave less information available via JDWP. # Strip the local variable table and the local variable type table to reduce
PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true # the size of the system image. This has no bearing on stack traces, but will
# leave less information available via JDWP.
PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true
# Disable dexpreopt debug info
WITH_DEXPREOPT_DEBUG_INFO := false
# Reduce system server verbosity
PRODUCT_SYSTEM_SERVER_DEBUG_INFO := false
# Don't include art debug targets
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
# Always preopt extracted APKs to prevent extracting out of the APK for gms
# modules.
PRODUCT_ALWAYS_PREOPT_EXTRACTED_APK := true
endif
# Enable whole-program R8 Java optimizations for SystemUI and system_server, # Enable whole-program R8 Java optimizations for SystemUI and system_server,
# but also allow explicit overriding for testing and development. # but also allow explicit overriding for testing and development.
SYSTEM_OPTIMIZE_JAVA ?= true SYSTEM_OPTIMIZE_JAVA ?= true
SYSTEMUI_OPTIMIZE_JAVA ?= true SYSTEMUI_OPTIMIZE_JAVA ?= true
# Disable dex2oat debug
USE_DEX2OAT_DEBUG := false
# Disable vendor restrictions # Disable vendor restrictions
PRODUCT_RESTRICT_VENDOR_FILES := false PRODUCT_RESTRICT_VENDOR_FILES := false
@@ -128,11 +162,14 @@ $(call enforce-product-packages-exist-internal,$(lastword $(_include_stack)),pro
endif endif
# Bootanimation # Bootanimation
TARGET_INCLUDE_BOOT_ANIMATIONS ?= true
ifeq ($(TARGET_INCLUDE_BOOT_ANIMATIONS),true)
include vendor/lineage/bootanimation/prebuilts/prebuilts.mk
endif
TARGET_SCREEN_WIDTH ?= 1080 TARGET_SCREEN_WIDTH ?= 1080
TARGET_SCREEN_HEIGHT ?= 1920 TARGET_SCREEN_HEIGHT ?= 1920
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
bootanimation.zip \ bootanimation.zip
bootanimation-dark.zip
# Lineage interfaces # Lineage interfaces
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
@@ -152,17 +189,23 @@ PRODUCT_PACKAGES += \
endif endif
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
LineageSettingsProvider \ LineageSettingsProvider
Updater
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
vendor/lineage/prebuilt/common/etc/init/init.lineage-updater.rc:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/init/init.lineage-updater.rc vendor/lineage/prebuilt/common/etc/init/init.lineage-updater.rc:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/init/init.lineage-updater.rc
# Config # Config
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
SimpleDeviceConfig \
SimpleSettingsConfig SimpleSettingsConfig
# Disable default frame rate limit for games
PRODUCT_PRODUCT_PROPERTIES += \
debug.graphics.game_default_frame_rate.disabled=true
# Disable RescueParty due to high risk of data loss
PRODUCT_PRODUCT_PROPERTIES += \
persist.sys.disable_rescue=true
# Extra tools in Lineage # Extra tools in Lineage
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
bash \ bash \
@@ -176,6 +219,12 @@ PRODUCT_PACKAGES += \
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
nano_recovery nano_recovery
# LMO packages
PRODUCT_PACKAGES += \
LMOFreeform \
LMOFreeformSidebar \
LMOSystemUIClock
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \ PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
system/bin/curl \ system/bin/curl \
system/bin/getcap \ system/bin/getcap \
@@ -215,9 +264,15 @@ PRODUCT_COPY_FILES += \
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
rsync rsync
ifeq ($(WITH_GMS),false)
# Storage manager # Storage manager
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_SYSTEM_PROPERTIES += \
ro.storage_manager.enabled=true ro.storage_manager.enabled=true
endif
# Default wifi country code
PRODUCT_SYSTEM_PROPERTIES += \
ro.boot.wificountrycode?=00
# These packages are excluded from user builds # These packages are excluded from user builds
PRODUCT_PACKAGES_DEBUG += \ PRODUCT_PACKAGES_DEBUG += \
@@ -228,11 +283,12 @@ PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
system/bin/procmem system/bin/procmem
endif endif
ifneq ($(TARGET_BUILD_VARIANT),user)
ifeq ($(WITH_SU),true)
# Root # Root
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
adb_root adb_root
ifneq ($(TARGET_BUILD_VARIANT),user)
ifeq ($(WITH_SU),true)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
su su
@@ -243,7 +299,10 @@ endif
# SystemUI # SystemUI
PRODUCT_DEXPREOPT_SPEED_APPS += \ PRODUCT_DEXPREOPT_SPEED_APPS += \
Launcher3QuickStep \
Settings \
CarSystemUI \ CarSystemUI \
NexusLauncherRelease \
SystemUI SystemUI
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
@@ -258,9 +317,11 @@ endif
$(call inherit-product, vendor/lineage/audio/audio.mk) $(call inherit-product, vendor/lineage/audio/audio.mk)
# SetupWizard # SetupWizard
ifeq ($(WITH_GMS),false)
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
setupwizard.theme=glif_v4 \ setupwizard.theme=glif_v4 \
setupwizard.feature.day_night_mode_enabled=true setupwizard.feature.day_night_mode_enabled=true
endif
PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/no-rro PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/no-rro
PRODUCT_PACKAGE_OVERLAYS += \ PRODUCT_PACKAGE_OVERLAYS += \
@@ -270,6 +331,7 @@ PRODUCT_PACKAGE_OVERLAYS += \
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
DocumentsUIOverlay \ DocumentsUIOverlay \
NetworkStackOverlay \ NetworkStackOverlay \
NfcOverlay \
PermissionControllerOverlay PermissionControllerOverlay
# Translations # Translations
@@ -287,7 +349,4 @@ PRODUCT_EXTRA_RECOVERY_KEYS += \
include vendor/lineage/config/version.mk include vendor/lineage/config/version.mk
-include vendor/lineage-priv/keys/keys.mk
-include $(WORKSPACE)/build_env/image-auto-bits.mk -include $(WORKSPACE)/build_env/image-auto-bits.mk
-include vendor/lineage/config/partner_gms.mk

View File

@@ -11,3 +11,15 @@ $(call inherit-product, vendor/lineage/config/tablet.mk)
$(call inherit-product, vendor/lineage/config/telephony.mk) $(call inherit-product, vendor/lineage/config/telephony.mk)
PRODUCT_PACKAGE_OVERLAYS += vendor/lineage/overlay/foldable_book PRODUCT_PACKAGE_OVERLAYS += vendor/lineage/overlay/foldable_book
# GMS
WITH_GMS ?= true
ifeq ($(WITH_GMS),true)
ifeq ($(TARGET_USES_MINI_GAPPS),true)
$(call inherit-product, vendor/gms/gms_mini.mk)
else ifeq ($(TARGET_USES_PICO_GAPPS),true)
$(call inherit-product, vendor/gms/gms_pico.mk)
else
$(call inherit-product, vendor/gms/gms_full.mk)
endif
endif

View File

@@ -6,3 +6,15 @@ PRODUCT_PRODUCT_PROPERTIES += \
ro.support_one_handed_mode?=true ro.support_one_handed_mode?=true
$(call inherit-product, vendor/lineage/config/telephony.mk) $(call inherit-product, vendor/lineage/config/telephony.mk)
# GMS
WITH_GMS ?= true
ifeq ($(WITH_GMS),true)
ifeq ($(TARGET_USES_MINI_GAPPS),true)
$(call inherit-product, vendor/gms/gms_mini.mk)
else ifeq ($(TARGET_USES_PICO_GAPPS),true)
$(call inherit-product, vendor/gms/gms_pico.mk)
else
$(call inherit-product, vendor/gms/gms_full.mk)
endif
endif

View File

@@ -5,3 +5,15 @@ $(call inherit-product, vendor/lineage/config/common_mobile_full.mk)
$(call inherit-product, vendor/lineage/config/tablet.mk) $(call inherit-product, vendor/lineage/config/tablet.mk)
$(call inherit-product, vendor/lineage/config/telephony.mk) $(call inherit-product, vendor/lineage/config/telephony.mk)
# GMS
WITH_GMS ?= true
ifeq ($(WITH_GMS),true)
ifeq ($(TARGET_USES_MINI_GAPPS),true)
$(call inherit-product, vendor/gms/gms_mini.mk)
else ifeq ($(TARGET_USES_PICO_GAPPS),true)
$(call inherit-product, vendor/gms/gms_pico.mk)
else
$(call inherit-product, vendor/gms/gms_full.mk)
endif
endif

View File

@@ -5,3 +5,9 @@ $(call inherit-product, vendor/lineage/config/common_mobile_full.mk)
$(call inherit-product, vendor/lineage/config/tablet.mk) $(call inherit-product, vendor/lineage/config/tablet.mk)
$(call inherit-product, vendor/lineage/config/wifionly.mk) $(call inherit-product, vendor/lineage/config/wifionly.mk)
# GMS
WITH_GMS ?= true
ifeq ($(WITH_GMS),true)
$(call inherit-product, vendor/gms/gms_full_tablet_wifionly.mk)
endif

View File

@@ -9,81 +9,35 @@ include vendor/lineage/config/aosp_audio.mk
include vendor/lineage/config/lineage_audio.mk include vendor/lineage/config/lineage_audio.mk
# Default notification/alarm sounds # Default notification/alarm sounds
ifeq ($(WITH_GMS),true)
PRODUCT_PRODUCT_PROPERTIES += \
ro.config.notification_sound=Kernel.ogg \
ro.config.alarm_alert=Fresh_morning.ogg
else
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.config.notification_sound=Argon.ogg \ ro.config.notification_sound=Argon.ogg \
ro.config.alarm_alert=Hassium.ogg ro.config.alarm_alert=Hassium.ogg
endif
# Apps # Apps
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
AvatarPicker \ AvatarPicker \
Backgrounds \
Glimpse \
LatinIME LatinIME
ifeq ($(PRODUCT_TYPE), go) ifeq ($(WITH_GMS),false)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
Launcher3QuickStepGo Backgrounds \
Glimpse
PRODUCT_DEXPREOPT_SPEED_APPS += \
Launcher3QuickStepGo
else
PRODUCT_PACKAGES += \
Launcher3QuickStep
PRODUCT_DEXPREOPT_SPEED_APPS += \
Launcher3QuickStep
endif endif
PRODUCT_PACKAGES += \
Launcher3Overlay
# Charger # Charger
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
charger_res_images product_charger_res_images \
product_charger_res_images_vendor
ifneq ($(WITH_LINEAGE_CHARGER),false)
PRODUCT_PACKAGES += \
lineage_charger_animation \
lineage_charger_animation_vendor
endif
# Customizations
PRODUCT_PACKAGES += \
IconPackCircularAndroidOverlay \
IconPackCircularLauncherOverlay \
IconPackCircularSettingsOverlay \
IconPackCircularSystemUIOverlay \
IconPackFilledAndroidOverlay \
IconPackFilledLauncherOverlay \
IconPackFilledSettingsOverlay \
IconPackFilledSystemUIOverlay \
IconPackKaiAndroidOverlay \
IconPackKaiLauncherOverlay \
IconPackKaiSettingsOverlay \
IconPackKaiSystemUIOverlay \
IconPackRoundedAndroidOverlay \
IconPackRoundedLauncherOverlay \
IconPackRoundedSettingsOverlay \
IconPackRoundedSystemUIOverlay \
IconPackSamAndroidOverlay \
IconPackSamLauncherOverlay \
IconPackSamSettingsOverlay \
IconPackSamSystemUIOverlay \
IconPackVictorAndroidOverlay \
IconPackVictorLauncherOverlay \
IconPackVictorSettingsOverlay \
IconPackVictorSystemUIOverlay \
IconShapePebbleOverlay \
IconShapeRoundedRectOverlay \
IconShapeSquareOverlay \
IconShapeSquircleOverlay \
IconShapeTaperedRectOverlay \
IconShapeTeardropOverlay \
IconShapeVesselOverlay
# Legal # Legal
PRODUCT_SYSTEM_PROPERTIES += \ PRODUCT_SYSTEM_PROPERTIES += \
ro.lineagelegal.url=https://lineageos.org/legal ro.evolutionlegal.url=https://evolution-x.org/legal.php
# Media # Media
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
@@ -106,8 +60,14 @@ PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
system/etc/textclassifier/textclassifier.en.model \ system/etc/textclassifier/textclassifier.en.model \
system/etc/textclassifier/textclassifier.universal.model system/etc/textclassifier/textclassifier.universal.model
# TFLite service.
PRODUCT_PACKAGES += libtensorflowlite_jni
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
system/lib/libtensorflowlite_jni.so \
system/lib64/libtensorflowlite_jni.so
# Themes # Themes
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
LineageBlackTheme \
ThemePicker \ ThemePicker \
ThemesStub ThemesStub

View File

@@ -3,40 +3,36 @@ $(call inherit-product, vendor/lineage/config/common_mobile.mk)
PRODUCT_SIZE := full PRODUCT_SIZE := full
# Include {Lato,Rubik} fonts
$(call inherit-product-if-exists, external/google-fonts/lato/fonts.mk)
$(call inherit-product-if-exists, external/google-fonts/rubik/fonts.mk)
# Apps # Apps
PRODUCT_PACKAGES += \
Profiles \
Seedvault
ifeq ($(WITH_GMS),false)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
Camelot \ Camelot \
Etar \ Etar \
Profiles \
Recorder \ Recorder \
Seedvault \
Twelve Twelve
endif
ifneq ($(PRODUCT_NO_CAMERA),true) ifneq ($(PRODUCT_NO_CAMERA),true)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
Aperture Aperture
endif endif
ifeq ($(WITH_GMS),false)
ifneq ($(TARGET_EXCLUDES_AUDIOFX),true) ifneq ($(TARGET_EXCLUDES_AUDIOFX),true)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
AudioFX AudioFX
endif endif
endif
# Extra cmdline tools # Extra cmdline tools
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
unrar \ unrar \
zstd zstd
# Fonts
PRODUCT_PACKAGES += \
fonts_customization.xml \
FontLatoOverlay \
FontRubikOverlay
# Include Lineage LatinIME dictionaries # Include Lineage LatinIME dictionaries
PRODUCT_PACKAGE_OVERLAYS += vendor/lineage/overlay/dictionaries PRODUCT_PACKAGE_OVERLAYS += vendor/lineage/overlay/dictionaries
PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/dictionaries PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/dictionaries

118
config/evolution.mk Normal file
View File

@@ -0,0 +1,118 @@
# PIF values
PRODUCT_PRODUCT_PROPERTIES += \
persist.sys.pihooks_MANUFACTURER?=Google \
persist.sys.pihooks_BRAND?=google \
persist.sys.pihooks_PRODUCT?=caiman_beta \
persist.sys.pihooks_DEVICE?=caiman \
persist.sys.pihooks_ID?=CP11.251114.006 \
persist.sys.pihooks_RELEASE?=16 \
persist.sys.pihooks_SECURITY_PATCH?=2025-12-05 \
persist.sys.pihooks_DEVICE_INITIAL_SDK_INT?=21 \
persist.sys.pihooks_SDK_INT?=32
PRODUCT_BUILD_PROP_OVERRIDES += \
BuildFingerprint=google/caiman_beta/caiman:16/CP11.251114.006/14560987:user/release-keys \
PihooksGmsFp="google/caiman_beta/caiman:16/CP11.251114.006/14560987:user/release-keys" \
PihooksGmsModel="Pixel 9"
# Evolution X packages
PRODUCT_PACKAGES += \
EvoEgg \
GameSpace \
OmniStyle
# OmniJaws \
PRODUCT_PACKAGES += \
Updater
ifeq ($(WITH_GMS),false)
PRODUCT_PACKAGES += \
UpdaterVanillaOverlay
endif
# BtHelper
PRODUCT_PACKAGES += \
BtHelper
# Face Unlock
ifeq ($(TARGET_SUPPORTS_64_BIT_APPS),true)
PRODUCT_PACKAGES += \
FaceUnlock
PRODUCT_SYSTEM_EXT_PROPERTIES += \
ro.face.sense_service=true
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.biometrics.face.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/permissions/android.hardware.biometrics.face.xml
endif
# DeviceAsWebcam
ifeq ($(TARGET_BUILD_DEVICE_AS_WEBCAM), true)
PRODUCT_PACKAGES += \
DeviceAsWebcam
PRODUCT_VENDOR_PROPERTIES += \
ro.usb.uvc.enabled=true
endif
# Cloned app exemption
PRODUCT_COPY_FILES += \
vendor/lineage/prebuilt/common/etc/sysconfig/preinstalled-packages-platform-evolution-product.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/preinstalled-packages-platform-evolution-product.xml
# ColumbusService
ifneq ($(TARGET_SUPPORTS_QUICK_TAP),false)
PRODUCT_PACKAGES += \
ColumbusService
endif
# Enable blur
TARGET_ENABLE_BLUR ?= true
ifeq ($(TARGET_ENABLE_BLUR),true)
PRODUCT_SYSTEM_PROPERTIES += \
ro.custom.blur.enable=true \
persist.sysui.disableBlur=false \
ro.surface_flinger.supports_background_blur=1
else
PRODUCT_SYSTEM_PROPERTIES += \
ro.custom.blur.enable=false \
persist.sysui.disableBlur=true \
ro.surface_flinger.supports_background_blur=0
endif
# Use a generic profile based boot image by default
PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := true
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION := frameworks/base/boot/boot-image-profile.txt
# Disable async MTE on a few processes
PRODUCT_SYSTEM_EXT_PROPERTIES += \
persist.arm64.memtag.app.com.android.se=off \
persist.arm64.memtag.app.com.google.android.bluetooth=off \
persist.arm64.memtag.app.com.android.nfc=off \
persist.arm64.memtag.process.system_server=off
# Private keys
ifeq ($(EVO_BUILD_TYPE),Official)
include vendor/evolution-priv/keys/keys.mk
else
-include vendor/evolution-priv/keys/keys.mk
endif
# PERF_ANIM_OVERRIDE
PRODUCT_PRODUCT_PROPERTIES += \
persist.sys.activity_anim_perf_override=$(PERF_ANIM_OVERRIDE)
ifeq ($(PERF_ANIM_OVERRIDE),true)
PRODUCT_PRODUCT_PROPERTIES += \
debug.sf.predict_hwc_composition_strategy=0
endif
# Other ROM feature flags
BYPASS_CHARGE_SUPPORTED ?= false
PERF_ANIM_OVERRIDE ?= false
TARGET_ENABLES_IMS_OVERRIDES ?= false
TORCH_STR_SUPPORTED ?= true
PRODUCT_SYSTEM_PROPERTIES += \
persist.sys.battery_bypass_supported=$(BYPASS_CHARGE_SUPPORTED) \
persist.sys.target_enables_ims_override=$(TARGET_ENABLES_IMS_OVERRIDES) \
persist.sys.torch_str_support=$(TORCH_STR_SUPPORTED)

View File

@@ -1,51 +0,0 @@
ifeq ($(WITH_GMS),true)
# Special handling for Android TV
ifeq ($(PRODUCT_IS_ATV),true)
ifneq (,$(wildcard vendor/partner_gms-tv))
ifneq ($(GMS_MAKEFILE),)
# Specify the GMS makefile you want to use, for example:
# - gms.mk - default Android TV GMS
# - gms_gtv.mk - default Google TV GMS
# - gms_minimal.mk - minimal Android TV GMS
$(call inherit-product, vendor/partner_gms-tv/products/$(GMS_MAKEFILE))
else
$(call inherit-product-if-exists, vendor/partner_gms-tv/products/gms.mk)
endif
$(call inherit-product-if-exists, vendor/partner_gms-tv/products/mainline_modules.mk)
endif
# Special handling for Android Automotive
else ifeq ($(PRODUCT_IS_AUTOMOTIVE),true)
ifneq (,$(wildcard vendor/partner_gms-car))
ifneq ($(GMS_MAKEFILE),)
$(call inherit-product, vendor/partner_gms-car/products/$(GMS_MAKEFILE))
else
$(call inherit-product-if-exists, vendor/partner_gms-car/products/gms.mk)
endif
endif
else
ifneq (,$(wildcard vendor/partner_gms))
# Specify the GMS makefile you want to use, for example:
# - fi.mk - Project Fi
# - gms.mk - default GMS
# - gms_go.mk - low ram devices
# - gms_go_2gb.mk - low ram devices (2GB)
# - gms_64bit_only.mk - devices supporting 64-bit only
# - gms_minimal.mk - minimal GMS
ifneq ($(GMS_MAKEFILE),)
$(call inherit-product, vendor/partner_gms/products/$(GMS_MAKEFILE))
else
$(call inherit-product-if-exists, vendor/partner_gms/products/gms.mk)
endif
endif
ifneq (,$(wildcard vendor/partner_modules))
# Specify the mainline module makefile you want to use, for example:
# - mainline_modules.mk - updatable apex
# - mainline_modules_flatten_apex.mk - flatten apex
# - mainline_modules_low_ram.mk - low ram devices
ifneq ($(MAINLINE_MODULES_MAKEFILE),)
$(call inherit-product, vendor/partner_modules/build/$(MAINLINE_MODULES_MAKEFILE))
endif
endif
endif
endif

View File

@@ -17,8 +17,13 @@ PRODUCT_PACKAGES += \
Stk Stk
# Default ringtone # Default ringtone
ifeq ($(WITH_GMS),true)
PRODUCT_PRODUCT_PROPERTIES += \
ro.config.ringtone=The_next_adventure.ogg
else
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.config.ringtone=Orion.ogg ro.config.ringtone=Orion.ogg
endif
# Tethering - allow without requiring a provisioning app # Tethering - allow without requiring a provisioning app
# (for devices that check this) # (for devices that check this)
@@ -28,3 +33,9 @@ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
# Disable mobile data by default # Disable mobile data by default
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.com.android.mobiledata=false ro.com.android.mobiledata=false
# BCR
TARGET_INCLUDE_BCR ?= true
ifeq ($(TARGET_INCLUDE_BCR),true)
$(call inherit-product, vendor/extras/bcr/bcr.mk)
endif

View File

@@ -1,45 +1,31 @@
PRODUCT_VERSION_MAJOR = 23 PRODUCT_VERSION_MAJOR = 16
PRODUCT_VERSION_MINOR = 0 PRODUCT_VERSION_MINOR = 0
ifeq ($(LINEAGE_VERSION_APPEND_TIME_OF_DAY),true) # Increase EVO Version with each major release.
LINEAGE_BUILD_DATE := $(shell date -u +%Y%m%d_%H%M%S) EVO_VERSION_BASE := 11.4.2
EVO_BUILD_TYPE ?= Unofficial
ifeq ($(EVO_BUILD_TYPE),Official)
else ifeq ($(EVO_BUILD_TYPE),Unofficial)
else else
LINEAGE_BUILD_DATE := $(shell date -u +%Y%m%d) $(error EVO_BUILD_TYPE must be Official or Unofficial. Current value: $(EVO_BUILD_TYPE))
endif endif
# Set LINEAGE_BUILDTYPE from the env RELEASE_TYPE, for jenkins compat ifeq ($(WITH_GMS),true)
EVO_VERSION := $(EVO_VERSION_BASE)
ifndef LINEAGE_BUILDTYPE else
ifdef RELEASE_TYPE EVO_VERSION := $(EVO_VERSION_BASE)-Vanilla
# Starting with "LINEAGE_" is optional
RELEASE_TYPE := $(shell echo $(RELEASE_TYPE) | sed -e 's|^LINEAGE_||g')
LINEAGE_BUILDTYPE := $(RELEASE_TYPE)
endif
endif endif
# Filter out random types, so it'll reset to UNOFFICIAL
ifeq ($(filter RELEASE NIGHTLY SNAPSHOT EXPERIMENTAL,$(LINEAGE_BUILDTYPE)),)
LINEAGE_BUILDTYPE := UNOFFICIAL
LINEAGE_EXTRAVERSION :=
endif
ifeq ($(LINEAGE_BUILDTYPE), UNOFFICIAL)
ifneq ($(TARGET_UNOFFICIAL_BUILD_ID),)
LINEAGE_EXTRAVERSION := -$(TARGET_UNOFFICIAL_BUILD_ID)
endif
endif
LINEAGE_VERSION_SUFFIX := $(LINEAGE_BUILD_DATE)-$(LINEAGE_BUILDTYPE)$(LINEAGE_EXTRAVERSION)-$(LINEAGE_BUILD)
# Internal version # Internal version
LINEAGE_VERSION := $(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR)-$(LINEAGE_VERSION_SUFFIX) LINEAGE_VERSION := EvolutionX-$(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR)-$(shell date +%Y%m%d)-$(LINEAGE_BUILD)-$(EVO_VERSION)-$(EVO_BUILD_TYPE)
# Display version # Display version
LINEAGE_DISPLAY_VERSION := $(PRODUCT_VERSION_MAJOR)-$(LINEAGE_VERSION_SUFFIX) LINEAGE_DISPLAY_VERSION := v$(EVO_VERSION)-$(shell date +%Y%m%d)
# LineageOS version properties # Evolution X version properties
PRODUCT_SYSTEM_PROPERTIES += \ PRODUCT_SYSTEM_PROPERTIES += \
ro.lineage.version=$(LINEAGE_VERSION) \ ro.evolution.build.version=$(LINEAGE_VERSION) \
ro.lineage.display.version=$(LINEAGE_DISPLAY_VERSION) \ ro.evolution.display.version=$(LINEAGE_DISPLAY_VERSION) \
ro.lineage.build.version=$(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR) \ ro.evolution.version=$(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR) \
ro.lineage.releasetype=$(LINEAGE_BUILDTYPE) ro.modversion=$(EVO_VERSION)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 400 KiB

View File

@@ -1,26 +0,0 @@
<!--
Copyright (C) 2017 The LineageOS Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="#FFFFFFFF"
android:pathData="M12,6 C15.3,6,18,8.7,18,12 S15.3,18,12,18 S6,15.3,6,12 S8.7,6,12,6 M12,4
C7.6,4,4,7.6,4,12 S7.6,20,12,20 S20,16.4,20,12 S16.4,4,12,4 Z M12,9
C10.3,9,9,10.3,9,12 S10.3,15,12,15 S15,13.7,15,12 S13.7,9,12,9 Z" />
</vector>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 801 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 801 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 626 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 801 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 MiB

View File

@@ -42,6 +42,7 @@
<item>org.microg.nlp</item> <item>org.microg.nlp</item>
</string-array> </string-array>
<!-- Sets the package name for location extra packages -->
<string-array name="config_locationExtraPackageNames" translatable="false"> <string-array name="config_locationExtraPackageNames" translatable="false">
<!-- Bluetooth --> <!-- Bluetooth -->
<item>com.android.bluetooth</item> <item>com.android.bluetooth</item>
@@ -53,6 +54,23 @@
<item>com.shannon.imsservice</item> <item>com.shannon.imsservice</item>
<!-- MediaTek ImsService --> <!-- MediaTek ImsService -->
<item>com.mediatek.ims</item> <item>com.mediatek.ims</item>
<!-- OmniJaws -->
<item>org.omnirom.omnijaws</item>
<!-- SystemUI -->
<item>com.android.systemui</item>
<!-- Tethering -->
<item>com.android.networkstack.tethering</item>
<!-- GMS location history -->
<item>com.google.android.gms.location.history</item>
</string-array>
<!-- List of system components which are allowed to receive ServiceState entries in an
un-sanitized form, even if the location toggle is off. This is intended ONLY for system
components, such as the telephony stack, which require access to the full ServiceState for
tasks such as network registration. -->
<string-array name="config_serviceStateLocationAllowedPackages">
<item>com.shannon.imsservice</item>
<item>com.android.phone</item>
</string-array> </string-array>
<!-- Set this to true to enable the platform's auto-power-save modes like doze and <!-- Set this to true to enable the platform's auto-power-save modes like doze and
@@ -88,6 +106,27 @@
<!-- Whether or not we should show the option to show battery percentage --> <!-- Whether or not we should show the option to show battery percentage -->
<bool name="config_battery_percentage_setting_available">false</bool> <bool name="config_battery_percentage_setting_available">false</bool>
<!-- Flag indicating whether we should enable the adaptive sleep.-->
<bool name="config_adaptive_sleep_available">true</bool>
<!-- The component name for the default system attention service.
This service must be trusted, as it can be activated without explicit consent of the user.
See android.attention.AttentionManagerService.
-->
<string name="config_defaultAttentionService" translatable="false">com.google.android.as/com.google.android.apps.miphone.aiai.attention.service.AiAiAttentionService</string>
<!-- Live Captions -->
<string name="config_defaultSystemCaptionsManagerService">com.google.android.as/com.google.android.apps.miphone.aiai.captions.SystemCaptionsManagerService</string>
<!-- Recents text and image selection for Pixel Launcher (not supported by Launcher3) -->
<string name="config_defaultContentSuggestionsService" translatable="false">com.google.android.as/com.google.android.apps.miphone.aiai.app.AiAiContentSuggestionsService</string>
<!-- Launcher app suggestions -->
<string name="config_defaultAppPredictionService" translatable="false">com.google.android.as/com.google.android.apps.miphone.aiai.app.AiAiPredictionService</string>
<!-- Make AiAi the default role holder for System Intelligence -->
<string name="config_systemAmbientAudioIntelligence">com.google.android.as</string>
<string name="config_systemAudioIntelligence">com.google.android.as</string>
<string name="config_systemNotificationIntelligence">com.google.android.as</string>
<string name="config_systemTextIntelligence">com.google.android.as</string>
<string name="config_systemUiIntelligence">com.google.android.as</string>
<string name="config_systemVisualIntelligence">com.google.android.as</string>
<!-- List of packages that can use the Conversation space for their category messages <!-- List of packages that can use the Conversation space for their category messages
notifications until they target R --> notifications until they target R -->
<string-array name="config_notificationMsgPkgsAllowedAsConvos" translatable="false"> <string-array name="config_notificationMsgPkgsAllowedAsConvos" translatable="false">
@@ -113,9 +152,249 @@
<item>org.briarproject.briar.android</item> <item>org.briarproject.briar.android</item>
</string-array> </string-array>
<!-- Define device configs on boot -->
<string-array name="global_device_configs_override">
<!-- Disable always screen on -->
<item>attention_manager_service/keep_screen_on_enabled=false</item>
<!-- Enable app cloning -->
<item>app_cloning/cloned_apps_enabled=true</item>
<item>app_cloning/delete_all_app_clones_enabled=true</item>
<item>app_cloning/enable_app_cloning_building_blocks=true</item>
<!-- Enable new location indicators -->
<item>privacy/location_access_check_enabled=true</item>
<item>privacy/location_accuracy_enabled=true</item>
<item>privacy/location_indicator_settings_enabled=true</item>
<item>privacy/location_indicators_small_enabled=true</item>
<item>privacy/privacy_dashboard_7_day_toggle=true</item>
<!-- Enable shared connectivity -->
<item>wifi/shared_connectivity_enabled=true</item>
<!-- Don't pin camera app to save memory -->
<item>runtime_native_boot/pin_camera=false</item>
<!-- Globally enable the new photo picker -->
<item>storage_native_boot/take_over_get_content=true</item>
<!--
Device Personalization Services (AiAi)
-->
<!-- Adaptive Sound (Pixel 2020) -->
<item>device_personalization_services/AdaptiveAudio__enable_adaptive_audio=true</item>
<item>device_personalization_services/AdaptiveAudio__show_promo_notification=false</item>
<item>device_personalization_services/AdaptiveAudio__use_silence_detector_state_bug_fix=true</item>
<!-- Smartspace -->
<item>device_personalization_services/EchoSmartspace__enable_encode_subcard_into_smartspace_target_id=true</item>
<item>device_personalization_services/EchoSmartspace__enable_weather_data_extras=true</item>
<item>device_personalization_services/EchoSmartspace__ring_lockscreen_delay_seconds=0</item>
<item>device_personalization_services/EchoSmartspace__ring_on_aod_only=true</item>
<item>device_personalization_services/EchoSmartspace__show_background_switch=true</item>
<item>device_personalization_services/Echo__smartspace_enable_doorbell=true</item>
<item>device_personalization_services/Echo__smartspace_enable_earthquake_alert_predictor=true</item>
<item>device_personalization_services/Echo__smartspace_enable_echo_settings=true</item>
<item>device_personalization_services/Echo__smartspace_enable_echo_unified_settings=true</item>
<item>device_personalization_services/Echo__smartspace_enable_eta_lyft=true</item>
<item>device_personalization_services/Echo__smartspace_enable_light_off_predictor=true</item>
<item>device_personalization_services/Echo__smartspace_enable_light_predictor=false</item>
<item>device_personalization_services/Echo__smartspace_enable_outlook_events=false</item>
<item>device_personalization_services/Echo__smartspace_enable_package_delivery=true</item>
<item>device_personalization_services/Echo__smartspace_enable_paired_device_predictor=true</item>
<item>device_personalization_services/Echo__smartspace_enable_ridesharing_eta=true</item>
<item>device_personalization_services/Echo__smartspace_enable_safety_check_predictor=true</item>
<item>device_personalization_services/Echo__smartspace_enable_score_ranker=WEIGHTED</item>
<item>device_personalization_services/Echo__smartspace_enable_subcard_logging=true</item>
<item>device_personalization_services/Echo__smartspace_outlook_event_source_of_truth=TEXT_ONLY</item>
<item>device_personalization_services/Echo__smartspace_package_delivery_card_delay_seconds=0</item>
<!-- Notification Assistant (DPS) -->
<item>notification_assistant/generate_actions=true</item>
<item>notification_assistant/generate_replies=true</item>
<item>device_personalization_services/Notification__enable_otp_check_for_default_sms_package=true</item>
<item>device_personalization_services/Notification__enable_otp_in_smart_suggestion=true</item>
<!-- Now Playing -->
<item>device_personalization_services/NowPlaying__enable_now_playing_lock_screen_update=true</item>
<item>device_personalization_services/NowPlaying__enable_now_playing_quick_affordance=true</item>
<item>device_personalization_services/NowPlaying__enable_now_playing_quick_settings=true</item>
<!-- Screen attention (Pixel 2019) -->
<item>device_personalization_services/Attention__accel_sensor_enabled=false</item>
<item>device_personalization_services/Attention__accel_sensor_threshold_mss=0.2</item>
<item>device_personalization_services/Attention__enabled=true</item>
<item>device_personalization_services/Attention__margin_horizontal_px=1000</item>
<item>device_personalization_services/Attention__margin_vertical_px=1000</item>
<item>device_personalization_services/Attention__proximity_sensor_enabled=false</item>
<!-- Translation -->
<item>device_personalization_services/Translate__app_blocklist=com.google.android.talk</item>
<item>device_personalization_services/Translate__blue_chip_translate_enabled=true</item>
<item>device_personalization_services/Translate__characterset_lang_detection_enabled=true</item>
<item>device_personalization_services/Translate__chat_translate_languages=de,en,es,fr,it,ja,hi,zh,ru,pl,pt,ko,th,tr,nl,zh_Hant,sv,da,vi,ar,fa,no,bn,fil</item>
<item>device_personalization_services/Translate__copy_to_translate_enabled=true</item>
<item>device_personalization_services/Translate__differentiate_simplified_and_traditional_chinese=true</item>
<item>device_personalization_services/Translate__disable_translate_without_system_animation=false</item>
<item>device_personalization_services/Translate__enable_chronicle_migration=true</item>
<item>device_personalization_services/Translate__enable_default_langid_model=true</item>
<item>device_personalization_services/Translate__enable_dictionary_langid_detection=true</item>
<item>device_personalization_services/Translate__enable_opmv4_service=true</item>
<item>device_personalization_services/Translate__enable_settings_backup_restore=true</item>
<item>device_personalization_services/Translate__enable_setup_wizard_dialog_v2=true</item>
<item>device_personalization_services/Translate__enable_translate_kit_api_migration=false</item>
<item>device_personalization_services/Translate__interpreter_source_languages=de,en,ja,es,fr,it</item>
<item>device_personalization_services/Translate__interpreter_target_languages=de,en,ja,es,fr,it</item>
<item>device_personalization_services/Translate__replace_auto_translate_copied_text_enabled=true</item>
<item>device_personalization_services/Translate__text_to_text_language_list=vi,ja,fa,ro,nl,mr,mt,ar,ms,it,eo,is,et,es,iw,zh,uk,af,id,ur,mk,cy,hi,el,be,pt,lt,hr,lv,hu,ht,te,de,bg,th,bn,tl,pl,tr,kn,sv,gl,ko,sw,cs,da,ta,gu,ka,sl,ca,sk>device_personalization_services/Translate__translation_service_enabled=true</item>
<item>device_personalization_services/Translate__translator_expiration_enabled=true</item>
<item>device_personalization_services/Translate__use_translate_kit_streaming_api=true</item>
<!-- Speech Recognition -->
<item>device_personalization_services/TextClassifierParams__enable_dynamic_kg_collections=true</item>
<item>device_personalization_services/TextClassifierParams__enable_location_scorer=true</item>
<item>device_personalization_services/TextClassifierParams__enable_superpacks_custom_bin_processing=true</item>
<item>device_personalization_services/TextClassifierParams__enable_superpacks_multi_bulks_request=true</item>
<item>device_personalization_services/TextClassifierParams__max_allowable_bins_requests=0</item>
<item>device_personalization_services/TextClassifierParams__max_allowable_local_slice_size=0</item>
<item>device_personalization_services/TextClassifierParams__max_allowable_new_slices_size=95</item>
<item>device_personalization_services/TextClassifierParams__use_vocab_annotator=true</item>
<item>device_personalization_services/TextClassifierTcLib__enable_superpacks_kg_actions_ranking=true</item>
<item>device_personalization_services/TextClassifierTcLib__enable_tc_easter_egg=false</item>
<item>device_personalization_services/TextClassifierTcLib__enable_tc_easter_egg_logging=false</item>
<item>device_personalization_services/TextClassifierTcLib__enable_tclib_download_using_superpacks=true</item>
<item>device_personalization_services/TextClassifierTcLib__kg_actions_ranking_superpacks_manifest_version=211005</item>
<item>device_personalization_services/TextClassifierTcLib__kg_actions_ranking_superpacks_url_template=[https://gstatic.com/matchmaker/kg_actions_ranking_table/](https://gstatic.com/matchmaker/kg_actions_ranking_table/)%{VERSION}/superpacks_manifest.zip</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_action_name=</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_activity_name=</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_package_name=</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_templates=</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_url=</item>
<item>device_personalization_services/TextClassifierTcLib__tc_easter_egg_url_param=</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_actions_superpacks_manifest_url_template=[https://www.gstatic.com/matchmaker/tclib_models/actions/v](https://www.gstatic.com/matchmaker/tclib_models/actions/v)%{VERSION}/%{LOCALE}/superpacks_manifest.zip</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_actions_superpacks_manifest_version=104</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_annotator_superpacks_manifest_url_template=[https://www.gstatic.com/matchmaker/tclib_models/annotator/v](https://www.gstatic.com/matchmaker/tclib_models/annotator/v)%{VERSION}/%{LOCALE}/superpacks_manifest.zip</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_annotator_superpacks_manifest_version=903</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_langid_superpacks_manifest_url_template=[https://www.gstatic.com/matchmaker/tclib_models/langid/v](https://www.gstatic.com/matchmaker/tclib_models/langid/v)%{VERSION}/superpacks_manifest.zip</item>
<item>device_personalization_services/TextClassifierTcLib__tclib_langid_superpacks_manifest_version=1</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__enable_tclib=true</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__knowledge_graph_collections_table_superpacks_manifest_version=21102003</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__template_table_superpacks_manifest_url_template=[https://gstatic.com/matchmaker/template_table/21072101/](https://gstatic.com/matchmaker/template_table/21072101/)%{TEMPLATE_TABLE_FORMAT_NUMBER}/%{LOCALE}/superpacks_manifest.></item>
<item>device_personalization_services/TextClassifierWebrefDeploy__template_table_superpacks_manifest_version_v2=21072101</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__webref_superpacks_manifest_url_template=[https://gstatic.com/webref-ondevice/aiai/23072901_pir/](https://gstatic.com/webref-ondevice/aiai/23072901_pir/)%{FORMAT_NUMBER}/%{LOCALE}/superpacks_manifest.zip</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__webref_superpacks_manifest_version_v3=23072901</item>
<item>device_personalization_services/TextClassifierWebrefDeploy__webref_supported_locales=en,de,es,fr,it,ja,nl,no,pt,sv,nb</item>
<item>device_personalization_services/TextClassifierWebrefUrl__webref_url_template=[https://gstatic.com/webref-ondevice/aiai/](https://gstatic.com/webref-ondevice/aiai/)%{VERSION}_pir/%{FORMAT_NUMBER}/% {LOCALE}/superpacks_manifest.zip</item>
<!-- Gboard voice typing -->
<item>device_personalization_services/SmartDictation__cache_max_size=200</item>
<item>device_personalization_services/SmartDictation__caching_strategy=3</item>
<item>device_personalization_services/SmartDictation__enable_alternatives_from_past_corrections=true</item>
<item>device_personalization_services/SmartDictation__enable_alternatives_from_speech_hypotheses=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_commands=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_contact_fields=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_contacts=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_contacts_learned_from_past_corrections=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_interests_model=false</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_past_corrections=true</item>
<item>device_personalization_services/SmartDictation__enable_biasing_for_screen_context=true</item>
<item>device_personalization_services/SmartDictation__enable_personalized_biasing_on_locked_device=false</item>
<item>device_personalization_services/SmartDictation__enable_selection_filtering=true</item>
<item>device_personalization_services/SmartDictation__enable_stronger_boost_for_generic_phrases_biasing=true</item>
<item>device_personalization_services/SmartDictation__exclude_contacts_from_generic_biasing=false</item>
<item>device_personalization_services/SmartRecOverviewChips__enable_assistant_geller_data_index=false</item>
<item>device_personalization_services/SmartRecOverviewChips__nasa_superpacks_manifest_url=[https://www.gstatic.com/nasa/apps/non_en_pack_02072023/23020800/2/en-us/superpacks_manifest.zip](https://www.gstatic.com/nasa/apps/non_en_pack_02072023/23020800/2/en-us/superpacks_manifest.zip)</item>
<item>device_personalization_services/SmartRecOverviewChips__nasa_superpacks_manifest_ver=2023020700</item>
<item>device_personalization_services/SmartRecPixelSearch__disable_ee_sys_pointers=false</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_aiai_tc_generator=false</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_assistant_geller_data_index=false</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_feedback_ranking=true</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_gboard_suggestion=false</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_search_system_pointer_generator=true</item>
<item>device_personalization_services/SmartRecPixelSearch__enable_spelling_correction=true</item>
<item>device_personalization_services/SmartRecPixelSearch__promote_sys_pointer_in_psb=false</item>
<item>device_personalization_services/SmartRecPixelSearch__spelling_checker_frequency_score_overrides_map={"8":-7}</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_example_cache_on_suggest_selection=true</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_example_collection=true</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_example_store_connector=true</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_locked_bootloader_check=true</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_paste_package_signal=true</item>
<item>device_personalization_services/SmartSelect__enable_smart_select_training_manager_populations=false</item>
<item>device_personalization_services/SmartSelect__smart_select_example_ttl_ms=1209600000</item>
<!-- Pixel Launcher -->
<item>launcher/ANIMATE_LPNH=true</item>
<item>launcher/CUSTOM_LPNH_THRESHOLDS=true</item>
<item>launcher/ENABLE_LOCAL_RECOMMENDED_WIDGETS_FILTER=false</item>
<item>launcher/ENABLE_LPNH_TWO_STAGES=true</item>
<item>launcher/ENABLE_SEARCH_HAPTIC_HINT=true</item>
<item>launcher/ENABLE_WIDGETS_PICKER_AIAI_SEARCH=true</item>
<item>launcher/LPNH_HAPTIC_HINT_DELAY=0</item>
<item>launcher/LPNH_HAPTIC_HINT_ITERATIONS=50</item>
<item>launcher/LPNH_TIMEOUT_MS=450</item>
<item>launcher/SHRINK_NAV_HANDLE_ON_PRESS=true</item>
<item>launcher/TWO_STAGE_DURATION_PERCENTAGE=200</item>
<item>launcher/TWO_STAGE_SLOP_PERCENTAGE=66</item>
<item>launcher/android.provider.launcher_data_access=true</item>
<!-- Pixel Launcher (Recents) -->
<item>device_personalization_services/Overview__enable_barcode_detection=true</item>
<item>device_personalization_services/Overview__enable_image_search=true</item>
<item>device_personalization_services/Overview__enable_japanese_ocr=true</item>
<item>device_personalization_services/Overview__enable_lens_r_overview_long_press=true</item>
<item>device_personalization_services/Overview__enable_lens_r_overview_select_mode=true</item>
<item>device_personalization_services/Overview__enable_lens_r_overview_translate_action=true</item>
<!-- Disable federated learning -->
<item>device_personalization_services/OverviewFederatedAnalytics__enable_fa=false</item>
<item>device_personalization_services/OverviewFederatedAnalytics__enable_min_training_interval=false</item>
<item>device_personalization_services/OverviewFederatedAnalytics__enable_non_synthetic_logs=false</item>
<!-- Disable unused AiAi features -->
<item>device_personalization_services/Fedex__enable_fedex=false</item>
<item>device_personalization_services/Logging__enable_aiai_clearcut_logging=false</item>
<item>device_personalization_services/VisualCortex__enable=false</item>
<!-- System Ui -->
<item>systemui/clipboard_overlay_show_actions=true</item>
<item>systemui/quick_access_wallet_enabled=true</item>
<item>systemui/volume_separate_notification=true</item>
<!-- Media Provider -->
<item>mediaprovider/allowed_cloud_providers=com.google.android.apps.photos.cloudpicker</item>
<item>mediaprovider/cloud_media_feature_enabled=true</item>
<!-- Wallpaper Effects -->
<item>device_personalization_services/WallpaperEffects__cinematic_models_mdd_manifest_config=Ct4IEtsICiF3YWxscGFwZXJlZmZlY3RzLWNpbmVtYXRpYy1tb2RlbHMSwgESdWh0dHBzOi8vZGwuZ29vZ2xlLmNvbS9tZGktc2VydmluZy9haWFpLXdhbGxwYXBlcmVmZmVjdHMtY2luZW1hdGljLW1vZGVscy83NDYvNTk2NDgzNDA1MzljOGU2OWRmZGZlYjkzNTk0OTIzYWJmZDBmMGQwNyCM4JQFKig1OTY0ODM0MDUzOWM4ZTY5ZGZkZmViOTM1OTQ5MjNhYmZkMGYwZDA3OhJkZXB0aF9tb2RlbC50ZmxpdGV4AKIBAKoBABLIARJ1aHR0cHM6Ly9kbC5nb29nbGUuY29tL21kaS1zZXJ2aW5nL2FpYWktd2FsbHBhcGVyZWZmZWN0cy1jaW5lbWF0aWMtbW9kZWxzLzc0Ni84NmE3MWYwYTIwYjFhMjhiNTY4MTMwZTliYTZjMTYzZTdhZjQzMTg5IKzsyQQqKDg2YTcxZjBhMjBiMWEyOGI1NjgxMzBlOWJhNmMxNjNlN2FmNDMxODk6GHBlcnNvbl9wb3NlX21vZGVsLnRmbGl0ZXgAogEAqgEAEs0BEnVodHRwczovL2RsLmdvb2dsZS5jb20vbWRpLXNlcnZpbmcvYWlhaS13YWxscGFwZXJlZmZlY3RzLWNpbmVtYXRpYy1tb2RlbHMvNzQ2L2I2NTQxNDFiOTUwNjY3OTVlYjBlNjNlZDRkNzFiZjQxZDQyYjFhNmMgyPPNAiooYjY1NDE0MWI5NTA2Njc5NWViMGU2M2VkNGQ3MWJmNDFkNDJiMWE2YzodcGVyc29uX3NlZ21lbnRlcl9tb2RlbC50ZmxpdGV4AKIBAKoBABLLARJ1aHR0cHM6Ly9kbC5nb29nbGUuY29tL21kaS1zZXJ2aW5nL2FpYWktd2FsbHBhcGVyZWZmZWN0cy1jaW5lbWF0aWMtbW9kZWxzLzc0Ni9lOTllZWJlMDQ2NDk4ZmU2N2MzMzdjZmZkMzkzODM4NTVkMjE0NjM5INCXrwIqKGU5OWVlYmUwNDY0OThmZTY3YzMzN2NmZmQzOTM4Mzg1NWQyMTQ2Mzk6G3JnYmRfaW5wYWludGVyX21vZGVsLnRmbGl0ZXgAogEAqgEAEsQBEnVodHRwczovL2RsLmdvb2dsZS5jb20vbWRpLXNlcnZpbmcvYWlhaS13YWxscGFwZXJlZmZlY3RzLWNpbmVtYXRpYy1tb2RlbHMvNzQ2L2ExNjQ4ZjQ2NDYyZDVmMTExOTVjNmEyYTBhN2M0MTMyZTEwNzJjMDIgsLo6KihhMTY0OGY0NjQ2MmQ1ZjExMTk1YzZhMmEwYTdjNDEzMmUxMDcyYzAyOhVzYWxpZW5jeV9tb2RlbC50ZmxpdGV4AKIBAKoBABgAUABYAGoECAEQAHAAogEAqAEAuAHqBdIBB2RlZmF1bHTaAQDiARsKBwgBEJ+xjRcKBwgCEKCxjRcKBwgDEKGxjRc</item>
<item>device_personalization_services/WallpaperEffects__enable_allow_fg_download_on_cellular=true</item>
<item>device_personalization_services/WallpaperEffects__enable_cinematic_effect=true</item>
<item>device_personalization_services/WallpaperEffects__enable_cinematic_mdd=true</item>
<item>device_personalization_services/WallpaperEffects__enable_foreground_model_download=true</item>
<item>device_personalization_services/WallpaperEffects__enable_person_segment_tpu=true</item>
<item>device_personalization_services/WallpaperEffects__return_texturedmesh_with_error_status=true</item>
<item>device_personalization_services/WallpaperEffects__use_gpu=true</item>
<item>device_personalization_services/WallpaperEffects__use_tpu=false</item>
<!-- Settings -->
<item>settings_ui/bt_advanced_header_enabled=true</item>
<item>settings_ui/bt_le_audio_contact_sharing_enabled=true</item>
<item>settings_ui/bt_near_by_suggestion_enabled=true</item>
<item>settings_ui/bt_slice_settings_enabled=true</item>
<!-- Window Manager splash screen exemption -->
<item>window_manager/splash_screen_exception_list=com.facebook.lite,com.facebook.mlite,com.instagram.android,tv.twitch.android.app,tv.twitch.android.viewer,org.iggymedia.periodtracker,com.ohmgames.cheatandrun,com.skgames.trafficracer,com.skgames.trafficrider,com.skgames.wingsonfiregame,com.microblink.photomath,com.cam001.selfie,com.soundcloud.android,com.skype.raider,com.phonepe.app,jp.naver.line.android,com.facebook.stella,in.startv.hotstar,in.startv.hotstar.dplus,ru.yandex.yandexnavi,com.google.android.apps.nbu.paisa.user,net.one97.paytm,com.viber.voip,com.king.candycrushsaga,com.roblox.client,com.picsart.studio,com.jio.myjio,in.mohalla.sharechat,com.imo.android.imoim,com.discord,com.meesho.supply,com.kiloo.subwaysurf,com.booking,com.jio.media.jiobeats,com.nexstreaming.app.kinemasterfree,com.nhn.android.navercafe,br.com.gabba.Caixa,com.nu.production,com.funnypuri.client,com.gaana,com.graymatrix.did,com.canva.editor,com.mercadopago.wallet,com.overdrive.mobile.android.libby,com.duolingo,com.taxis99,br.com.bb.android,id.dana,com.wix.android,com.bigwinepot.nwdn.international,com.lazygeniouz.saveit,com.instagram.lite,com.picpay,com.tv.v18.viola,com.bradesco,org.iggymedia.periodtracker,com.didiglobal.passenger,com.iqiyi.i18n,com.naver.linewebtoon,com.sonyliv,ru.dublgis.dgismobile,com.itau,tr.gov.turkiye.edevlet.kapisi,com.mcdonalds.mobileapp,com.pandora.android,com.ixigo.train.ixitrain,com.realme.link,com.videoeditorpro.android,br.gov.caixa.fgts.trabalhador,com.bancomer.mbanking,br.gov.serpro.cnhe,de.zalando.mobile,com.agoda.mobile.consumer,photoeditor.layout.collagemaker,com.heytap.quickgame,photo.editor.photoeditor.photoeditorpro,video.reface.app,sortpuz.water.sort.puzzle.game,in.cricketexchange.app.cricketexchange,me.zepeto.main,com.axis.mobile,br.com.santander.way,com.novapontocom.casasbahia,pdf.tap.scanner,com.mic.bluezone,instagram.photo.video.downloader.repost.insta,com.bankofbaroda.mconnect,media.music.musicplayer,org.jw.jwlibrary.mobile,com.superbinogo.jungleboyadventure,br.com.intermedium,com.indiaBulls,com.traveloka.android,com.portonics.mygp,com.unicostudio.braintest,com.unicostudio.braintest2new,com.pedidosya,com.naver.vapp,com.microsoft.xboxone.smartglass,com.mind.quiz.brain.out,th.co.truemoney.wallet,com.itaucard.activity,com.ubercab.driver,in.gov.umang.negd.g2c,com.Dominos,omegle.tv,com.chase.sig.android,com.rockstargames.gtasa,com.snowcorp.vita,com.forshared.files,com.bpjstku,com.taxsee.taxsee,com.wallapop,puzzle.blockpuzzle.cube.relax,com.dd.doordash,com.nvt.cs,com.garanti.cepsubesi,com.inditex.zara,net.telewebion,com.fogg.photovideomaker,naukriApp.appModules.login,com.nttdocomo.android.dmenu2,com.emeint.android.myservices,com.fundevs.app.mediaconverter,com.mobikwik_new.bajajfinserv,com.scores365,com.themausoft.wpsapp,com.mcdo.mcdonalds,com.ge.capital.konysbiapp,com.glovo,com.picmax.wemoji,com.oyo.consumer,com.funcamerastudio.videomaker,com.comuto,my.com.tngdigital.ewallet,com.instagram.layout,com.ykb.android,br.com.mobicare.minhaoi,com.citibanamex.banamexmobile,com.nhn.android.webtoon,com.evernote,com.lyxoto.master.forminecraftpe,com.tripadvisor.tripadvisor,jp.co.mcdonalds.android,com.lguplus.mobile.cs,app.trell,com.infraware.office.link,com.iqoption,com.jazz.jazzworld,com.lomotif.android,glitchvideoeditor.videoeffects.glitchvideoeffect,videoplayer.videodownloader.hdvideoplayer,com.tmobile.pr.mytmobile,com.swifthawk.picku.free</item>
<!-- Autofill compatibility apps -->
<item>autofill/compat_mode_allowed_packages=com.android.chrome[url_bar]:com.brave.browser[url_bar]:com.brave.browser_beta[url_bar]:com.brave.browser_nightly[url_bar]:com.chrome.beta[url_bar]:com.chrome.dev[url_bar]:com.chrome.canary[url_bar]:com.microsoft.emmx[url_bar]:com.microsoft.emmx.beta[url_bar]:com.microsoft.emmx.canary[url_bar]:com.microsoft.emmx.dev[url_bar]:com.opera.browser[url_field]:com.opera.browser.beta[url_bar]:com.opera.mini.native[url_bar]:com.opera.mini.native.beta[url_bar]:com.sec.android.app.sbrowser[location_bar_edit_text]:com.sec.android.app.sbrowser.beta[location_bar_edit_text]:org.mozilla.fennec_aurora[url_bar]:org.mozilla.firefox[url_bar]:org.mozilla.firefox_beta[url_bar]:org.chromium.chrome[url_bar]</item>
</string-array>
<!-- Flag indicating which package name can access DeviceConfig table --> <!-- Flag indicating which package name can access DeviceConfig table -->
<string name="config_deviceConfiguratorPackageName" translatable="false">org.protonaosp.deviceconfig</string> <string name="config_deviceConfiguratorPackageName" translatable="false">org.protonaosp.deviceconfig</string>
<!-- Indicating if keyboard vibration settings supported or not. -->
<bool name="config_keyboardVibrationSettingsSupported">true</bool>
<!-- Wallpaper cropper package. Used as the default cropper if the active launcher doesn't <!-- Wallpaper cropper package. Used as the default cropper if the active launcher doesn't
handle wallpaper cropping. handle wallpaper cropping.
--> -->
@@ -170,5 +449,84 @@
<string name="config_rawContactsLocalAccountType" translatable="false">com.android.contacts</string> <string name="config_rawContactsLocalAccountType" translatable="false">com.android.contacts</string>
<!-- Name of the font family to use in the default lockscreen clock --> <!-- Name of the font family to use in the default lockscreen clock -->
<string name="config_clockFontFamily" translatable="false" /> <string name="config_clockFontFamily" translatable="false">google-sans-flex-clock</string>
<!-- Name of a font family to use for body text. -->
<string name="config_bodyFontFamily" translatable="false">google-sans-text</string>
<!-- Name of a font family to use for medium body text. -->
<string name="config_bodyFontFamilyMedium" translatable="false">google-sans-text-medium</string>
<!-- Name of a font family to use as light font. For theming purpose. -->
<string name="config_lightFontFamily" translatable="false">google-sans-text</string>
<!-- Name of a font family to use as regular font. For theming purpose. -->
<string name="config_regularFontFamily" translatable="false">google-sans</string>
<!-- Name of a font family to use for headlines. If empty, falls back to platform default -->
<string name="config_headlineFontFamily">google-sans</string>
<string name="config_headlineFontFamilyMedium">google-sans-medium</string>
<string name="config_headlineFontFeatureSettings">ss03</string>
<!-- List of system apps that are allowed to be locked with app lock.
Use with extreme caution. -->
<string-array name="config_appLockAllowedSystemApps" translatable="false">
<!-- Calculator -->
<item>com.google.android.calculator</item>
<!-- Calendar -->
<item>com.google.android.calendar</item>
<!-- Camera -->
<item>com.google.android.GoogleCamera</item>
<!-- OnePlus Camera -->
<item>com.oneplus.camera</item>
<!-- Xiaomi Camera -->
<item>com.android.camera</item>
<!-- Camera Go -->
<item>com.google.android.apps.cameralite</item>
<!-- Chrome -->
<item>com.android.chrome</item>
<!-- Clock -->
<item>com.google.android.deskclock</item>
<!-- Contact -->
<item>com.google.android.contacts</item>
<!-- Drive -->
<item>com.google.android.apps.docs</item>
<!-- Files -->
<item>com.google.android.apps.nbu.files</item>
<!-- Gallery go -->
<item>com.google.android.apps.photosgo</item>
<!-- Oneplus Gallery -->
<item>com.oneplus.gallery</item>
<!-- Gmail -->
<item>com.google.android.gm</item>
<!-- Maps -->
<item>com.google.android.apps.maps</item>
<!-- Messaging -->
<item>com.google.android.messaging</item>
<!-- Play store -->
<item>com.android.vending</item>
<!-- Photos -->
<item>com.google.android.apps.photos</item>
<!-- Youtube -->
<item>com.google.android.youtube</item>
<!-- AOSP apps -->
<item>com.android.contacts</item>
<item>com.android.dialer</item>
<item>com.android.documentsui</item>
<item>com.android.messaging</item>
<!-- Other apps -->
<item>com.chiller3.bcr</item>
<item>com.wstxda.viper4android</item>
<item>org.lineageos.aperture</item>
<item>org.lineageos.recorder</item>
</string-array>
<!-- Suppress Intent Filter Verification Service crashes and System UI ANRs (both AOSP bugs) -->
<string translatable="false" name="config_appsNotReportingCrashes">com.android.statementservice,com.android.systemui,com.google.android.as,com.google.android.tts</string>
<!-- If true, the display will be shifted around in ambient mode. -->
<bool name="config_enableBurnInProtection">true</bool>
<!-- If supported, are dreams enabled? (by default) -->
<bool name="config_dreamsEnabledByDefault">false</bool>
</resources> </resources>

View File

@@ -31,6 +31,6 @@
</webviewprovider> </webviewprovider>
<!-- The default WebView implementation --> <!-- The default WebView implementation -->
<webviewprovider description="AOSP WebView" packageName="com.android.webview" availableByDefault="true" /> <webviewprovider description="AOSP WebView" packageName="com.android.webview" availableByDefault="true" isFallback="true" />
</webviewproviders> </webviewproviders>

View File

@@ -19,7 +19,7 @@
<resources> <resources>
<bool name="def_wifi_on">true</bool> <bool name="def_wifi_on">true</bool>
<string name="def_backup_transport">com.stevesoltys.seedvault.transport.ConfigurableBackupTransport</string> <string name="def_backup_transport">com.google.android.gms/.backup.BackupTransportService</string>
<!-- Initial value for the Settings.Secure.IMMERSIVE_MODE_CONFIRMATIONS setting, <!-- Initial value for the Settings.Secure.IMMERSIVE_MODE_CONFIRMATIONS setting,
which is a comma separated list of packages that no longer need confirmation which is a comma separated list of packages that no longer need confirmation
@@ -29,4 +29,13 @@
<!-- This is disabled by default, but turned on in SetupWizard --> <!-- This is disabled by default, but turned on in SetupWizard -->
<bool name="assisted_gps_enabled">false</bool> <bool name="assisted_gps_enabled">false</bool>
<bool name="def_bluetooth_on">false</bool>
<integer name="def_screen_off_timeout">30000</integer>
<bool name="def_screen_brightness_automatic_mode">true</bool>
<!-- Default for Settings.System.VIBRATE_WHEN_RINGING -->
<bool name="def_vibrate_when_ringing">true</bool>
</resources> </resources>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Whether to use the split 2-column notification shade -->
<bool name="config_use_split_notification_shade">true</bool>
</resources>

View File

@@ -23,6 +23,23 @@
<item>com.android.systemui</item> <item>com.android.systemui</item>
<item>com.android.systemui.plugin.globalactions.wallet</item> <item>com.android.systemui.plugin.globalactions.wallet</item>
<item>org.lineageos.settings.device</item> <item>org.lineageos.settings.device</item>
<item>com.android.systemui.clocks</item>
<item>com.android.systemui.clocks.debug</item>
<item>com.android.systemui.clocks.bignum</item>
<item>com.android.systemui.clocks.calligraphy</item>
<item>com.android.systemui.clocks.flex</item>
<item>com.android.systemui.clocks.growth</item>
<item>com.android.systemui.clocks.handwritten</item>
<item>com.android.systemui.clocks.inflate</item>
<item>com.android.systemui.clocks.metro</item>
<item>com.android.systemui.clocks.numoverlap</item>
<item>com.android.systemui.clocks.weather</item>
<item>com.libremobileos.clock</item>
</string-array>
<string-array name="config_pluginWhitelist">
<item>com.android.systemui</item>
<item>com.android.systemui.plugin.globalactions.wallet</item>
</string-array> </string-array>
<!-- Icons that don't show in a collapsed non-keyguard statusbar --> <!-- Icons that don't show in a collapsed non-keyguard statusbar -->
@@ -40,4 +57,22 @@
<!-- Whether or not lockscreen shortcuts can be customized --> <!-- Whether or not lockscreen shortcuts can be customized -->
<bool name="custom_lockscreen_shortcuts_enabled" translatable="false">true</bool> <bool name="custom_lockscreen_shortcuts_enabled" translatable="false">true</bool>
<!-- A collection of defaults for the quick affordances on the lock screen. Each item must be a
string with two parts: the ID of the slot and the comma-delimited list of affordance IDs,
separated by a colon ':' character. For example: <item>bottom_end:home,wallet</item>. The
default is displayed by System UI as long as the user hasn't made a different choice for that
slot. If the user did make a choice, even if the choice is the "None" option, the default is
ignored. -->
<string-array name="config_keyguardQuickAffordanceDefaults" translatable="false">
<item>bottom_start:flashlight</item>
<item>bottom_end:camera</item>
</string-array>
<!-- Time (in ms) to delay the bouncer views from showing when passive auth may be used for
device entry. -->
<integer name="primary_bouncer_passive_auth_delay">0</integer>
<!-- Biometric Dialog values -->
<integer name="biometric_dialog_text_gravity">1</integer> <!-- CENTER_HORIZONTAL -->
</resources> </resources>

View File

@@ -18,4 +18,7 @@
<resources> <resources>
<!-- Remove power menu shadow --> <!-- Remove power menu shadow -->
<dimen name="global_actions_translate">0dp</dimen> <dimen name="global_actions_translate">0dp</dimen>
<!-- Biometric Dialog values -->
<dimen name="biometric_dialog_corner_size">@*android:dimen/config_bottomDialogCornerRadius</dimen>
</resources> </resources>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 crDroid Android Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<resources>
<!-- Determines whether the shell features all run on another thread. This is to be overrided
by the resources of the app using the Shell library. -->
<bool name="config_enableShellMainThread">true</bool>
</resources>

View File

@@ -30,10 +30,17 @@
<!-- Whether wallpaper attribution should be shown or not. --> <!-- Whether wallpaper attribution should be shown or not. -->
<bool name="config_show_wallpaper_attribution">false</bool> <bool name="config_show_wallpaper_attribution">false</bool>
<!-- Package name and fully-qualified class name for the wallpaper picker activity. -->
<string name="config_wallpaper_picker_package" translatable="false">com.android.wallpaper</string>
<!-- Fully-qualified class name for the styles & wallpaper picker activity. --> <!-- Fully-qualified class name for the styles & wallpaper picker activity. -->
<string name="config_styles_and_wallpaper_picker_class" translatable="false">com.android.customization.picker.CustomizationPickerActivity</string> <string name="config_styles_and_wallpaper_picker_class" translatable="false">com.android.customization.picker.CustomizationPickerActivity</string>
<!-- Action name for the styles & wallpaper picker activity. --> <!-- Action name for the styles & wallpaper picker activity. -->
<string name="config_styles_and_wallpaper_picker_action" translatable="false">android.intent.action.SET_WALLPAPER</string> <string name="config_styles_and_wallpaper_picker_action" translatable="false">android.intent.action.SET_WALLPAPER</string>
<!-- Whether or not device header widget tile should display in device info page -->
<bool name="config_show_device_header_in_device_info">false</bool>
<!-- Whether to display Cloned Apps page in Settings (Settings > Apps > Cloned Apps).-->
<bool name="config_cloned_apps_page_enabled">true</bool>
<!-- Whether memory from app_info_settings is available or not. -->
<bool name="config_show_app_info_settings_memory">true</bool>
</resources> </resources>

Some files were not shown because too many files have changed in this diff Show More