[Closed] Universal SystemRW / SuperRW feat. MakeRW / ro2rw (read-only-2-read/write super partition converter)

Status
Not open for further replies.
Search This thread

lebigmac

Account currently disabled
Jan 31, 2017
1,342
995
Yes auto-resize feature is easy to do. Don't worry I will add it soon when I have more time ;)

If you check the amazing superrepack tool by @munjeni (link in first post) he has already implemented this special feature long time ago. I'm only beginner programmer but that guy is a real expert (y)
 
Last edited:
  • Like
Reactions: Pachacouti

The_Tablet

Member
Jun 14, 2019
17
1
Toronto
Google Pixel 6
hey @lebigmac! i finally figured out the issue. basically, i'd extracted systemrw_1.32_flashable.zip into a folder in /data/local/tmp called "systemrw_1.32", making the directory structure look like this:
Code:
data/
├─ local/
│  ├─ tmp/
│  │  ├─ systemrw_1.32/
│  │  │  ├─ systemrw_1.32/
│  │  │  │  ├─ tools/
│  │  │  │  ├─ config.ini
│  │  │  │  ├─ systemrw.sh
as a result, systemrw.sh was unable to find the tools directory because it was actually located in a subdirectory within the expected directory, which the script obviously doesn't know about as the location is hardcoded as "/data/local/tmp/systemrw_1.32/".

so after moving everything in that rogue subdirectory up one directory, so it looked like this (as intended) :

Code:
data/
├─ local/
│  ├─ tmp/
│  │  ├─ systemrw_1.32/
│  │  │  ├─ tools/
│  │  │  ├─ config.ini
│  │  │  ├─ systemrw.sh

the script finally worked! (see attached logs).

i booted into twrp and flashed the images, and my system is now finally(!) r/w!

sorry for the wild goose chase there, and i send my sincerest thanks over to you and everyone else who made this possible! :3
 

Attachments

  • sysrw_log_2021-09-25.txt
    6.3 KB · Views: 26
  • Love
Reactions: lebigmac

krasevalex

Member
Jun 10, 2019
13
17
60
Philadelphia
Hi @Ricardo Cruz. Thanks for your feedback. It looks like your device is not recognized by adb?

Did you get the sysrw_repair script to work inside your Linux environment? What was the problem?

Was super_fixed.bin created successfully and did you fastboot flash it to your super partition yet?
What is the result? Can you do this now?

1-jpg.5235933



Hi @krasevalex. Thanks for your feedback. Please send me your log files from this folder. Thanks.
/data/local/tmp/systemrw_1.32/log/

You can successfully boot device after flashing super_fixed.bin AND you can remount partitions as R/W? That sounds like a success to me. Congratulations!

I think you need to run script again with larger custom size and generate new super_fixed.bin with the repair script and fastboot flash it manually to your super partition.
After that everything should work as expected.

Bash:
adb shell
su
cd /data/local/tmp/systemrw_1.32
./systemrw.sh in=`ls -l /dev/block/by-name/super | awk '{print $NF}'` size=50


/system is only in Android 9 and earlier. In Android 10+ it's called /
I repeated all procedure (./systemrw.sh size=50 => error code 73 in the phone => repair script in Ubuntu) and result this time is very good. The system is RW, nothing wrong with build.prop. Now I have full root. :)
So far everything's great. Thank you very much for this script.
 
  • Love
Reactions: lebigmac

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
Screenshot_PBRP_2021-09-27-01-29-00.png

sir I`m tried this earlier but I'm not getting Success I'm try it again today and got error 255
idk why it occur..
my device Spec are:-
Realme C3 RMX2027 Helio G70
rn on Realme UI 1.0 Android 10.
 

Pachacouti

Senior Member
Jul 8, 2020
389
92
55
The Capital above the Lower one...
View attachment 5419775
sir I`m tried this earlier but I'm not getting Success I'm try it again today and got error 255
idk why it occur..
my device Spec are:-
Realme C3 RMX2027 Helio G70
rn on Realme UI 1.0 Android 10.
This error is a twrp error I believe, seems twrp no longer correctly interprets the adb sideloaded file name as package.zip, notice package zip in log?

Bet your sideloaded zip was NOT called package.zip, I've seen this in stock recovery too

Something is trying to flash a zip, or has renamed your file, or is looking for a file called flashable.zip, most likely a typo in the script.. or twrp... or recovery lol.. I'm betting incorrectly imported twrp recovery...img
 
Last edited:

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
This error is a twrp error I believe, seems twrp no longer correctly interprets the adb sideloaded file name as package.zip, notice package zip in log?

Bet your sideloaded zip was NOT called package.zip, I've seen this in stock recovery too

Something is trying to flash a zip, or has renamed your file, or is looking for a file called flashable.zip, most likely a typo in the script.. or twrp... or recovery lol.. I'm betting incorrectly imported twrp recovery...img
I'm using pbrp sir it`s something mounting issue I guess.
 

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
@lebigmac sir one more update I'm run this script in system mode and it did rebuild my super but when I'm flash super_fixed as fastboot flash super super_fix.img my device not boot anymore it always reboot to bootloader I'm disable all vbmeta verity and verification too but it give reboot to bootloader it seems Realme UI custom partition My_Product massed or corrupt coz driver not loading from that. Can you help me.. I Wanna be make it r/w.. thanks in advance logs attached here..
 

Attachments

  • mylog.txt
    6 KB · Views: 10
  • Screenshot_2021-09-27-14-03-31-40.jpg
    Screenshot_2021-09-27-14-03-31-40.jpg
    224.6 KB · Views: 41
  • lpdump.txt
    2.9 KB · Views: 9
  • dmesg.log
    481.8 KB · Views: 8
  • Like
Reactions: lebigmac

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
Yup, the file package.zip not found :) because no file called package.zip exists.

(Should say name of zip being used, not 'package.zip')
I`m run this in system and result here!
@lebigmac sir one more update I'm run this script in system mode and it did rebuild my super but when I'm flash super_fixed as fastboot flash super super_fix.img my device not boot anymore it always reboot to bootloader I'm disable all vbmeta verity and verification too but it give reboot to bootloader it seems Realme UI custom partition My_Product massed or corrupt coz driver not loading from that. Can you help me.. I Wanna be make it r/w.. thanks in advance logs attached here..
 

lebigmac

Account currently disabled
Jan 31, 2017
1,342
995
@lebigmac sir one more update I'm run this script in system mode and it did rebuild my super but when I'm flash super_fixed as fastboot flash super super_fix.img my device not boot anymore it always reboot to bootloader I'm disable all vbmeta verity and verification too but it give reboot to bootloader it seems Realme UI custom partition My_Product massed or corrupt coz driver not loading from that. Can you help me.. I Wanna be make it r/w.. thanks in advance logs attached here..
Hi @fire7ly thanks for your log files.
I noticed you made a little mistake with the file path but script still worked nevertheless when launched manually. I'm surprised.

Screenshot_2021-09-27-14-03-31-40_error.jpg


According to your script log everything went well. All read-only restrictions have been successfully removed from your super image. I'm not sure what exactly is causing bootloop on your device. Some devices don't like modified super images... There must be some kind of special protection feature inside your device that prevents it from booting into the super image if it has been modified. That's my guess. You could try to check logcat while device is trying to boot to find out more info about the exact bootloop reason.

Can you undo bootloop simply by flashing original stock super image? You might have to flash stock vbmeta as well. Good luck!
 
Last edited:

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
Hi @fire7ly thanks for your log files.
I noticed you made a little mistake with the file path but script still worked nevertheless when launched manually. I'm surprised.

View attachment 5420301

According to your script log everything went well. All read-only restrictions have been successfully removed from your super image. I'm not sure what exactly is causing bootloop on your device. Some devices don't like modified super images... There must be some kind of special protection feature inside your boot.img that prevents the device from booting into the super image if it has been modified. That's my guess. You could try to check logcat while device is in bootloop to find out more info about the exact bootloop reason.

Can you undo bootloop simply by flashing original stock super image? You might have to flash stock vbmeta as well. Good luck!
sir as you say I'm take log and my dev friend read and say me its problem from My_Product partition which is causing issue that My_Product is custom partition by Rui inside super, script decrease size of that partition. I'm flashed all vbmeta to disable verification & verity. this is the right path as you suggest in your tutorial I'm using "*" coz idk right name of folder that time... this have version name too so I'm just add * to assume to get right path by chmod command..
main thing is was under /data/local/tmp/systemrw_1.32/systemrw.sh
can you look into this again in attached my device log earlier..
thanks in advance
 
  • Like
Reactions: lebigmac

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
Thanks. But you can tell in more detail. Where to get the super_original.bin and super_fix files. Please write detailed instructions.
this script have 2 mode one is from recovery flash as zip second have run it in android environment.
if you run this in recovery then it patch and flash super automatically.
second if you run it in android environment with as mention location of /data/local/tmp/here_your_script_folder/here_script.sh then it create a "img" folder inside of script folder then pull super from your device make a backup and rename that to super_orignal.bin then extract that super and patch r/w capability then make that again super and rename it as super_fix.img so simply you get two bin files inside "img" folder
if you wanna r/w your device flash super_fix.img from bootloader.
if you wanna go back to original state "flash super_orignal.bin" from bootloader.
directory tree will like this :-
data/ ├─ local/ │ ├─ tmp/ │ │ ├─ systemrw_1.32/ │ │ │ ├─img/ │ │ │ │ ├─super_orignal.bin │ │ │ │ ├─super_fix.bin │ │ │ ├─ tools/ │ │ │ ├─ config.ini │ │ │ ├─ systemrw.sh
thanks this for @The_Tablet
That's it!
 

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
@lebigmac sir I'm unpack super with lunpack and compare both of super_fix.bin and manually pulled one super.img
and there are something like mounting issue. partition name not show its just show version.0001.img insted of my_company.img can you check this out.. idk what`s wrong with it..I can send compare list to you..
soon..
 

Jr.17

Member
Aug 25, 2021
14
4
so I did Everything ran First Script gave error code 73 so booted up my linux ran recovery script it after 10-15 minutes said it was succesful and it was all unlock so i did a quick check on my phone and im still locked.
went back to the P.C did a remount
mount -o remount,rw /

and gave me no output checked phone again same thing files looked so i assume i missed something
 

fire7ly

Member
Apr 16, 2021
25
9
India
fire7ly.github.io
So, I'm Successfully make my system R/W...
I want to describe my device spec again so you guys take a look into this..
Device:- Realme C3
Vendor:- Realme Stock Vendor
Android Version:- Android 10
SDK:- 29
Running UI Version:- Realme Stock UI ( Realme UI 1.0 ) A65 ( Latest At Experiment Time Now A67 )
SOC:- MediaTek Helio G70
Ram / Rom:- 4 / 64
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Summery
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
I'm try this script approx 2 months ago that time it not work for me so I'm leave a reply and wait for script update version..
as update come I'm try again and it give me same error in pbrp so I'm decided to try this in android environment. and flash from bootloader mode but it not work for me I'm make again and flash from bootloader it works but I'm get error not enough space on system so I'm create patch super again with custom size and try to flash with bootloader but it not work this time I'm try with vbmeta still fail to boot it reboot back to bootloader I'm confuse to much. so I'm decided to make with lower custom size so I'm choose 20 still same method same problem, after many tickle I'm find the problem of vbmeta and auto resize partition problem coz As I'm say I'm use Realme UI so Realme implemented oppo_product partition of 7mb and when I'm use custom size it become fatty 😂
so I'm decide to use custom size of 2 mb and make it again and flash via bootloader again but it still fail..
now I'm very disappointed. now I think if I'm flash super via sp tool.. And after successful flash it work.. Without any problem..

I'm recommend to all of you Take a nan droid backup of rom and try sp tool method to flash super so no error you get like dm-verity corrupt loop to recovery loop to bootloader actually I'm get many loop to recovery and bootloader and many time dm-verity corruption error.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Screen Shot
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Screenshot_2021-10-02-16-16-54-73.jpg


My Old Posts:-
july 21:-
First Attempt
july 24:-
Try From Recovery But No luck
Sept 27:-
Tried From Recover
Tried From System
Sept 28:-
oppo_product Error But Actually Was Encryption
sept 30:-
Blindly compare stock and edited partitions
https://xdaforums.com/t/script-andr...t-system-read-write-r-w.4247311/post-85708413
 
  • Wow
Reactions: lebigmac
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 243
    Welcome to the one and only, the original, universal,

    System-RW / Super-RW feat. Make-RW / ro2rw (read-only-2-read/write super partition converter) by lebigmac
    Also known as: THE-REAL-RW, FULL-RW, EXT4-RW, EROFS-RW, EROFS-2-RW, F2FS-RW, F2FS-2-RW, EROFS-2-EXT4-CONVERTER, F2FS-2-EXT4-CONVERTER, Super Resizer/Flasher, SYSTEM-RW / PRODUCT-RW / VENDOR-RW / ODM-RW, root enhancer, real root, FULL ROOT, RW MULTI TOOL and many more aliases!
    (NOTE: Full F2FS-RW support coming in 1. quartal 2023 ! Get your Samsungs ready!)



    The prophecy has finally been fulfilled.
    Making Android ten years younger!
    Inspiring a whole generation of talented developers and empowering the open source community.
    The Pandora's Box has been fully unlocked at last!
    The genie has been unleashed from within the bottle!
    Sesame! Open up now!
    Let the Olympic Android System Modding Games (OASMG) begin!
    The power is now in YOUR hands! And don't forget:
    With great power comes great responsibility!


    Creation date: February 2021
    Updated: January 2023

    Requirements:
    • rooted STOCK Android 10 or newer
    • at least 10+ GB free space on phone for dumping data
    Description:
    A script for all Android power users that wish to make their read-only Android 10+ system read/write-able again to remove bloatware and make more thorough customizations to their device.
    Script only modifies super and vbmeta partitions. /data partition is not affected. It's only used for dumping data and for storing script files.
    In a nutshell this is what the script is doing:
    • dumps your existing super partition
    • extracts embedded read-only sub-partitions (system, system_ext, odm, vendor, product...) from specified super image
    • makes these sub-partitions read/write-able using the one and only original MakeRW/ro2rw algorithm
    • joins everything back together to new super.img
    • flashes read/write-able patched super image back to device using the super fast Kolibass technique (only available in recovery mode)

    NOTE:
    • The script can be run both inside custom recovery and inside Android operating system.
      If you run script in Android mode you will need to fastboot flash the patched image(s) manually!
    • To check whether or not the script worked correctly you can run this code:
      Bash:
      adb shell
      su
      mount -o remount,rw /
      mount -o remount,rw /odm
      mount -o remount,rw /product
      mount -o remount,rw /system_ext
      mount -o remount,rw /vendor
      mount | grep dm- | head -5
    Manual installation:
    • Extract flashable.zip and copy sysrw_*VERSION* folder into /data/local/tmp/
    • run this command to make the script executable:
      chmod +x /data/local/tmp/sysrw_*VERSION*/sysrw
    Automatic installation:
    Installation of the script has never been this easy!
    Download the flashable.zip below, do NOT enable zip signature verification and simply install it in your custom recovery (works in TWRP, OrangeFox and PBRP!)
    The update binary will auto-detect the arguments in config.ini and launch the script accordingly

    Flashable zip custom usage:
    You can easily modify the custom script execution arguments in the included config.ini file. Simply extract the flashable.zip, edit the included config.ini file with notepad and then save the file. Next compress the sysrw_*VERSION* and META-INF folders again as a new flashable .zip and install it in recovery. Have fun playing around with your config.ini :D(y)

    Script usage:
    Simply execute the program from the terminal shell with or without custom arguments
    Optional script arguments:
    Replace x with your custom value
    • in=x
      Specify existing super image as input [OPTIONAL]
      Omitting this parameter is equivalent to using in=@auto which is equivalent to using your super block device as input
    • out=x
      Specify patched super image output file path [OPTIONAL]
      Omitting this parameter is equivalent to using out=@auto
      and the patched super image will be saved as ./img/super_patched.bin by default
    • size=x
      Specify the extra free space (in megabytes) to be added to each sub-partition of super.img [OPTIONAL]
      Omitting this parameter is equivalent to using size=@auto which will activate the auto-resize feature
    • -r
      Specify whether or not the patched super image should be output in raw file format [OPTIONAL]
      Omitting this parameter will create a sparse patched super image by default

    Usage examples:
    Bash:
    adb shell
    su
    cd /data/local/tmp/sysrw_1.33
    chmod +x ./sysrw
    
    #  Run program with default settings [RECOMMENDED]
    ./sysrw
    
    # Specify existing super image as input [OPTIONAL]
    ./sysrw in=./img/super_original.img
    
    # Specify patched super image output file path [OPTIONAL]
    ./sysrw out=./img/super_patched_new.img
    
    # Specify the extra free space (in megabytes) to be added to each sub-partition of super.img [OPTIONAL]
    ./sysrw size=15
    
    # Specify whether or not the patched super image should be output in raw file format [OPTIONAL]
    ./sysrw -r
    
    # EXPERT EXAMPLE (Warning! This command could potentially corrupt your system. Only use at your own risk in recovery mode!)
    ./sysrw in=img/super_original.bin out=`realpath /dev/block/by-name/super` -r

    Uninstallation:
    • To free up space and keep script as well as r/w capability you can simply delete /img subfolder at /data/local/tmp/sysrw_*VERSION*/img
    • To delete script and keep r/w capability you can simply delete whole script folder at /data/local/tmp/sysrw_*VERSION*
    • To undo all changes performed by the script you can simply reflash original stock read-only super image and re-enable dm-verity and verification either through adb/fastboot or with the included avbctl binary.

    Troubleshooting:
    If you can't get this script to work on your device check out the brand new sophisticated superrepack tool by @munjeni
    If you get any errors from the update-binary in your custom recovery during installation of the flashable .zip then please send me this log file /tmp/recovery.log
    and a screenshot of your error. Thanks! (y)
    Make sure the script folder was correctly extracted to:
    /data/local/tmp/sysrw_*VERSION*
    If you can't run the script try making the file executable like this: chmod +x ./sysrw
    If you still can't get it to work run which sh in your shell and replace the shebang in the first line of the script with the output of that command. Don't remove the first two #! symbols though. Then save the file and try again.
    Make sure you've got full read / write access to the /data/local/tmp directory and that the containing files are not encrypted in custom recovery!
    If you get a bootloop after successfully creating and flashing super_patched.bin then that's probably because you didn't properly disable your dm-verity and verification.
    To undo any bootloop simply re-flash original stock read-only super image and re-enable dm-verity and verification with the included avbctl binary or through adb/fastboot. Those are the only changes performed by the script. If you have any more questions just ask in this thread. Good luck!

    About:
    I did not come up with all this by myself. After searching for a solution for countless days without success, going even as far as learning hex editing - I accidentally came across a couple of very interesting threads burried deep inside the new forum interface where this method has been described by various rw enthousiasts (links can be found in the credits section below). Therefore most credit goes to these rw enthousiasts. I'm only the amateur who put it all together into a compact script so that everybody can enjoy an Android system that's read/write-able again. Just like it used to be in Android 9 or earlier. Before these annoying 'shared_blocks' and 'EROFS' read-only features were implemented.

    Credits:
    Huge thanks to @Brepro1 for allowing me to use his awesome tutorial and make it into a script. Without your tutorial guiding me I couldn't have created this script.
    Huge thanks to @Kolibass for allowing me to use his partition tools for Android. Without your tools this script would not work on the Android platform!
    Big thanks @munjeni for allowing me to use his amazing superunpack V1 tool in the initial version. It helped me to understand how these super images work.
    Thanks @AndyYan your great tutorial also helped me a lot for automating the script especially the lpdump part.
    Thanks @bynarie for making available his otatools package! A part of it was bundled with the initial version which helped me to create this universal version. It's still part of the troubleshooting repair script to fix error 73.
    Thanks @HemanthJabalpuri for assisting me in optimizing the underlying algorithm!

    Disclaimer:
    #Disclaimer v3.0​
    This open source software is provided as is without any kind of warranty or support whatsoever.
    By using and viewing this software you agree to the following terms:
    • Under no circumstances shall the author be held responsible for any damages that may occur from the (inappropriate) use of this software (or parts thereof).
    • All responsibility, liability and risk lies with the end-user. You hereby agree not to abuse this software for illegal purposes.
    • Please don't steal, hack, crack, mod, hex-edit, decompile, rebrand and / or abuse this software or parts thereof. Thank you!
    • This software can be re-uploaded to 3rd party websites indefinitely as long as the software itself (or any parts thereof) were not modified by unauthorized 3rd parties without the original author's prior knowledge and explicit written consent
    • This software (or parts thereof) were provided for free only for non-commercial, educational, personal, legal purposes
    • To use this software (or parts thereof) for commercial purposes, please rent a commercial usage license
      Thank you very much for your support! Thanks to your amazing support I can continue working on this project and other interesting projects like this. :D(y)

    Enjoy debloating and customizing your fully read/write-able next-gen Android device! :love:(y)

    Please post your feedback, suggestions and your Olympic Android System Mods (OASMG) @ the official SystemRW / SuperRW feat. MakeRW / ro2rw by lebigmac links below. Thanks :D(y)

    https://xdaforums.com/t/universal-s...tition-converter-resizer-by-lebigmac.4247311/

    https://xdaforums.com/t/closed-the-...n-converter-erofs-rw-ext4-rw-f2fs-rw.4536821/


    v1-31d_01-jpg.5309953
    v1-31d_03-jpg.5309957


    1-jpg.5235933


    working-jpg.5525671


    Confirmed working on these devices:


    Download

    current status: experimental


    If you like this project and want to support further development of it & the creation of more amazing projects like this then please feel free to donate to the original developer lebigmac by clicking the button below. Thanks! Your support is very much appreciated!

    Donate
    25
    Thread Closed

    Hello everyone

    As helpful as @lebigmac may be, no one – not even us – is above XDA's Forum Rules. Our work as moderators usually remains in the background but it felt necessary to provide some transparency here. After consulting our team I have decided to ban the OP of this thread for three months and it will remain locked until OP requests to open it back up after the ban expires. For some of you this will come as a complete surprise and may seem unfair but I would like to stress that we have invested a massive amount of energy and a mountain of patience to come to a resolve with lebigmac. Several moderators were involved. Despite our many efforts, (s)he persisted to openly accuse people of plagiarism, inciting conflict, call out the people involved and communicated in a very condescending and demeaning way.
    We of course regret this course of action. Developers and development is everything to us but boundaries must be respected. After several earlier time-outs we had no other option but to proceed this way. We're hoping this will bring back some peace in this feud as well. With so much going on in the world we really don't need opposing developer parties. Open source is about cooperation and improving existing code, not about bitter fights over protecting your own code, which is based on the work of others anyway. One questionable screenshot aside, there hasn't been any viable proof of plagiarism provided to us related to this project.

    Thank you all for your understanding and as always we remain available to answer your questions and concerns via PM. Have an amazing day!

    Kind regards
    Timmy
    Senior Moderator
    17
    If the script works on your device please send me your log files from this folder:
    /data/local/tmp/systemrw_1.32/log/

    And please write your phone model - Android version - firmware version

    Then I can add you to the list of successful devices and it will be helpful for further development. Thank you!(y)
    17
    Allow me to add some more information to above post of my teammate @Timmmmaaahh!

    The account of the author of this thread has been permanently suspended. In your own interest, I ask everybody not to promote a banned user or his website, blog, work etc. on XDA. Thanks very much for your cooperation.

    Regards
    Oswald Boelcke
    Senior Moderator
    10
    Okay I know you guys have been waiting a long time... Thanks for your patience, loyalty, support and your interest in this amazing project for the past year! Unfortunately there's lots of dubious copycats floating around by now. Remember you saw it here first ;)(y)
    The one and only, the original
    SystemRW / SuperRW featuring MakeRW by lebigmac
    This month new version should be ready :D(y)
    I'm working on it hard 🛠️⚙️⛏️🔧✂️🔨
    Hopefully we can start beta testing in 2nd half of April May June July August September October and then it should be ready for final release :love:
    I'm so excited!


    This is awesome! Unfortunately, it doesn't support Android 12 yet : ( .

    The new version has support for Android 12 and beyond! :ROFLMAO:

    Bash:
    sdkCheck(){
        sdkVersion=`getprop ro.build.version.sdk`
        if [ $sdkVersion -lt 29 ]; then
            printf "$app: Please install Android 10 or newer and try again\n\n" && exit 1
        else
            android=$(($sdkVersion - 19))
        fi
        printf "$app: Current Android version: %s\n" $android
    }