Is there is way to make an app launch n minutes after boot up? There are a few apps that I want to launch and but not at start time (using login items) because it slows down boot time (e.g. Dropbox). Ideally I can make it like 10 minutes after launch. Thanks!
Not directly, but you can do much the same thing by starting a script that will wait ten minutes, then launch the application. For example, with an AppleScript:
Open AppleScript Editor in
This will start the application(s) ten minutes after you log in rather than after when you start up, but your question suggests that you're automatically logging in on start up anyway. Starting Mac GUI applications genuinely on startup tends to not work.
Per Daniel Beck's suggestion, here's a way to do this silently:
Create the AppleScript described above, but save it as a script. Then create a Launchd property list. If you've installed the Mac OS X dev tools, you can use the Property List Editor that's included with them, or you can use a text editor (as it's XML). Create the following:
Save this in
Scott's answer unfortunately doesn't work on newer version of OS X. Version below version worked for me on Yosemite.
Firstly, remove the app from Login Items (System Preferences -> Users & Groups). But even if you do that, some apps (e.g. Dropbox), will add itself to Login Items again. So you also have to disable autostart in your app.
Then, as Scott has written, create an AppleScript script like this:
Now you have to create a Launch Agent – just a file with extension
And that's all, when you next login, apps you have specified in your script should launch after 10 minutes.
There's an app called Soluto that (among other things) will allow you to delay an item's startup. https://www.soluto.com/
It will also show you a comprehensive list of startup items and will make recommendations for each:
I've only tried this on my PCs but they do have Mac support.