InstaUp2Date update
I got a question off-list and I thought I would post the answer here so that anyone else who has questions can get the answer as well. The basics of the question is about what changes have I made in InstaUp2Date to integrate it with the latest version of InstaDMG.
I am going to be referring to the version in SVN at the moment. Specifically checkin #94. I am a little fuzzy about the differences between that and 1.4b3....
The changes:
1) InstaUpToDate became InstaUp2Date, and now lives in the InstaDMG subversion repository. The latest version will always be there, and for the moment be in HEAD.
2) The first is that I am leaning heavily towards using dmg's in InstaDMG. So for the moment I have removed the code the downloaded a dmg and pulled out a specific pkg in the dmg and used that. Instead I am relying on the idea that any dmg pulled down will only have pkg's that you want to run. I do realize that this generalization is not universally true, but for the moment it is the generalization I am making.
I have an idea for how to allow InstaDMG to be more intelligent about this that would give the benefits of both approaches, one that would not sacrifice the potential of using just dmg's. However I need to get some things done in the other portions of my job, so this is probably not going to be done immediately.
The new dmg type just requires 3 fields: name, location (http or local), and checksum. Examples can be found in the included catalog file (see vanilla.catalog).
3) I have added a few variables to the catalog files that allow you to set the output file and volume names for InstaDMG (I added those command line switches to InstaDMG for exactly this reason). I
4) I worked on the path handling mechanisms so that InstaUp2Date can handle its new location relative to InstaDMG (it is in AddOns). I also took the time to make sure that you can call InstaUp2Date from any folder, and it will auto-adjust it's current working directory to run correctly.
5) I have touched up the checksum.py program to give you a line that could be used in a catalog file so you don't have to translate it. I plan on going though and re-doing this to also handle the download of http, but that will take a back seat for a while.
6) I have introduced a -p (--process) flag that will run InstaDMG after a successful run of InstaUp2Date. If you are going to use this, then you need to run InstaUp2Date as root, so that InstaDMG will be run the proper way. I am thinking over how to do this with a bit more savvy without compromising security, but have not come up with good ideas yet.
I am happy to answer questions, but it is probably better that they be directed to this forum, as then I can answer questions only once.