Porting Unix Command-Line Tools to Mac OS X
An anonymous reader writes "Over at Apple has posted a technote on porting Unix programs to Mac OS X. Nothing earth-shattering, but nice to see it all collected."
← Back to Stories (view on slashdot.org)
- Texshop is a wrapper around Latex.
- cocoaspell is a wrapper around the Unix spell checker aspell
- GPG Mail is a wrapper around the Gnu PGP implementation so that Mail.app can handle PGP.
Those are just the first that came to my mind, there are many others. The fact that program interfaces are different does not mean that porting applications and components is useless, it simply means that a new interface will be needed.The intersting thing is that the service menu is something very Unixish, many command line utilities would make good services. For those that don't know OS X, services are components that take the current selection and apply some treatement on them. There are services that search google, do text transformation, ec...
Well, if your a unix head, using a mac, and have been under a rock for a long time, here ya go
r macosx.html An x11 server that uses quartz extreme (or whatever you want to call it)
http://www.osxgnu.org/ Go here for packages to install.
http://fink.sf.net Wow, apt-get for os x
http://finkcommander.sf.net Wow, a gui for fink
http://www.apple.com/downloads/macosx/apple/x11fo
There are many other things to use, too
I use GPG Mail with Mail.app and it's great, combined with GnuPG for OS X.
I also use Tiny Fugue in the terminal to connect to a journal community chat server. You need Apple's free Developer Tools to build it though, but it works perfectly.
I also use NcFTP for all my ftp needs. It used to be included with 10.1.x, but Apple stopped shipping it with 10.2.x, instead favouring the basic BSD ftp, which they improved in Jaguar. I prefer NcFTP though, and had no problems building it from source with the Developer Tools.
The huge bonus I've found with OS X's terminal is the way it integrates with the "consumer" side of the OS making command line work more conveinent. For example, if I'm not in the mood to drill down into a directory to upload a file in NcFTP I can just drag it onto the terminal after typing "put [space]". I can also command+click links in TF to open them in my browser. These tricks work in the shell too, often handy for perfoming operations on files deeper in directories that I don't want to navigate to by typing them out. (Yes, yes, I'm lazy).
As to the choice of BSD or GNU standard tools, that's a bit of a personal preference. However since Darwin is based on BSD (with a lot of FreeBSD of late) rather than Linux it shouldn't be surprising that it retains its tools. That is more in keeping with its BSD roots.
As I mentioned elsewhere if you are savvy enough to recognize the difference in the tools you ought to be savvy enough to build the GNU versions of the tools.
DarwinPorts
DarwinPorts FAQ
Interview with Jordan Hubbard on DarwinPorts (Slashdot article)