[Samsung Galaxy Nexus] osm0sis:
Since this is basically the Dev thread for Nexus Louder, in addition to being the GN device thread, and Misledz sounds like he's going to be taking a bit of a different direction with the format of these things in the future (App?), I figure I might as well post up how the cake got made! (The cake is not a lie!) :p

I wrote the install scripts and a bit of a zip building system for Misledz way back when I first got involved in the project to help him keep it all straight with a growing number of files and devices, and make it safer for people to install by having reverts. It was called the Louder Farm. This was when the package was originally in EDIFY, so the reverts had to be built with each version since the list of files changed could differ drastically, and EDIFY is too simple to handle such things. At that time Misledz had to keep track of which files were replacements and which were new in different folder trees, so that the revert would know which it had to delete or replace. This was the best we could do at the time and it was still worlds easier than Misledz or I having to make each revert by hand.

The last EDIFY version of Louder Farm I had a direct hand in was V7B5, so I've attached the working farm for it at the bottom of this post, for posterity.

This was still such a f*cking pain in the ass that it led to some inconsistency and duplicated files in different locations. I had just started becoming good with replacing the update-binary in flashable zips with shell scripts, so I rewrote the entire thing in shell: Louder Farm 2.0. I also devised the Universal revert system, where it just has the entire list of files, and if it exists, it backs it up and adds it to the list of files to be reverted, and if it doesn't it adds it to the list of files to be deleted on revert. It does all this on the fly, during the install, so it's a great scripting example, also a great example of how a simple idea can be pretty complicated in practice. ;)

The major improvement was of course that Misledz could start keeping all the files in one tree of folders and let the installer sort out which were which. Major productivity boost and headache reduction. It also allowed me to look at signing the zips automatically when they got built using Chainfire's methods. This may not have worked at the time, but I've since worked out some more of the kinks with it and you'll see that in use in the new completely shell script PA GApps which TKruzze is nearly finished. :good:

I have added the newer signing files (which may or may not work still) to the last shell script version Farm I had a direct hand in, V8Omega, and attached it below as well.

Anyway, long story short, they're Windows batch automations and they come with instructions, so it's pretty straightforward. Since all the files are in one folder with the shell version it'd also be extremely easy to update the files in the Farm using the latest Beta (for any device), so if anyone wants to mess around with them and try to carry on Misledz' work until he's back in full force for whatever the next iteration of this project may be, I think we can agree, go for it! :)

These should also be extremely helpful to anyone else looking to write a complicated multi-file mod, with an automated revert and build-system to go with it. :highfive: :cowboy: