- This topic has 9 replies, 5 voices, and was last updated 16 years, 5 months ago by
jasonpgignac.
-
AuthorPosts
-
October 24, 2008 at 3:36 am #374540
Patrick Gallagher
ParticipantI moved from b2 to b4 (things were busy for a while, wasn’t testing InstaDMG for a few months) and nothing seems to be installing from Baseupdates or CustomPKG. Am I missing something? I dont see any errors in the logs.
Contents of log:
13:14:18 ######InstaDMG build initiated######
13:14:18 ######Mounting Mac OS X installer image######
Mounting the shadow file (/tmp/BC963528-5EFE-4CBE-B6B3-42AD51834801.dmg) onto the image.
/dev/disk5 GUID_partition_scheme
/dev/disk5s1 EFI
/dev/disk5s2 Apple_HFS /tmp/instaDMGMount.gn43CN
Mac OS X installer image mounted
Running from cached image (./Caches/BaseImageCache/C7D413F6.dmg)
13:18:06 ######Beginning Installation from ######
Using Cached image, so skipping OS installation
13:18:06 ######Beginning Update Installs from ./InstallerFiles/BaseUpdates######
13:18:06 ######Beginning Update Installs from ./InstallerFiles/CustomPKG######
13:18:06 ######Correcting some generic installer errors######
Correcting symlinks that point off the disk
Closing programs that have opened files on the disk
Deleting Extensions.mkext cache file
Deleting cache files created during installations
14:18:30 ######Creating the deployment DMG and scanning for ASR######
Rename the deployment volume: InstaDMG
Volume on disk5s2 renamed to InstaDMG
Create a read-only image
“disk5” unmounted.
“disk5” ejected.
MESSAGE:Preparing imaging engine…
MESSAGE:Reading Protective Master Boot Record (MBR : 0)…
PERCENT:0.000000
PERCENT:0.000000
MESSAGE: (CRC32 $B9D57727: Protective Master Boot Record (MBR : 0))
MESSAGE:Reading GPT Header (Primary GPT Header : 1)…
PERCENT:0.000000
MESSAGE: (CRC32 $F29B518B: GPT Header (Primary GPT Header : 1))
MESSAGE:Reading GPT Partition Data (Primary GPT Table : 2)…
PERCENT:0.000005
MESSAGE: (CRC32 $83A1C75E: GPT Partition Data (Primary GPT Table : 2))
MESSAGE:Reading (Apple_Free : 3)…
PERCENT:0.000006
MESSAGE: (CRC32 $00000000: (Apple_Free : 3))
MESSAGE:Reading EFI System Partition (C12A7328-F81F-11D2-BA4B-00A0C93EC93B : 4)…
PERCENT:0.043545
PERCENT:0.065029
PERCENT:0.065111
MESSAGE: (CRC32 $125D7C7B: EFI System Partition (C12A7328-F81F-11D2-BA4B-00A0C93EC93B : 4))
MESSAGE:Reading Untitled (Apple_HFS : 5)…
PERCENT:0.069098snip progress
created: /Volumes/OS/InstaDMG_1.4b4/OutputFiles/10-23-08.dmg
Scanning image for ASR: ./OutputFiles/10-23-08.dmg
Block checksum: ….10….20….30….40….50….60….70….80….90….100
Block checksum: ….10….20….30….40….50….60….70….80….90….100attaching “/Volumes/OS/InstaDMG_1.4b4/OutputFiles/10-23-08.dmg”.
getting information for “/Volumes/InstaDMG”.
asr: successfully scanned image “/Volumes/OS/InstaDMG_1.4b4/OutputFiles/10-23-08.dmg”
ASR image scan complete
14:31:52 ######Cleaning up######
Ejecting images
Removing scratch DMG
14:31:52 ######InstaDMG Complete######[b]Contents of pkg log:[/b]
13:14:18 ######InstaDMG build initiated######
13:14:18 ######Mounting Mac OS X installer image######
Mounting the shadow file (/tmp/BC963528-5EFE-4CBE-B6B3-42AD51834801.dmg) onto the image.
Mac OS X installer image mounted
Running from cached image (./Caches/BaseImageCache/C7D413F6.dmg)
13:18:06 ######Beginning Installation from ######
Using Cached image, so skipping OS installation
13:18:06 ######Beginning Update Installs from ./InstallerFiles/BaseUpdates######
13:18:06 ######Beginning Update Installs from ./InstallerFiles/CustomPKG######
13:18:06 ######Correcting some generic installer errors######
Correcting symlinks that point off the disk
Closing programs that have opened files on the disk
Deleting Extensions.mkext cache file
Deleting cache files created during installations
14:18:30 ######Creating the deployment DMG and scanning for ASR######
Rename the deployment volume: InstaDMG
Create a read-only image
Scanning image for ASR: ./OutputFiles/10-23-08.dmg
ASR image scan complete
14:31:52 ######Cleaning up######
Ejecting images
Removing scratch DMG
14:31:52 ######InstaDMG Complete######Folder layout:
[url]http://patgmac.googlepages.com/Picture2.png[/url]Thanks.
October 24, 2008 at 8:20 am #374541trondah
ParticipantTry naming your folders 01 02 03 and not 01-foo 02-bar 03-baz.
October 24, 2008 at 12:59 pm #374543Patrick Gallagher
Participant[QUOTE][u]Quote by: trondah[/u][p]Try naming your folders 01 02 03 and not 01-foo 02-bar 03-baz.[/p][/QUOTE]
Thanks for the suggestion, but no, that still didn’t work.
November 5, 2008 at 12:52 pm #374661Patrick Gallagher
ParticipantAny other ideas? I’m still having a problem. I re downloaded b4 and put only the 10.5.5 update in there and it still doesn’t touch it. Am I missing a step that was added between b2 and b4? InstaUp2date is optional, correct?
November 5, 2008 at 5:15 pm #374672Patrick Gallagher
ParticipantI renamed all my baseupdates and custompkg folders to only be 01,02,03, etc. It wasn’t working with “01 packagename” or “01-packagename”. This naming used to work in b2, correct?
November 6, 2008 at 6:55 pm #374691knowmad
ParticipantSo … it did work with just 01,02,03…?
ie, is your issue resolved?November 7, 2008 at 11:45 am #374702Patrick Gallagher
Participant[QUOTE][u]Quote by: knowmad[/u][p]So … it did work with just 01,02,03…?
ie, is your issue resolved?
[/p][/QUOTE]Yes, it is working now after renaming the folders like that.
November 9, 2008 at 2:02 pm #374710jasonpgignac
ParticipantI’m not an awk programmer, but I think the problem is in line 667:
/bin/ls -A1 “$SELECTED_FOLDER” | /usr/bin/awk “/^[[:digit:]]+$/” | while read ORDERED_FOLDER
This is the line that lists out a given folder (in this case, the base updates folder, or the custom pkg folder), and feeds into, basically, a foreach loop. The voodoo that I’ll admit to not fully understanding, but that looks look the problem, is the awk in the middle. As an example, I made a folder, awktest, with some test folders inside of it. Look at this output test:
SAOTXML-5281YK0:awktest ugignja$ /bin/ls -A1 ./
01
02
03-Hello
04-Update 3
So you can see the folder structure I created. Now, run through this awk applet:
SAOTXML-5281YK0:awktest ugignja$ /bin/ls -A1 ./ | /usr/bin/awk "/^[[:digit:]]+$/"
01
02
SAOTXML-5281YK0:awktest ugignja$
So, basically, that awk section’s entire purpose is to winnow out any folders that contain characters that are not digits, it seems to me. *IF* you left spaces out your folder names, to relieve any escape issues (I don’t know if there is any, I’m just being safe, here), then I THINK (though I haven’t tested it, this is just from reading source code) you could strip out the awk part of the command on that line, and be able to use any folder name you like.
Developers, perhaps you could offer some insight into the purpose of restricting folder names? I would think it would be simpler to just have documentation say that folders need to be set up to sort in the order they need to be installed, and leave naming conventions to the technician? Just a thought, like I said, possibly I’m missing something?
November 10, 2008 at 8:02 pm #374716larkost
ParticipantI was the one who put that bit of code into place, and the thinking was to make sure that the sort order was completely predictable. I also wanted to make sure that odd things such as .DS_Store and ._ files did not make it in. Given those goals, enforcing the documented names seemed like a reasonable measure. And since I was working on InstaUp2Date at the time, i just lined up the names the one produced to exactly the names that the other allowed, and vise-versa.
We could probably relax this to allow a numeric component and then a text component, but to me this points out exactly one of the places where I thought the InstaDMG set-of-folders approach was a less-than-optimal design. This is one of the reasons I created InstaUp2Date: you can have full names attached to all the items and they have no bearing on the order they get run. It looks like the two codebases will get merged at some point in the future.. so eventually the whole conversation will go away.
And I don’t think that spaces in the names is going to matter at all. I was pretty anal about making sure that things are escaped where ever possible. And I think that needing to start things out with 0’s is already confusing enough to people. Making them understand that ‘a’ comes after both ‘A’ and ‘Z’ (because of case-sensitive sort order) is not really going to work in most cases.
November 11, 2008 at 1:01 am #374718jasonpgignac
ParticipantI can certainly see the point of having a guaranteed sort order, but this seems more like a ‘best practice’ than a programmatic limitation. I can more see your point about avoiding extraneous files (the examples you mentioned could be easily overcome by, say, testing to see if the given items are folders, but I can see the case in which an errant folder could end up there as well.
The XX-String model is certainly a good option. I wonder if adding a file extension to the folder name, or something might be intuitive? I’d say, in fact, just making bundle file, which could offer other advantages as well, but this might be a bit of impediment for the new user, I suppose. But, I wonder if maybe just having the folder named, say “01-Fake Update.instadmg” would do a good job of offering maximum flexibility in naming, while simultaneously making it clear what the folder is, semantically?
It also, I think, might be a good planning mechanism for a future state, where we want to develop a proprietary format? Imagine, for instnac,e a future condition in which apple releases two versions of it’s updates, a .pkg file, and a .instadmg file that’s pre-edited to work optimally with the instadmg process (I’m thinking, here, of all the packages I’ve hade to edit ever-so-slightly to make them work with instadmg). As instadmg is developing into a bonafide standard, I’m just thinking we may as well leave ourselves room to develop future standards?
Just my two scents, quite possibly I’m dead wrong
-
AuthorPosts
- You must be logged in to reply to this topic.
Comments are closed