[Moto G4 Guides, News, & Discussion] MoseIlla:
**WARNING** I TAKE NO RESPONSIBILITY FOR ANYTHING THAT HAPPENS TO YOU, YOUR MOM, YOUR DEVICE, OR ANYTHING ELSE THAT HAPPENS IN YOUR LIFE AS A RESULT OF FOLLOWING ANY INFORMATION/INSTRUCTIONS I OR ANYONE ELSE POSTS IN THIS THREAD. EVERYTHING YOU DO IN YOUR LIFE IS AT YOUR OWN RISK AND THIS IS NO DIFFERENT. DO NOT CONTINUE IF YOU'RE GOING TO BLAME ME FOR ANYTHING AT ALL.

This is mostly going to pertain to the oem.prop file located in /oem on your device because that's where my work ended up taking me.

So in my research and impatience I've discovered a few things about the Amazon variant of the Moto G4:

The 32GB model of the Amazon variant *can* be bootloader unlocked, just follow the normal instructions.

The athene_amz descriptor in ro.product.name in oem.prop prevents Amazon variant users from installing stock ROMs not specifically meant for the Amazon variant.

ro.product.name in oem.prop can be modified.

Some things I'm working on:

Trying to find a copy of the non-Amazon oem.prop.

Seeing if there's anything else that needs to be done to the Amazon version to show completely as the default USA model.

Some questions:

Is anyone willing to send me a copy of their oem.prop from their standard Moto G4 USA/NA oem.prop?

I'm having some radio/SIM issues with AOSP/Lineage-based Nougat ROMs, I'm on a Sprint-based MVNO. Is anyone else having these issues?

After modifying oem.prop which stock ROMs work with the Amazon variant?

Does anyone have a more efficient way of mounting /oem? My method will be described below.

That's it for the lists, I just thought since some of this stuff was new or not well organized that I'd make it easy to understand my key points.

The reason you would want to modify oem.prop, which contains the basic information about your device no matter what ROM you have installed, is because when you try to install stock ROMs they check for at least these 2 things: They check your phone's model and your currently installed firmware. I believe the soak test release looks for the latest available version of Marshmallow (64/65), which should be the same as the Amazon variant... but even with an unlocked bootloader it will still refuse to install because instead of showing up as just "athene" in oem.prop it shows up as "athene_amz" and refuses to install. For the Indian release it looks for an *older* revision of Marshmallow (63/64) and refuses to install for that reason and because of the ro.product.name descriptor in oem.prop. If you're looking to install a stock ROM besides the Amazon versions it's imperative to make these changes. There are a few other reasons as well. I've seen people talk about successfully relocking their devices, I haven't done any research on this but if you're looking to sell or gift your device you may possibly be able to fully convert it to a standard Moto G4 using the non-Amazon ROMs and update line through these means.

So here's what I did to modify my oem.prop:

Find and download a stock ROM for a Moto G4/Plus variant you know to be incompatible with your device (I used the soak test).

Plug phone into computer via USB.

Push the zip file to your phone/SD card.

Reboot to custom recovery (I'm using the latest TWRP).

Attempt to flash ROM.

Go to your PC and open up ADB shell.

Enter the command

mount -o rw,remount,rw /oem

Via ADB shell navigate to /oem and pull oem.prop

Create a back up of oem.prop on your PC for posterity. I highly recommend that you do not skip this step.

Open oem.prop on your PC and change all instances of "athene_amz" to "athene" (without any quotes).

Rename the oem.prop on your device to oem.prop2.

Push your modified oem.prop to /oem

Enter the command

mount -o ro,remount,ro /oem

Enjoy your new ability to flash non-Amazon stock ROMs!

A few notes:

The reason I had to make an invalid flash attempt is because I couldn't figure out how to get /oem to mount otherwise. Normally the folder appears completely empty and I don't know where the files are nested in the filesystem. Even using the mount command I was unable to do so.

I have yet to install a stock ROM on my device because after unlocking my bootloader I immediately flashed Lineage thinking I'd have no issues with it. I did have issues and I had read something that lead me to the impression that I had to flash a modem file to my phone to get it to work properly. After being unable find it I went in search of a stock Nougat ROM thinking the update from that might flash the necessary firmware. The error from that attempt is what lead me to figuring what I've posted about oem.prop... but sadly in order to install ANY stock ROM I'll need to go through the lengthy downgrade process... which I will as I experiment but since this G4 is my primary device it'll be some time before I get too deep into it. Lineage works fine enough for now. Hopefully there's a fix soon. But it's worth stating that the reason I was refused the stock ROMs is because of the installed ROM version rather than the variant as it was before.