[ROM][OFFICIAL] SuperiorOS Twelve [Android 12.1]

Search This thread

Jayant_Deshmukh

Recognized Developer
May 14, 2017
1,096
3,243
24
Bangalore
Hello there!


I would like to know how you managed to "extract" the binary blobs for the Pixel 4a (sunfish) that you provides at
Did you use android-prepare-vendor project or adevtool project?

I'm asking because I'm trying to build AOSP for this device, and it sees I don't manage to extract these blobs properly (I get an error during AOSP build about sepolicy) with none of these projects.

For reference about ths sepolicy bug, I opened an issue here for adevtool: https://github.com/kdrag0n/adevtool/issues/19


Kind regards
I used Android-prepare from grapheneos for blobs extraction. They have switched to adevtool now but you can reset the commits and use it for sunfish. As a matter of fact never faced this sepolicy error from sunfish-sepolicy :(
 
  • Like
Reactions: Splendente and kkjb

Splendente

Member
Jul 4, 2022
6
1
I used Android-prepare from grapheneos for blobs extraction. They have switched to adevtool now but you can reset the commits and use it for sunfish. As a matter of fact never faced this sepolicy error from sunfish-sepolicy :(
I also did try it this way. GrapheneOS fork (since it's the only fork still updated) and reverted the commit dropping the "modern devices"' but I still did get an error during build.

However, if you managed to do it, I should be able to do the same: I'll try it again from scratch.

Are you sure you managed to do this for AOSP 12.1?

I was able to do it for AOSP 12, but started getting the errors with 12.1.
 

Jayant_Deshmukh

Recognized Developer
May 14, 2017
1,096
3,243
24
Bangalore
I also did try it this way. GrapheneOS fork (since it's the only fork still updated) and reverted the commit dropping the "modern devices"' but I still did get an error during build.

However, if you managed to do it, I should be able to do the same: I'll try it again from scratch.

Are you sure you managed to do this for AOSP 12.1?

I was able to do it for AOSP 12, but started getting the errors with 12.1.
I tried Android 12 didn't try 12.1. Maybe you have to fix then instead of starting form scratch.
 

Jayant_Deshmukh

Recognized Developer
May 14, 2017
1,096
3,243
24
Bangalore

Splendente

Member
Jul 4, 2022
6
1
Ah ok yes.

If you have a little time and since your custom ROM is based on AOSP 12.1, could you please try to build AOSP 12.1 (june update) just to check if you receive the same error as me? It would be very kind of you.

Here is the exact error I'm getting when running "m target-file-packages":
Code:
[ 45% 56288/124488] build out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows
FAILED: out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows                   
/bin/bash -c "(ASAN_OPTIONS=detect_leaks=0 out/host/linux-x86/bin/checkpolicy -M -c             30 -o out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp out/target/product/sunfish/obj/FAKE/sep
olicy_neverallows_intermediates/policy.conf ) && (out/host/linux-x86/bin/sepolicy-analyze out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp neverallow -w -f out/target/product/sunfish/obj/FAK
E/sepolicy_neverallows_intermediates/policy_2.conf ||           ( echo \"\" 1>&2;         echo \"sepolicy-analyze failed. This is most likely due to the use\" 1>&2;            echo \"of an expanded attribute in a neverallow assertion. Pl
ease fix\" 1>&2;         echo \"the policy.\" 1>&2;      exit 1 ) ) && (touch out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp ) && (mv out/target/product/sunfish/obj/FAKE/sepolicy_neverallo
ws_intermediates/sepolicy_neverallows.tmp out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows )"
hardware/google/pixel-sepolicy/googlebattery/turbo_adapter.te:3:ERROR 'unknown type turbo_adapter' at token ';' on line 69540:
allow turbo_adapter hal_googlebattery_hwservice:hwservice_manager find;                                               
# To find and bind Google Battery HAL                                                                                 
checkpolicy:  error(s) encountered while parsing configuration         
[ 45% 56289/124488] build out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy
FAILED: out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy
/bin/bash -c "(ASAN_OPTIONS=detect_leaks=0 out/host/linux-x86/bin/checkpolicy -M -c             30 -o out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp out/target/product/sunfish/obj/ETC/sepolicy.recovery_in
termediates/sepolicy.recovery.conf ) && (out/host/linux-x86/bin/sepolicy-analyze out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp permissive > out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermedia
tes/sepolicy.permissivedomains ) && (if [ \"user\" = \"user\" -a -s out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.permissivedomains ]; then           echo \"==========\" 1>&2;               echo \"ERROR: per
missive domains not allowed in user builds\" 1>&2;           echo \"List of invalid domains:\" 1>&2;              cat out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.permissivedomains 1>&2;          exit 1;   
            fi ) && (mv out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy )"
hardware/google/pixel-sepolicy/googlebattery/turbo_adapter.te:3:ERROR 'unknown type turbo_adapter' at token ';' on line 71018:
# To find and bind Google Battery HAL
allow turbo_adapter hal_googlebattery_hwservice:hwservice_manager find;
checkpolicy:  error(s) encountered while parsing configuration
16:50:25 ninja failed with: exit status 1

I just removed the whole vendor/google_devices folder and build it again with the android-prepare-vendor (grapheneOS fork) against the factory and OTA images from june update.


Kind regards,
 

Jayant_Deshmukh

Recognized Developer
May 14, 2017
1,096
3,243
24
Bangalore
Ah ok yes.

If you have a little time and since your custom ROM is based on AOSP 12.1, could you please try to build AOSP 12.1 (june update) just to check if you receive the same error as me? It would be very kind of you.

Here is the exact error I'm getting when running "m target-file-packages":
Code:
[ 45% 56288/124488] build out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows
FAILED: out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows                  
/bin/bash -c "(ASAN_OPTIONS=detect_leaks=0 out/host/linux-x86/bin/checkpolicy -M -c             30 -o out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp out/target/product/sunfish/obj/FAKE/sep
olicy_neverallows_intermediates/policy.conf ) && (out/host/linux-x86/bin/sepolicy-analyze out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp neverallow -w -f out/target/product/sunfish/obj/FAK
E/sepolicy_neverallows_intermediates/policy_2.conf ||           ( echo \"\" 1>&2;         echo \"sepolicy-analyze failed. This is most likely due to the use\" 1>&2;            echo \"of an expanded attribute in a neverallow assertion. Pl
ease fix\" 1>&2;         echo \"the policy.\" 1>&2;      exit 1 ) ) && (touch out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows.tmp ) && (mv out/target/product/sunfish/obj/FAKE/sepolicy_neverallo
ws_intermediates/sepolicy_neverallows.tmp out/target/product/sunfish/obj/FAKE/sepolicy_neverallows_intermediates/sepolicy_neverallows )"
hardware/google/pixel-sepolicy/googlebattery/turbo_adapter.te:3:ERROR 'unknown type turbo_adapter' at token ';' on line 69540:
allow turbo_adapter hal_googlebattery_hwservice:hwservice_manager find;                                              
# To find and bind Google Battery HAL                                                                                
checkpolicy:  error(s) encountered while parsing configuration        
[ 45% 56289/124488] build out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy
FAILED: out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy
/bin/bash -c "(ASAN_OPTIONS=detect_leaks=0 out/host/linux-x86/bin/checkpolicy -M -c             30 -o out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp out/target/product/sunfish/obj/ETC/sepolicy.recovery_in
termediates/sepolicy.recovery.conf ) && (out/host/linux-x86/bin/sepolicy-analyze out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp permissive > out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermedia
tes/sepolicy.permissivedomains ) && (if [ \"user\" = \"user\" -a -s out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.permissivedomains ]; then           echo \"==========\" 1>&2;               echo \"ERROR: per
missive domains not allowed in user builds\" 1>&2;           echo \"List of invalid domains:\" 1>&2;              cat out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.permissivedomains 1>&2;          exit 1;  
            fi ) && (mv out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy.tmp out/target/product/sunfish/obj/ETC/sepolicy.recovery_intermediates/sepolicy )"
hardware/google/pixel-sepolicy/googlebattery/turbo_adapter.te:3:ERROR 'unknown type turbo_adapter' at token ';' on line 71018:
# To find and bind Google Battery HAL
allow turbo_adapter hal_googlebattery_hwservice:hwservice_manager find;
checkpolicy:  error(s) encountered while parsing configuration
16:50:25 ninja failed with: exit status 1

I just removed the whole vendor/google_devices folder and build it again with the android-prepare-vendor (grapheneOS fork) against the factory and OTA images from june update.


Kind regards,
Previously you didn't give the whole error log it seems. Now I understood the actual error https://github.com/GrapheneOS/platf...mmit/cedfeeb70103440834632a5bce077175ace0807a
Here's the fix
 
  • Like
Reactions: Splendente

cnutz

New member
Jan 19, 2011
3
0
Hi !
I have one newbie question. I'm still on build spa2a.220505.002 and also rooted.
Now I received an update notification for June from SuperiosOS. Will I still have Root after update ? Or do I need to flash rooted boot again ?
 

Lada333

Senior Member
Feb 7, 2016
1,219
390
21
Győr
OnePlus 3T
Google Pixel 4a
  • Like
Reactions: RAYAN SHAIKH

RAYAN SHAIKH

Senior Member
Jun 23, 2015
114
50
Google Pixel 4a
June Update is up!

# General Changes

- Merged June Security Patch (android-12.1.0_r8)
- Added Gaming Mode
- Added 5 more new fonts
- Added lots of new signal icons
- Added support for displaying Volte icon
- Added 23 new Volte icons
- Add support for displaying VoWifi icon
- Added 6 new VoWifi icons
- Added 4 new battery icon styles
- Added Internet QS tile to secure QS list
- Added accent color to charging animation
- Added left padding for keyguard slices
- Added option to reduce 3 second screen record timer
- Dismiss existing screenshot window on taking new screenshot
- Dismiss screenshot window on touch outside
- Disabled storage manager
- Improvements battery icon style logic
- Implemented hide gestural navigation hint bar toggle
- Improved lockscreen font logic
- Improved volume panel
- Improved screenshot capture & edit
- Improved font application
- Migrated interstitial encryption settings xml to NestedScrollview
- Network Traffic: Stop scheduling updates when screen off
- Preserved unicode bolt color
- Redesigned volume panel (Match with brightness slider)
- Reworked on privacy indicators (Follow accent color)
- Restyled that horrible sim select dialog
- Splitted status bar icon controls for vibrate and mute
- Drop wired chaging animation
- Rework UI of Dialer based on Octavi OS's design
- Add Monet theme support to Dialer, Contacts and DocumentsUI
- Redesigned SuperiorSettings Dashboard based on DotOS 5.x and Xdroid Settings dashboard
- Add Lock gesture tile to Gaming mode
- Update APN's from SQ3A.220605.009.B1
- Merged Translations from crowdin

# Superior Launcher

- Added toggle to apply themed icons in apps drawer
- Fixed a couple of Null pointer exceptions
- Introducing overview scrolling scale animation

# Fixes

- Fixed google backup and restore
- Fixed dialogue exit animation
- Fixes related to QS tile height
- Fixed NPE while getting app label
- Fixed wrong attributes for smartspace
- Fixed lockscreen statusbar icon stuck (Change according to themes)

# Pixel 4a related

- Updated the blobs & prebuilt kernel as per the latest device tag.
- Dropped Quick tap & Adaptive Charging
- Pixel live wallpapers (please set some other wallpaper before update to avoid any conflicts just in case)

Download: SuperiorOS-TwelveL-sunfish-GAPPS-OFFICIAL-20220702-0939.zip

Notes:
1. This is bit of a sad news that after switching away from Pixel 4a few days back I accidentally deleted my own patch files (commits) of GoogleSystemUI port (Pixel experience like). Hence those 2 features were dropped and if I get time to repick and adapt them to the rom source I'll do it in future.
2. Now playing on lockscreen along with pulse after song detection is still present.
3. For weather on lockscreen I have switched to OmniJaws. Hence you need to enable it from

a. SuperiorSettings -> Lockscreen -> Weather -> Weather Display toggle
b. SuperiorSettings -> Lockscreen -> Weather -> Service settings -> Enable it -> Select update interval -> Select Weather provider to (The Weather Channel) because that is where google takes it from

Doubly make sure you give "Allow all the time" location permission to OmniJaws app from Settings just in case it's not given by default (it should but I don't know in dirty flashing & test builds) or else the weather won't get updated in the background.

That's all it. Those who are sad about the loss of dropped features stay on May build xD I'm doing my best to find time for ROM work. Cheers!

If you like my work. Donate at PayPal
This is the best rom for pixel 4a. I don't know why but I always come back to this rom. This rom is like x for me. 😆
 

DiamondJohn

Recognized Contributor
Aug 31, 2013
6,302
6,230
Sydney
  • Like
Reactions: RAYAN SHAIKH

Top Liked Posts

  • There are no posts matching your filters.
  • 6
    July update is here!

    General Changes:
    - Merged July Security Patch (Android 12.1.0 release 11)
    - PixelPropsUtils: Updated fingerprints to July Security Patch
    - Added toggle to enable/disable data usage view on QS footer
    - Added support for window ignore secure
    - Extended monet to AOSP Contacts & DocumentsUI
    - Improved QS detail clip animation
    - Improved screenshot expansion animation
    - Improved screenshot capture & view implementation
    - Synced Navigation Bar Dimens from TPB3.220513.017.B1
    - Reworked QTI BT support implementation
    - Redesigned SuperiorSettings dashboard
    - Redesigned Dialer
    - Removed duplicated charging animation
    - Updated Simple APNs from SQ3A.220605.009.B1
    - Updated GApps from Raven July release
    - Merged Translations from crowdin

    Gaming Mode
    - Added lock gesture tile
    - Added time/date in panel view
    - Added memory info
    - Changed default panel view opacity to 100%
    - Fixed per game configure icon on light theme
    - Re-arranged preferences
    - Redesigned layout

    Superior Launcher
    - Added pref to set app drawer row height
    - Added pref to disable wallpaper scrolling
    - Added toggle to hide top shadow on statusbar
    - Added device category for additional profiles
    - Adjusted the icon size to the grid size
    - Made drawer cells square when labels are hidden
    - Sorted device profiles
    - Some miscellaneous changes and addressed some NPEs

    Fixes
    - Fixed suspicious spaces around QS mobile icons
    - Fixed QS mobile icon disappearing on theme switch
    - Fixed NPE when created with empty package name
    - Fixed QS clock overlapping on UI mode change

    Extra (due to late update :p)
    - Ambient pulse edge light
    - Navbar inversion (3 button)

    Download: SuperiorOS-TwelveL-sunfish-GAPPS-OFFICIAL-20220730-0506.zip

    If you like my work. Donate at PayPal
    3
    Here's a quick update!

    Changes:
    * Quick Tap added
    * Adaptive charging added
    * The battery widgets shows phone & attached Bluetooth device's charge level

    Note: Not pushing an OTA. Download manually and use "Local installation" from OTA app to install from your phone if not from a PC.

    Download: SuperiorOS-TwelveL-sunfish-GAPPS-OFFICIAL-20220802-0623.zip

    If you like my work. Donate at PayPal
    3
    Pixel port is done. I'll release soon with quick tap & adaptive charging.
    Screenshot_20220802-124335_SuperiorOS Launcher.png
    2
    I'm not sure if this is of any help at all, because the ROM I'm using is not available on GitHub, but I just checked this battery widget on crDroid, and it works for me flawlessly.
    Here's a link to the zip of the build I'm currently using.
    crDroit itself has a GitHub page, but they don't officially support Pixel 4a.
    Maybe you can make use of either of these sources.
    Yes crdroid has that implementation of pixel port. I'll try n implement but depends on free time I get. Also A13 just around the corner so let's see.
    2
    @Jayant_Deshmukh it's a small thing.. But would you be able to add Long Press Power Button Torchlight again? I find this so convinient and I am missing it a lot :(
    User search in settings "torch". 😉
    Superior settings -> Gestures
  • 15

    twelve_logo.png

    About US:
    Superior OS is a AOSP based custom ROM with a bunch of features to fulfill the users demands nowadays.

    Disclaimer.png

    Code:
    * Your warranty is now void.
    * We are not responsible for anything that may happen to your phone by installing any custom ROMs and/or kernels.
    * You do it at your own risk and take the responsibility upon yourself and you are not to blame us or XDA and its respected developers.
    "This is a user friendly thread, all your suggestions are important to us and will be taken into consideration"

    Procedure.png


    CLEAN FLASH :
    Download the latest build and boot-eng.img from same folder
    Take Backup (Not Necessary)
    Reboot to bootloader
    fastboot flash --slot all boot boot-twelve.img
    Reboot to recovery
    Perform factory reset
    Flash via adb ->adb sideload ROM.zip
    Reboot

    DIRTY FLASH :
    Download the latest build
    Reboot to recovery
    Flash via adb ->adb sideload ROM.zip
    Reboot


    Features.png

    Code:
    STATUSBAR
    - 4G Icon Instead of LTE.
    - Old mobile type indication.
    - Traffic indicators.
    - VoLTE icon toggle.
    
    NAVIGATION BAR
    - System navigation
    
    QUICK SETTINGS
    - Quick pulldown option.
    - Vibrate on touch.
    
    GESTURES
    - Double tap to sleep.
    - Extended swipe gesture.
    - Quick open camera.
    - One handed mode.
    - Power button press and hold gesture.
    - Power button torch gesture.
    - Screen off power button torch.
    - Three finger swipe screenshot.
    
    BUTTONS
    - Reorient volume buttons.
    - Skip music tracks.
    - Volume rocker  wake.
    
    NOTIFICATIONS
    - Incall Vibrations.
    - Toast app icon.
    
    POWER MENU
    - Advanced Reboot.
    - Power menu items.
    
    Lots more coming soon !
    Stay Tuned!!

    Downloads.png

    Download ROM
    SuperiorOS



    Credits.png

    SuperiorOS Core Team
    AOSP
    Lineage OS
    AospExtended
    PixelExperience
    Arrow OS
    Pixys OS


    Team.png

    Sipun Ku Mahanta
    Jayant Deshmukh
    Nipin NA (Joker-V2)
    Adnan Faysal
    Arun Teltia

    Special thanks
    Sam Grande
    Pavan Patel
    Ionut Iacob


    Donate.png

    cash.png

    Loved the ROM? Want to help it imporove? Gift us with some credits!

    Header.png



    Superior OS source

    SuperiorOS-Device Sources
    telegram.png

    Telegram Group
    Telegram Channel


    REPORTING BUGS!
    As soon as the problem occurs, take a logcat!
    for more READ THIS

    XDA Information
    SuperiorOS, ROM for Google Pixel 4a
    SuperiorOS Version Name: Twelve
    Device: Sunfish
    Maintainer: Jayant Deshmukh
    Build Type: OFFICIAL

    Resources used
    Source Code:
    SuperiorOS
    Device Tree Source: Sunfish
    Kernel Source: Stock Prebuilt

    ROM OS Version: 12.0.x
    ROM Kernel: Linux 4.14
    ROM Firmware Required: Must be on Latest Firmware
    Based On: AOSP

    Version Information
    Status:
    Stable
    Current Stable Version: Twelve
    SELinux Status: Enforcing
    Stable Release Date:
    2021-12-20

    Created 2021-12-20
    Last Updated 2021-12-20
    10
    February Update is up!

    General Changes:
    • Merged February security patch (r29)
    • Added small keyguard clock
    • Added pitch black theme
    • Added toggle to force combined signal icon
    • Added signal and wifi icon style theming
    • Added PUI iconpack
    • Added colored notification icon
    • Added toggle to disable notification header
    • Added Option for blocking annoying statusbar call strength icon
    • Added Google Photos to the spoof list
    • Added missing permissions
    • Adjusted brightness slider dimensions
    • Adjusted default navbar layouts
    • Extended monet to fingerprint authentication ripple animation
    • Imported missing lottie for swipe fingerprint from redfin
    • Made QS brightness slider animation more fluent
    • Network Traffic Indicator: Removed screen on/off triggers
    • Refactored Volume Long Press Skip Tracks
    • Refactored media art customizations
    • Refactored Wifi Calling description text
    • Removed streaming apps from Pixel prop utils
    • Removed gcam and mods from spoof list
    • Upstreamed sepolicy_vndr repo
    • Updated Superior Walls (Added Monet support)
    • Updated fingerprint To February 2022 Security Patch
    Fixes:
    • Fixed crash when alpha component is translucent
    • Fixed ripple animation for side fp devices
    • Fixes notch hide overlay on some devices
    • Fixed status bar and QS margins and paddings
    • Fixed lock screen wallpaper bug
    • Fixed Gesture icon weird overlay issue
    • Fixed gesture navigation fail to move to bottom
    • Fixed settings search bar colors & layout
    • Fixed some log spams & SystemUI crashes
    • Fixed AOD charging % update issue
    Note: No OTA this time. I forgot some changes in the last update. OTA will work for Feb ->March update and onwards.

    Download: SuperiorOS-Twelve-sunfish-GAPPS-OFFICIAL-20220213-1339.zip

    If you like my work. Donate at PayPal
    10
    So I wrecked my Pixel 6 within a week of purchase. Then I was without a phone for a while. Now I'm back to my Pixel 4a. You can expect an update but no ETA :p
    10
    Update is up!
    SuperiorOS-Twelve-sunfish-GAPPS-OFFICIAL-20211128-0616.zip

    Changelogs:
    * Fixed Safetynet issue (Wipe app data of any banking app and start over)
    * Fixed Playstore device not certified issue
    * Added Network Traffic Indicator

    Note: Check Dirty flash instructions in OP Post no need to wipe data

    If you like my work you can donate PayPal
    9
    photo_2022-01-08_11-43-09.jpg


    Now Playing and Weather on lockscreen is done.
    Also Google Photos issue is fixed.
    Update is going totake a while this month (like every month :p).