<body><iframe src="http://www.blogger.com/navbar.g?targetBlogID=7625526986034013157&amp;blogName=Tim%2C+the+Enchanter&amp;publishMode=PUBLISH_MODE_HOSTED&amp;navbarType=BLUE&amp;layoutType=CLASSIC&amp;homepageUrl=http%3A%2F%2Ftim.theenchanter.com%2F&amp;searchRoot=http%3A%2F%2Ftim.theenchanter.com%2Fsearch" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" height="30px" width="100%" id="navbar-iframe" title="Blogger Navigation and Search"></iframe> <div id="space-for-ie"></div>

About

I'm a ruby developer passionate about developing clean code that makes for programming happiness. I'm also am passionate about freedom, liberty, and capitalism, and enjoy jamming out some good rock or jazz on the piano.

I reside in Saratoga Springs, UT, with my family. I'm a member of The Church of Jesus Christ of Latter Day Saints (AKA the "Mormons") and I wield a strong testimony of my Savior Jesus Christ (yes we're Christians).

I'm currently employed by:

Git OS X installer is official

Between mine and Geoff's efforts, we've finally reached a point where the Git OS X Installer is deemed "stable", and has now become an official source on Git's home page. There were a few major hurdles along the way:

HURDLES & SOLUTIONS:


HURDLE: Ruby script to update PATH and MANPATH failed on some machines

SOLUTION:

  • Convert script to bash. Ruby was less than reliable, due to the inability to predict where it was installed.

HURDLE: Binaries still referencing libs from Darwin Ports, instead of the libs we've bundled with the installer.

SOLUTION:

  • Add NO_DARWIN_PORTS=1 to the top of the Makefile
  • Put LDFLAGS="-L/usr/local/git/lib,/usr/lib" in the arguments for each of the make commands

HURDLE: Package installer size was whopping 40MB download, and 89 MB to install:

SOLUTION:

  • Converted the 80+ hardlinks (git-branch, git-remote, etc.) to symlinks. The OS X PackageMaker just doesn't respect hardlinks and was treating them all as individual duplicates of a file.
  • Stripped binaries of debug symbols after compiling via "make strip"

CONCLUSION

Now, the package has worked very well on machines that don't have the developer tools installed. The download size is 3.6 MB (instead of the original 40 MB), and it takes 9 MB to install, instead of 87 MB. That's pretty great progress in my eyes! And considering the fact neither Geoff or I have built a package for OS X before, it's a reasonably great accomplishment.

There are a few minor glitches still happening:

  • On some machines, it complains about not being able to create "/". This error does not mean git wasn't installed successfully, but it may mean that you need to download this script and run it manually, yourself. (or, set PATH and MANPATH in your environment to include /usr/local/git/bin and /usr/local/git/man, respectively)
  • Unless you launch Git GUI from the shell, it fails on fetch / push / clone over the network. You can use the "Open in Git Gui" droplet to help overcome this.

Download Git for OS X

You can leave your response or bookmark this post to del.icio.us by using the links below.
Comment | Bookmark | Go to end
  • Blogger Charmed says so:
    April 5, 2008 9:43 AM  

    Awesome work. Thanks so much for taking the time to make it easier for the rest of us to get on the git train! top

  • OpenID Si says so:
    April 11, 2008 4:39 AM  

    Great stuff. I just used your build recipe to build Git v1.5.5.

    I skipped the steps "sudo UserScripts/cplibs.sh" and "mkdir -p /usr/local/git/man" as I already had your 1.5.4.5 package installed, and changed the version numbers throughout - it was smooth sailing!

    Cheers Tim! top

  • OpenID ocean says so:
    April 18, 2008 11:04 PM  

    Hi Tim,

    I installed Git on OS X 10.5.2 using your installer the other day, and found a couple of little issues which I thought you might like to know about.

    Firstly, the installer over-wrote my ~/.bash_profile file when it added the PATH and MANPATH vars, instead of appending them. I lost the aliases that were in there, but there were only a couple, so it wasn't really a problem for me, but could be for others.

    Secondly, the installer also left the 3 post-install scripts sitting in my / directory - I would have though it better to have removed them after installation was completed?

    I do have the OS X Developer Tools installed, I see you mentioned that in the post - perhaps that has something to do with it?

    Cheers,
    Drew top

  • Blogger Tim Harper says so:
    June 10, 2008 10:16 AM  

    Hi Ocean:

    This is a late response, but your feedback has been a great help in improving the installer. These issues should have been completely resolved by now. I really didn't know what I was doing when I first started building the packages. Thanks to the feedback you all have given, I'm a bit smarter now. top