-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
background image isn't displayed in macOS sierra #121
Comments
FYI: Other major applications dmg such like Chrome or Firefox display background image as usual even on sierra beta. |
Can we know the root cause why this tool doesn't work on Sierra? I just used it yesterday, I thought it works well, but after I submitted, I found Sierra can't work, my project is under Perforce's watch, the only way is to fix .DS_Store file. |
And hi hiroshi, I think your work around way can't work since when you drag a picture into that place, the DS_Store will give it an absolute path, when you put your image in other Mac, it will still be empty. |
FYI: |
Does anyone have any thoughts or ideas what's going on with macOS Sierra? We experienced the same issue. |
I know that @cstruct came pretty far with a real .DS_Store implementation which would probably fix this. Hopefully we can get together sometime next week and just solve it™ |
No luck with GM release of Sierra. |
Just installed Sierra 10.12.0 from the App Store, doesn't work. |
It's my understanding that http://c-command.com/dropdmg/ creates them properly. If you feel it's worth it, someone could get down and dirty into the output and see what they're doing. It's too bad Apple doesn't publish the specs to the https://en.wikipedia.org/wiki/Apple_Disk_Image format. |
Any updates on this? |
Same issue here with final Sierra :/ |
|
I'm not super experienced in debugging things like this, but I attempted to dig into this yesterday and compared output with Firefox and Chrome's .DS_Store files. When inspecting the generated .DS_Store's
I couldn't find any other .DS_Store file that had whitespace/newlines before the volume name like what is generated here. Maybe that's an issue? The newline looks like it's coming from here, but I'm not 100% sure on that. I just know when printing that buffer with For comparison, here's the output when inspecting Firefox's .DS_Store,
Also, should the background image be stored in the Firefox's
Firefox's
Anyways, that's all I got. I'm going to keep digging in when I have more time. |
I was seeing that as well. When I went in with Finder and manually set the background image, the resulting .DS_Store file was a lot smaller, but I couldn't make sense of the garbage at the beginning of the blob. I'll look to see if Finder sets icvp, BKGD or pict in the fixed .DS_Store. |
I found working solution and it will be fixed in the electron-builder soon. Experimental code: https://gist.github.com/develar/95d7b9ee5e9d8b44a460ebf16a652a1a Magic in the PERL code: #!/usr/bin/perl -w
use Mac::Finder::DSStore qw( writeDSDBEntries makeEntries );
use Mac::Memory qw( );
use Mac::Files qw( NewAliasMinimal );
$name = $ARGV[0];
$bg_pic = $ARGV[1];
&writeDSDBEntries("/Volumes/$name/.DS_Store",
&makeEntries(".background", Iloc_xy => [ 560, 170 ]),
&makeEntries(".DS_Store", Iloc_xy => [ 610, 170 ]),
&makeEntries(".fseventsd", Iloc_xy => [ 660, 170 ]),
&makeEntries(".Trashes", Iloc_xy => [ 710, 170 ]),
&makeEntries(" ", Iloc_xy => [ 335, 120 ]),
&makeEntries(".",
BKGD_alias => NewAliasMinimal("/Volumes/$name/.background/$bg_pic"),
ICVO => 1,
fwi0_flds => [ 100, 400, 396, 855, "icnv", 0, 0 ],
fwsw => 170,
fwvh => 296,
icvo => pack('A4 n A4 A4 n*', "icv4", 100, "none", "botm", 0, 0, 0, 0, 0, 1, 0, 100, 1),
icvt => 12
),
&makeEntries("$name.app", Iloc_xy => [ 110, 120 ])
); |
Nice work everyone 👍 @develar Isn't |
@feross I will test solution as part of electron-builder (appdmg have 2 native extensions — it causes issues for electron-builder users) and then open PR here. It is only one simple function — generic tool is not required for me. In any case I will contribute to this project if perl requirement will be approved (well, perl is bundled). |
Because I am not fan to investigate proprietary closed format, my solution is completely different to appdmg. Instead of just fix some bytes in the
Perl module is bundled — CPAN is not required. Fixed version of electron-builder will be published soon. @LinusU If my solution (in short: use perl instead of |
Any ideas on when we'll get this fixed in appdmg? |
@develar Would love to see a pull request, even if it uses perl 💌 |
@changkun It's a bit over my head at the moment but I probably just need to read through it. |
I don't see how a perl script with confusing instructions can be considered a solution to a problem in a javascript based utility. Can someone explain it? |
What instructions? node-appdmg would simply shell out to perl, the enduser wouldn't know that it's being used at all... |
I apologize. I understand how it will work after the pull request. However there's a comment above that suggests there is a solution available right now. If there is a simple solution or workaround right now - before the pull request - I do not see it. Sorry for the confusion. |
I'm having this issue also. Would like to know when it is fixed because we also hit this one today. I'm going to try the python workaround mention above. |
I was trying to understand develars fix, but don't really understand how to apply it. Could someone describe it a bit more clearly. i.e. is that a script to fix DS_Store? Are there any other solutions available? |
FWIW, I've fixed the problem in my dmgbuild project. You need to write a "bookmark" to the |
Alastair, Is that something you could make a PR for on this repo or provide instructions on how to fix manually? I really need a working version of appdmg. If that is the only change, I could run that for now until LinusU gets to integrate it completely. thx! |
Any pr at this moment, even if the code is a bit ugly, would be highly appreciated :) |
+1 for whatever gets the job done! |
Apparently Apple reverted something since the current version works fine on macOS Version 10.12.2 Beta (16C53a) |
@annejan I suspect they broke the code for version 2 aliases, and probably didn't notice until some of us started filing bug reports. Bookmark support is the right way to go anyway — it's the long-term replacement for aliases and is more flexible. |
If anyone is interested, I made an ugly quick fix:
I know that it's bad and full of duplications (yeah, you gotta duplicate a lot of info to fixbkg.sh) + it's opening finder in the middle of it's work, but it saved me, when I needed backgrounded dmg right NOW, so for me, its enough to wait for official fix. I also think it can be improved to reduce duplication, but I'd rather wait for entirely good solution. If anyone want to - you can make it better :) Hope that helps. |
@v-vodyanov can you tell me which folders I need to place these files? I tried the obvious one: |
@alanosman well, I've placed "fixbkg.sh" right in the folder I ran "appdmg" command. You can always write absolute path instead of just "fixbkg.sh" in the first place :) As for "appdmg.js" itself, in my case (OS X) it's placed in "/usr/local/lib/node_modules/appdmg/lib/appdmg.js" |
@v-vodyanov after which step your step should be added ? I tried in different order and looks like its not executed and build doesn't fails. |
@iRobertas I've placed it after step "Making all the visuals" to make changes after appdmg additions and before temp image is unmounted. |
@v-vodyanov ye I added this step to the same place. Does your step shows in build log when executed ? |
@iRobertas yep, it is:
By the way, on the "Fixing background" step it opens temp image in finder, I guess it's ok, but can be a little confusing, that's why I don't think of it as a permanent fix. |
It seems that this issue resolved by |
I've still have the same bug on |
Works for me! Great work everyone 👍 |
The fix from @v-vodyanov worked for me. Thanks! But at first I got the error: which I simply fixed by running |
Any news on this? |
Problem solved for me on 10.12.3 (16D32) |
I think we can close this issue. macOS Sierra 10.12.3 (16D32) fixed the problem. |
Dear colleagues and friends I am using Sierra 10.12.3 on my Macbook Air. This issue still exists during the machine startup but when I logout after successfully login, I can see the background. Any help from this group is greatly appreciated. Thank you very much for your support. |
Sierra 10.13 still exists this issue |
Which build? Everything is good here on 10.13.1 (17B48) |
No problem till OS X 10.11.5.
I know sierra is beta, but I want to share an possible compatibility issue.
In the view options of mounted dmg, there is gray rect thumbnail area.

The text was updated successfully, but these errors were encountered: