Mac OS X Packages
Here is some software I found useful on Mac OS X, mostly UNIX / server type packages.
By popular request, I have created a PayPal account to which you can donate using a credit card.
I want to make it clear that there is no obligation to pay anything. The software and information on this site is and will continue to be absolutely free. I am just offering this because so many people have specifically and repeatedly asked for it.
Money donated to this PayPal account for PHP will be used exclusively to pay for my cable leased line and commercial hosting account expenses (currently about US$ 70.- per month), thereby directly supporting this web site.
Any excess money will be donated to Amnesty International to support their efforts to protect human rights worldwide.
I played around with cafepress for fun, you can buy some entropy.ch logo merchandise there.
What’s available?
There are two kinds of packages here: Other people’s Open Source software which I am building and packaging for convenient installation on Mac OS X, and some software written by me, mostly for Mac OS X but not exclusively.
| UNIX Ports Packages |
|---|
| PHP5 Apache Module |
| MySQL Database Server |
| PostgreSQL Database Server |
| TCP Flow Recorder |
| ImageMagick Image Manipulation Tools |
I no longer maintain Ruby, OpenLDAP, or bzip2 packages. They are now included in Mac OS X or can be installed using MacPorts. See the RubyOSX Project for an up to date Ruby distribution for Mac OS X. If you are interested in Ruby exclusively for Rails development, you might also want to check out Locomotive.
| My own OS X software | Compatible with | |
|---|---|---|
| 10.4 | 10.5 | |
| Docs and tips I wrote up (NEW Mac OS X customization tips!) | ||
| CoreImageTool, a command-line interface to Apple’s Core Image image processing technology introduced in Mac OS X 10.4. | yes | yes |
| LogitechLCDTool, provides missing Mac support for the Logitech Z-10 USB speaker system. | yes | yes |
| Album Artwork Assistant, finds and embeds album artwork into iTunes music tracks. | no | yes |
| XML View Plugin, a Safari plugin that displays XML data. See this blog post for more information. | no | yes |
| Cablecom hispeed SMS widget, Dashboard widget for customers of the Swiss cable ISP Cablecom. | no | yes |
| EpegWrapper, a very fast JPEG thumbnailing library for Cocoa developers. | no | yes |
| iTunes CD Barcode, an application that selects and plays music in iTunes by scanning barcodes on your CD covers. | unknown | unknown |
| Quartz Extreme Check, an application that checks if Quartz Extreme acceleration is active. | yes | yes |
| QTFastStart, fixes H.264 videos for progressive download playback in the Flash player plugin. | yes | yes |
| BBEdit XSLT Language Clipping Set, a clipping set supporting XSLT authors in BBEdit. (NEW) | yes | yes |
| BBEdit Ant Language Clipping Set, a clipping set supporting authors of Apache Ant Java build description files in BBEdit. (NEW) | yes | yes |
| BBEdit JSP Language Clipping Set, a clipping set supporting JSP authors in BBEdit. (NEW) | yes | yes |
| BBEdit Perl Language Clipping Set, a clipping set supporting Perl programmers in BBEdit. (NEW) | yes | yes |
| BBEdit Java Language Clipping Set, a clipping set supporting Java programmers in BBEdit. (NEW) | yes | yes |
| BBEdit Bourne Shell Clipping Set, a clipping set supporting authors of Bourne Shell (e.g. bash) scripts in BBEdit. (NEW) | yes | yes |
| TestXSLT, an application for learning and applying XSLT transformation | yes | partially |
| Bitmap Layout Helper, a customizable application for measuring rectangular areas on images. | yes | yes |
| Checksum is a Cocoa wrapper around the openssl tool for calculating MD5 and other checksums (message digests) of files | yes | yes |
| LeanCalc is a Cocoa calculator program. | yes | yes |
| Open Terminal Toolbar Script | yes | yes |
| Character set conversion scripts in Perl for BBEdit and stand-alone use (NEW) | yes | yes |
Packaging Guidelines
Generally I made these changes from the original filesystem layout:
- man pages go into
/usr/local/share/man - binaries go into
/usr/local/bin.
When I create these packages, I try hard to make them work like integrated parts of Mac OS X. I closely stick to the way Apple does things and try make the software work with the system, not against it.
My packages always target the stock components of the currently shipping version of Mac OS X as delivered by Apple, i.e. the Apache 1.3 web server and not the most recent 2.0, the 5.8 Perl release etc. I will switch when Apple switches. If you are interested in the most recent, bleeding-edge versions, check out the web site of Server Logistics, they have many nice and up-to-date Mac OS X packages there.
The goal here is to work with an out-of-the-box OS X installation.
tcpflow packet sniffer
NOTE: I no longer maintain this package because recent versions of Mac OS X include a version of the similar utility tcpdump with support for some new options that do about the same as tcpflow. Try sudo tcpdump -s 0 -A -i en0 port 80
Versions for newer OS versions are available via MacPorts.
The TCP flow recorder based on the libpcap packet capture library.
Try sudo /usr/local/bin/tcpflow -i en0 -c port 80 in a terminal window, and then do some surfing in your browser
Take a look at the short Introduction I wrote some time ago or the man page for details about the usage.
ImageMagick image tools
NOTE: I no longer maintain this package because there are official binaries at imagemagick.org
The ImageMagick image manipulation package.
These are command-line tools and libraries, there’s no graphical user interface.
The package is very useful for automated image manipulation in web applications, e.g. high-quality image scaling, sharpening, rotation etc.
Quartz Extreme Check
QuartzExtremeCheck-1.2.app.sit
This is a small Cocoa app that checks if the machine is using Quartz Extreme (OpenGL acceleration for Quartz) in Mac OS X 10.2 and higher.
Source code available upon request.
Cablecom hispeed SMS Widget
A Mac OS X 10.4 Dashboard widget that allows subscribers of Swiss cable ISP Cablecom’s hispeed service to send SMS messages to mobile phones. You need an account on the your.hispeed.ch portal to use this widget.
NOTE: Mac OS X 10.4.7 broke versions 1.4 and earlier of this widget. If it doesn't work for you, re-download the latest version.
Features:
- The widget pulls up a list of all Address Book contacts with mobile phone numbers
- It shows the current/remaining number of service points
- It 1.) remembers the email address and 2.) tries to fetch the password from the keychain. An existing keychain entry created by Safari during a prior visit to your.hispeed.ch is reused if found, otherwise you can create a new one with the settings shown below.

If there are problems please e-mail me a detailed report including the output that appears in the Console Utility.
A non-dashboard, free alternative: SwissSMS with plugins for various SMS services, by Nicolas Seriot.
A non-dashboard, non-free alternative: Luscious SMS with JavaScript-based plugins for various SMS services, by Treeinspired Software.
EpegWrapper
This is of interest to software developers which use Apple’s Cocoa application frameworks to write applications that display large amounts of JPEG images. It is a thin Objective-C wrapper around Carsten “Rasterman” Haitzler’s fantastic epeg library (which is itself based on the IJG libjpeg library and part of the larger Enlightenment Window Manager project). Epeg is a very fast JPEG thumbnailing library written in C.
This wrapper class adapts the raw epeg C library to Objective-C and it also adapts the libjpeg image memory formats to the NSImage class ubiquituous in Cocoa.
The download package contains an Xcode project which is set up to create a universal binary Objective-C framework bundle. It is self-contained without any additional dependencies, you can simply include the built framework into your own Xcode project.
Features
- Ridiculously fast :-)
- Very simply API
- Free BSD licensing, like Epeg (BSD)
If there are problems please e-mail me a detailed report including the output that appears in the Console Utility.
License
As noted above the library is free and BSD-licensed, but I would appreciate a credit in your application’s about box and/or documentation, and if you feel really generous a free license if it’s paid software. If you use the framework, tell me about it in any case, as noted in the next section.
Programs using this library
I originally wrote the EpegWrapper framework for the Cocoa batch image upload client of the snapmania online photo management service which we develop at work.
Since then this framework has been included in quite a few image-oriented Mac OS X applications and I’m always happy to hear about new ones. If you use this framework, please let me know about it so I can include your application in this list:
- Sandvox / iMediaBrowser
- Posterino
- MemoryMiner
- snapmania.com batch image uploader
- Phoenix Slides
- Filegazer
- Shoebox
- Stunt Software’s PhotoBooth (to be renamed soon...)
- Phoeto
API
The API is really simple:
You pass in a filename and an NSSize which indicates the desired bounding box of the thumbnail. EpegWrapper will create an image that fits in the bounding box while preserving the original aspect ratio, i.e. it will never squeeze your image.
There’s also some discussion about thumbnailing here.
Checksum
This program calculates file checksums (SHA-1, MD5), useful to verify downloads.
You can drag-and-drop files onto the window to calculate checksums.
QTFastStart
This is a Cocoa wrapper around the qt-faststart.c program by Mike Melanson. qt-faststart reorders the components of an H.264 MPEG4 video file to enable progressive download playback of certain H.264 videos in the Flash Player browser plugin. Read Tinic Uro’s description of the issue.
I whipped this up in 10 minutes and it is fairly raw...
Source code: QTFastStart.src.zip
LeanCalc
This is a Cocoa calculator program based on the calc library. I wrote it because I thought the world needed yet another calculator program :-)
It can be used for simple arithmetic as well as complex calculations, thanks to calc’s large built-in function library (check out the reference in the application’s help menu). All calculations are kept in a history and you can reuse the results of the last few calculations in the history directly using keyboard shortcuts.
Screenshot
Source code
TestXSLT
TestXSLT is a small, AppleScript-able Cocoa application for experimenting with the XSLT and XSL-FO languages on Mac OS X.
It uses the Sablotron, Gnome Libxslt, Saxon and Xalan-J XSLT processors, the FOP XSL-FO rendering engine, has lots of new features and a friendly user interface that makes playing around and learning XSLT fun.
Some features which were added recently like interactive well-formedness checking while you type or a tag completion feature also make it useful as a general-purpose XML editor.
Screenshots
- Document window with XML input text area
- XSLT input text area
- XSL Parameter input
- Result view - raw text output
- Result view - XSL-FO rendering
- Result view - HTML rendering
Source code
Some things in the source code which might be useful for Cocoa programmers:
- An NSTextView subclass that accepts files and not just text snippets for drag and drop. It is designed to be reusable in other applications and you are free to use it.
- Suite and terminology files for Cocoa’s built-in AppleScript support.
- Handling C-style function callbacks into an Objective-C class from the Sablotron library.
- Calling Java code using the Java bridge
- Calling Java code using the Java bridge (using a separate thread for AWT as required by JDK 1.4.2 and higher).
- Embedding the WebKit HTML Rendering engine
- and more...
Bitmap Layout Helper
Bitmap Layout Helper helps you measure rectangular areas on images. See this blog entry for details.
Screenshot
Source code
Some things in the source code which might be useful for Cocoa programmers:
- Draggable NSView subclass
- Embedded JavaScript interpreter thanks to WebKit. Interaction between Objective-C model objects and JavaScript code.

