[Android Software Development] Zackptg5:
[MENTION=5368959]Shadowghoster[/MENTION] is busy so I forgot about it (sorry!). I just thought about how to make it better and here it is: https://www.androidfilehost.com/?w=files&flid=153690

This is a big update that should hopefully squash any issues related to the module itself. Important notes:

Installation instructions have changed:

Flash rom, magisk, arise, arise magisk compatibility module.

Note: ORDER DOES NOW MATTER

How this module works compared to the old ones:

During the magisk module installation, it moves all scripts installed by arise (both su.d and etc/init.d) into a new folder (arisescripts) in the module directory. Prior to this, if arisescripts folder already exists and arisesound_services is found in init.d, arisescripts is removed prior to this to prevent any goofy setprop stuff from happening (arisescripts folder is not removed if arisesound_services isn't found in case you're reinstalling the module or something). This way, if for example, you flashed arise and the module and then later decided to add only the sony suite, all of the current scripts in arisescripts that are still relevant won't be deleted (but if you installed arise all over again, it will be deleted). Any selinux modifying scripts are deleted as they are not needed. Arisesound_services (sort of the "master script" as I like to think of it, is modified so that all of the variables in it for the script paths point to this new directory. The module itself is then only a post-fs-data script that sets the sepolicy (this is dependent on selinux modifying scripts found during the installation) and then runs the scripts in arisescripts.

So basically, it eliminates the possibility of init.d enabled kernels running these scripts and screwing things up like in previous versions of the module where magisk would run a script and then the init.d script would run a second time. Here's a breakdown of the process tree for anyone who's curious:

Boot initiated -> post-fs-data script runs (sepolicy set), script calls arisesound_services -> arisesound_services then calls all other present scripts to run -> zygote beings/android boots

This module is for all version of 3.x versions of arise.

Pre 3.x versions of arise do not have this arisesound_services script, and in fact have no init.d scripts at all. All of scripts use su.d instead. As a result, I had to restructure the module above to reflect this. So anyone using pre 3.x versions of arise need to use the Legacy module. The legacy module operates similarly but uses the arisesound_setprop as the indicator instead.

Any prior arise modules (including aroma) are now defunct as this new method of piggybacking off of existing arise infrastructure makes far more sense, is compatible across all devices that are compatible with magisk (regardless of arise setup), and is easy (no options for the user to set, just flash the zip and you're done)

Some important notes about upgrading arise version now with this module:

Since it is dependent on the scripts set in place by arise, as printed in all caps above, the order does matter. The main arise installer must be flashed before the magisk module zip.

What this means for you:

It means less hassle. Just flash the zip and your done. No need to worry about what options to pick from or wondering if your recovery works with aroma, it just works

Furthermore, because of how this now works, unless the arise team adds/removes/changes file names and/or paths for these scripts, this module will never need updated and so should be good with ALL versions of ARISE. BOOM. This is exciting :D

So if you're on arise 3.x, use the normal compatibility module. If you're on pre 3.x arise, use the legacy one.

Both the regular and legacy modules have the same MODID for magisk so the modules will overwrite each other rather than install side by side if you decide to switch between normal and legacy (less hassle)

Edit:

Forgot to mention this: Remove all older version of the arise magisk module before installing this one. It's going by a new naming scheme and so the old one won't be removed by default. This module also required magisk v11.6 so update if you haven't yet