I ported MultiROM and its custom TWRP recovery to Samsung Galaxy Express AT&T – codename expressatt, model number SGH-I437 (also compatible with the NFC version SGH-I437P and with any device that can run the CyanogenMod build for expressatt). Note that, as I said above, kexec-hardboot hasn’t been ported, so it’s pretty much useless as of now. You can still use the recovery, though, or install MultiROM as well and brag 😉
How to install it
To install the recovery, please use Heimdall, Flashify or make yourself an ODIN-flashable tar (guides are online, Google them, or better, DuckDuckGo them 😉 ). After you flash TWRP, it will be easier to update it: copy the image on your phone, go into recovery, Install, then tap the “Images” button on the bottom right; you’ll then be able to select the image and flash it.
To install MultiROM, simply flash the provided MultiROM zip with TWRP. You can edit its settings in the recovery under Advanced, MultiROM. MultiROM will show up on next reboot 🙂
Building it (on a CyanogenMod 11 tree)
Follow the instuctions on how to build CyanogenMod 11 for ExpressATT (if they don’t exist, just pick any other device’s instructions – such as “flo” – and replace “flo” with “expressatt”). However you don’t need to start the build (unless you want to; stop right before “croot; brunch expressatt”). Instead, create a new xml file (e.g. “multirom.xml”) in .repo/local_manifests and paste the content of this gist in that file:
Then run repo sync to download the patched repositories. To start the build, run make -j4 recoveryimage multirom_zip (replace “4” with the number of cores of your computer’s processors, times 2 if you have an Intel CPU with HyperThreading). The generated images/zips will be saved in out/target/product/expressatt/. Always remember to run “source build/envsetup.sh; breakfast expressatt” before starting the build in a new terminal, to make sure all the needed variables are loaded. Between one build and another you should run make installclean to remove the generated files, and if you edit the configuration files, make clobber to clean the whole output directory, otherwise your changes will be discarded.
If you’re running Ubuntu 15.04 (or if you installed Jayatana from PPA) you need to run unset JAVA_TOOL_OPTIONS to make sure Jayatana is disabled. Due to a bug in Android’s build system, the build won’t start unless you unset it because it will not be able to detect which version of Java you have in your computer.
Hope you found it useful. Cheers 😉