There have been discussions about sharing Address Book contacts through LDAP, and there have been many suggestions such as running OpenLDAP, using .Mac, or running dedicated apps on your Mac. In this day and age of Google Apps, I would think that someone (Google?) would have come up with a shared LDAP server that is free or low cost. Yes, there's Plaxo, but it's not LDAP -- standards exist for a reason, and Apple has included LDAP client capabilities in Address Book for a while.
Then I stumbled on FreeLDAP.org. I think this is the only free LDAP server available on the Internet that could be used by multiple users accessing the same database. The setup instructions on the site do not work with the Mac's Address Book. However, while browsing through their forums, I found this setup which works for me on my 10.4 system.
First you have to signup for a new free account at freeLDAP.org, and remember the username and password. Then, in Address Book, go into Preferences » LDAP and choose New. Enter the following information:
I always found it annoying that when I start Huawei's MobileConnect application, I must first enter the PIN for accessing the SIM card of my USB 3G modem before I can connect to the provider. Luckily, the program is rather verbose with debug output. So it was quite easy to retrieve the essential part for entering the PIN. It simply consists of some good old Hayes AT modem-communication commands.
I wrote a Perl script that fetches the PIN to your SIM card from a Keychain entry. In order to use this script, you have to create a Keychain entry under the account simpin. Here's how:
Open Keychain Access (in Applications » Utilities)
Menu: File » New Password Item
Keychain Item Name: Enter something useful to you.
Account Name: simpin
Password: Enter the PIN to your SIM card (usually a number)
Note: when the script is executed for the first time, a window will appear asking you to allow it to access this keychain entry.
In my opinion, the easiest way to execute this perl script is by wrapping it in an Automator workflow:
Search for Run Shell Script
Drag the Run Shell Script action to the large field at right.
Select /usr/bin/perl for Shell, and set "Pass input" to 'to stdin'.
Copy the perl script and paste it into the code field (delete example code first).
Give it a test by pressing Run; just make sure you haven't entered the PIN already. If you have, disconnect the 3G modem briefly and wait a short while. Normally, you should be asked to allow access to the keychain entry.
Many (but not yet all) YouTube videos are available in higher-quality QuickTime versions, and many sites have published methods of downloading those higher quality versions. However, this blog post contains a slick bookmarklet that actually replaces the YouTube Flash video player with the embedded QuickTime player, then plays the high quality video in the QuickTime player.
[robg adds: To use the bookmarklet, just drag it from the linked page to your bookmarks toolbar. Load a video in YouTube, then click the link in your toolbar. The page will then reload with the QuickTime player in place of the Flash player. (If you see the QuickTime logo with a question mark, this means that video isn't available in a high quality version.) The linked blog post has an easy-to-use drag-to-the-toolbar version of the bookmarklet; I'm going to reproduce the source here in the second part of this hint, in case the original post goes away at some point -- but using the linked blog post is by far the easiest way to add this to your bookmarks bar.]
Replace user with your short username on the remote Mac, and server.example.com with the public IP of the remote Mac. Don't forget to set up your remote router so that the ssh port (22) is forwarded to a Mac on which the SSH daemon is launched (Remote Login enabled on the Sharing System Preferences panel).
You can put this in a shell script (thanks to andersB):
dns-sd -P "name of server" _daap._tcp local 3690 localhost 127.0.0.1 &
ssh -N email@example.com -L 3690:localhost:3689
This will start the broadcaster, set up the tunnel, and kill the broadcaster once the tunnel closes. I use port 3690 on the local machine, as to not interfere with the iTunes sharing on that host. This enables me to both see the remote share and share something from my local iTunes with the users on the network your laptop is in. It could be perfect if someone could find a way to double-click this script to run it.
[robg adds: You should be able to run this from the Finder by just double-clicking the shell script file; on my 10.5 machine, at least, that opens Terminal and runs the script. Alternatively, you could paste the script into an Automator action and save the result as an application. Note that I haven't tested this hint.]
This hint will allow you to read your emails in an RSS/news reader like NetNewsWire. First you need to create a rule in Mail and set it to forward filtered messages to firstname.lastname@example.org (Mailbucket.org). Next, open your feed reader and subscribe to feed: http://mailbucket.org/yourfeed.xml (where yourfeed can be anything you choose, but must be unique and the same as what you set in your Mail rule). I recommend checking on the final feed URL before beginning -- just to make sure the name you've chosen isn't already used by someone.
Once set up, you can keep on top of your emails by IM using FeedCrier or read your emails in a newspaper-like interface using FeedJournal.
[robg adds: The MailBucket site points out a couple of valid reasons to use it:
The service is probably most useful to those who lurk on high-traffic mailing lists, but it could also be used as a rudimentary bridge between applications, with email as the transfer protocol.
Keep in mind that there's no security here. If someone can guess the URL for your feed, they can read your mail! For that reason, I'd personally not use this hint for anything other than mailing list traffic. I would also recommend coming up with the most-obscure URL you can, just to provide some minor level of security.]
I've been wanting to set up my Mac Mini (running OS X 10.5.2) as an SSL secured reverse proxy to a bit of kit on my network. However, all the instructions I've found are aimed at older versions of OS X and/or older versions of Apache. I had been using OrenoSP on my old Windows-based system, but couldn't find a comparable yet free equivalent for the Mac. As Apache 2.2.x is included with Leopard, I decided to investigate that route.
The following instructions are shamelessly cobbled together from various bits of documentation, web sites, and forums.
DISLAIMER: I'm an Apache and OS X beginner, so this may not be the best way or most secure way to do this. It does, however, provide an SSL secured reverse proxy. But the illusion of security can be worse than no security at all, so please bear this in mind. If any commenters wish to point out ways of improving this, it would be much appreciated.
[robg adds: This is a long involved hint, and hopefully I didn't mess up anything in the editing. I have not tested it myself.]
Amazon's S3 is an online storage solution; you pay for only what you use ($0.15/GB/month, plus some transfer costs). I wrote a simple step-by-step guide to setting you a Mac to sync with Amazon S3; here's the executive summary version:
You need an Amazon Web Services account. Once signed up, you'll need your Amazon access key and your secret key. These are what s3sync will use to authenticate you to Amazon.
You need to create a "bucket" at Amazon to store your files. To create the bucket, you need of the S3 GUI applications that exist. I have included in the zip file the one I have used called S3 Browser (latest version). When creating your bucket, remember that the name has to be globally unique.
In the s3backup folder created from the zip file downloaded above, you need to edit backup.sh. Replace the placeholder access key, secret key, and bucket name with the ones you obtained in the previous steps.
The application will run as root at the system level in order to prevent file access issues, therefore I recommend storing the entire s3backup folder in your /Library folder. If you store it elsewhere, some paths in the backup.sh file will need to be updated.
Set up your Mac to automatically run the backup shell script at regular intervals via cron or launchd.
[robg adds: The above is a very short summary of the much-more-detailed guide linked in the first sentence; make sure you read the full version for more help with this hint. Note too that S3 charges both for storage as well as for transfer in and out. You can use Amazon's Simple Monthly Calculator to get a feel for how much you would spend, based on your estimates of storage and transfer. I haven't tested this hint.]
This is a very simple script, but I use it and it works. First go to FreeDNS' Dynamic DNS Page and copy each of the URLs labeled "Direct URL" for the domains you want to update. The URLs should be somewhat like this...
...where (hash) represents a hash of your username and password as well as domain ID. Paste each URL into a file named something like update_freedns.sh. In front of the URLs, just put curl, so it looks like this:
To keep an eye on craigslist for something that you've been searching for for weeks, you can simplify the process by using Mail.app and a craigslist RSS subscription. Simply add an RSS feed to Mail from whatever craigslist category you want in whatever area you are in. After doing this, go to Mail » Preferences » Rules. Make a new Rule and call it whatever you want. Select a new item from the feed, and go to View » Message » Raw Source. Now you can edit your rules to your heart's content. Set the conditions for your rule.
For example, I'm looking for some Olympic Weights on the cheap, so I've got this:
If all of the following conditions are met:
X-Mail-Rss-Source-Homepage-Url is equal to http://seattle.craigslist.org/spo/
Message Content Contains Olympic
Perform the following actions:
Mark as Flagged
Set Color of background Yellow
This should make it easy to find what you want on craigslist in a very short amount of time. Searching hundreds of posts a day on the web can take hours. For some reason, however, forwarding of RSS messages to email accounts doesn't work at all in my experience. Happy bargain hunting!
I've seen some other hints about this, so I decided to contribute this "nothing-can-be-easier" hint. The solution is to use the free, open source, and absolutely easy to install and configure SlimServer. First, download SlimServer and follow the instructions to install it.
Note: SlimServer was originally designed by SlimDevices (i.e. Logitech) to be used with actual music bridges (hardware) which, obviously, you have to buy from Logitech, so you can play your music collection in your home stereo. However, SlimDevices (i.e., Logitech) was kind enough to open source the program, allowing us to stream music to any software MP3 player capable of playing MP3 from URLs, for free. Here's how to configure it to stream your iTunes library:
Go to System Preferences and click on the SlimServer icon. Turn the media server on. (You can set it to always run when you log in, or reboot.)
Using your browser, open http://localhost:9000 to see the server's web interface -- it takes a little while to open on the first time.
Go through the web interface to configure the server according to your needs. I suggest you enable the login/password so nobody can acuse you of illegally distributing music over the internet.
From any media player supporting streaming (iTunes, Windows Media Player, Winamp, etc.), go to Open URL in its menus, and open http://220.127.116.11:9000/stream.mp3, where 18.104.22.168 is the IP address of the Mac serving the music files. The media player will login into your media server (and require user/password if you enabled such), and buffer some of the music. This might take one or two minutes depending on your connection. Some players are able to show you the title of the current song, but some aren't.
To control which music you want to play, use the server's web interface (http://localhost:9000). Using SlimServer, I can successfully listen to my iTunes collection stored in my Mac at home from my cube at work, 10 miles away.