Coder Social home page Coder Social logo

creating dmg files about osxcross HOT 6 OPEN

tpoechtrager avatar tpoechtrager commented on July 22, 2024
creating dmg files

from osxcross.

Comments (6)

noscript avatar noscript commented on July 22, 2024

osxcross is just a toolchain. What it has to do with creating dmg?

from osxcross.

geoff-nixon avatar geoff-nixon commented on July 22, 2024

osxcross is just a toolchain. What it has to do with creating dmg?

Ha ha. But seriously, yeah. Just create an image formatted ISO or UDF, add .dmg, presto.

from osxcross.

maci0 avatar maci0 commented on July 22, 2024

The toolchain does not contain Rez and DeRez, and some other tools.
Also simply creating a .dmg file with genisoimage doesn't give you the look and feel of a native mac app bundle including icons and so on.
The goal is to be able to create a shippable product and not just some lose binaries.
Also I specifically said "for future reference" since I thought some people in this particular community might be interested.
A more constructive contribution than simply doubting the need would have been appreciated.

from osxcross.

noscript avatar noscript commented on July 22, 2024

The toolchain does not contain Rez and DeRez, and some other tools.

They are not open source.

Also simply creating a .dmg file with genisoimage doesn't give you the look and feel of a native mac app bundle including icons and so on.

This doesn't seem to be osxcross goal.

A more constructive contribution than simply doubting the need would have been appreciated.

If you are looking for references, creating fancy dmg:
https://pypi.python.org/pypi/dmgbuild

Working with dsstore:
https://pypi.python.org/pypi/mac_alias
https://pypi.python.org/pypi/ds_store

from osxcross.

h0tw1r3 avatar h0tw1r3 commented on July 22, 2024

I'm using https://github.com/andreas56/libdmg-hfsplus with buildbot. While you can technically create them with genisoimage, there are two drawbacks. Can't set extended attributes (setting background image, or creating symlinks), all files will be read only and the permissions carry over when copying off the dmg. So, when the user copies the application to their desktop and tries to delete it later, Finder will popup asking for permission (password).

$ OUTSIZE=$(du -S ./disklayout/) # get the output disk size
$ dd if=/dev/zero of=temp.dmg bs=1124 count=${OUTSIZE}
$ mkfs.hfsplus -v "Project Name" temp.dmg
$ hfsplus temp.dmg addall ./disklayout/
$ hfsplus temp.dmg symlink " " /Applications
$ dmg dmg temp.dmg compressed.dmg

This is essentially what Firefox will be using soon. They are going to be cross compiling OSX on linux very soon.

from osxcross.

geoff-nixon avatar geoff-nixon commented on July 22, 2024

@maci0

  1. As @noscript's answers implies, what makes "fancy" .dmgs fancy is completely independent of how the disk image is formatted. Likewise, tools like Rez and DeRez are very much deprecated; this information is now stored in files like .DS_Store and .background, which you can create yourself with on another platform with some ingenuity. But I'd agree this really isn't an issue for osxcross, any more than the reverse would be an issue for, say, crosstools-ng.
  2. I wouldn't say "node-appdmg" is close to cross-platform so long as it still calls utilities like hdiutil...

from osxcross.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.