creating pkgs on non-Darwin machines

34 views
Skip to first unread message

Clay Caviness

unread,
Dec 17, 2014, 5:32:55 PM12/17/14
to the-l...@googlegroups.com
Most things in a flat-file pkg can be created easily on most UNIX systems, except for the BOM. Thankfully, someone's spent time to reverse-engineer the file format: https://github.com/hogliux/bomutils 

With this, plus xar, you can create flat pkgs on non-Darwin UNIX.

I have an in-progress change for the luggage to support this:
https://github.com/ccaviness/luggage/compare/flatfile?expand=1

Once I get it cleaned up and tested better, I'll get it into the unixorn/luggage repository.

Timothy Sutton

unread,
Dec 18, 2014, 9:16:37 AM12/18/14
to the-l...@googlegroups.com
boot2docker has been using this method for awhile to build their OS X distribution pkg inside a Docker container:

https://github.com/boot2docker/osx-installer/blob/master/Dockerfile


I like how the DMG creation is so simple - looks to be literally just an HFS+ filesystem built on an empty file of the appropriate size:

https://github.com/boot2docker/osx-installer/blob/master/makedmg.sh#L26-L38


Tim
> --
> You received this message because you are subscribed to the Google Groups "The Luggage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Clay Caviness

unread,
Dec 18, 2014, 12:40:31 PM12/18/14
to the-l...@googlegroups.com
Good to see other people using bomutils! And that's interesting about creating simple DMGs - I had thought they would be more difficult.

> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.

> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "The Luggage" group.
To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.

Timothy Sutton

unread,
Dec 18, 2014, 12:42:04 PM12/18/14
to the-l...@googlegroups.com
I'd always assumed there was some extra magic area for checksums, etc. Maybe a compressed DMG is more complicated to do.

Then again, there's never been a real reason to put flat pkgs into a dmg in the first place except to add pretty artwork, instructions, etc.


Tim

> On Dec 18, 2014, at 12:40 PM, 'Clay Caviness' via The Luggage <the-l...@googlegroups.com> wrote:
>
> Good to see other people using bomutils! And that's interesting about creating simple DMGs - I had thought they would be more difficult.
>
> On Thu Dec 18 2014 at 9:16:37 AM Timothy Sutton <t...@synthist.net> wrote:
> boot2docker has been using this method for awhile to build their OS X distribution pkg inside a Docker container:
>
> https://github.com/boot2docker/osx-installer/blob/master/Dockerfile
>
>
> I like how the DMG creation is so simple - looks to be literally just an HFS+ filesystem built on an empty file of the appropriate size:
>
> https://github.com/boot2docker/osx-installer/blob/master/makedmg.sh#L26-L38
>
>
> Tim
>
>
> > On Dec 17, 2014, at 5:32 PM, Clay Caviness <ccav...@gmail.com> wrote:
> >
> > Most things in a flat-file pkg can be created easily on most UNIX systems, except for the BOM. Thankfully, someone's spent time to reverse-engineer the file format: https://github.com/hogliux/bomutils
> >
> > With this, plus xar, you can create flat pkgs on non-Darwin UNIX.
> >
> > I have an in-progress change for the luggage to support this:
> > https://github.com/ccaviness/luggage/compare/flatfile?expand=1
> >
> > Once I get it cleaned up and tested better, I'll get it into the unixorn/luggage repository.
> >
> > --
> > You received this message because you are subscribed to the Google Groups "The Luggage" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage...@googlegroups.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "The Luggage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "The Luggage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage...@googlegroups.com.

Clay Caviness

unread,
Dec 18, 2014, 12:58:05 PM12/18/14
to the-l...@googlegroups.com
I have this opened up in a tab: http://newosxbook.com/DMG.html

On Thu Dec 18 2014 at 12:42:04 PM Timothy Sutton <t...@synthist.net> wrote:
I'd always assumed there was some extra magic area for checksums, etc.  Maybe a compressed DMG is more complicated to do.

Then again, there's never been a real reason to put flat pkgs into a dmg in the first place except to add pretty artwork, instructions, etc.


Tim

> On Dec 18, 2014, at 12:40 PM, 'Clay Caviness' via The Luggage <the-l...@googlegroups.com> wrote:
>
> Good to see other people using bomutils! And that's interesting about creating simple DMGs - I had thought they would be more difficult.
>
> On Thu Dec 18 2014 at 9:16:37 AM Timothy Sutton <t...@synthist.net> wrote:
> boot2docker has been using this method for awhile to build their OS X distribution pkg inside a Docker container:
>
> https://github.com/boot2docker/osx-installer/blob/master/Dockerfile
>
>
> I like how the DMG creation is so simple - looks to be literally just an HFS+ filesystem built on an empty file of the appropriate size:
>
> https://github.com/boot2docker/osx-installer/blob/master/makedmg.sh#L26-L38
>
>
> Tim
>
>
> > On Dec 17, 2014, at 5:32 PM, Clay Caviness <ccav...@gmail.com> wrote:
> >
> > Most things in a flat-file pkg can be created easily on most UNIX systems, except for the BOM. Thankfully, someone's spent time to reverse-engineer the file format: https://github.com/hogliux/bomutils
> >
> > With this, plus xar, you can create flat pkgs on non-Darwin UNIX.
> >
> > I have an in-progress change for the luggage to support this:
> > https://github.com/ccaviness/luggage/compare/flatfile?expand=1
> >
> > Once I get it cleaned up and tested better, I'll get it into the unixorn/luggage repository.
> >
> > --
> > You received this message because you are subscribed to the Google Groups "The Luggage" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.

> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "The Luggage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.

> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "The Luggage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.

> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "The Luggage" group.
To unsubscribe from this group and stop receiving emails from it, send an email to the-luggage+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages