Technical note (outdate)

Home page > OS X Portable Applications > Technical note (outdate)

Script functions description

These are the script functions that run when Portable app is open (not all present on each Portable app)

Sorry, notes below are outdate, althougt the concept is still valid, now quite all portable apps are opened by a shell script wrapped as applicaton using Platypus.

Please post questions, tips, suggestions, clues, helps, bugs to our OS X Portable Apps support forum.

All <app_name> provided are unmodified binaries downloaded from developer sites.

Folder content

Portable <app_name> the Portable root folder

OPEN <app_name>.app ithe AppleScript that open original <app_name>.

app folder that contain the original <app_name> and the profile folder.

Folder tree

Don't modify this tree or <app_name> will not start.

Portable Apps (root folder)

  • OPEN <app_name>.app (AppleScript)
  • app (foleder)
    • <App_name>.app (real application)
    • profile (folder)
Click image to enlarge

Dinamic path

As the Portable <app_name> folder can be everywhere the first part of the script fetch it:

tell application "Finder" to set perc to the container of (path to me) as alias
set perc to quoted form of POSIX path of perc

This means that you can change the name of your portable drive or the Portable <app_name> root folder position and OPEN <apps> will launch it.

Profile folder

Standard profile folder is ~/Library/Application Support/<app_name>
Portable <app_name> use the given profile folder (Portable <app_name>/app/profile/).
Each Portable <app_name> use various way to get this:

Firefox, Thunderbird, Nvu, Sunbird

All Mozilla related applications are launched with "-proflie" flag that set the profile folder path:

do shell script "" & perc & "app/ -profile " & perc & "app/profile"

See How Do I run Firefox off a USB drive?


Adium need a key <Preference Folder Location> in the Info.plist file with value <profile_path>. This is get with "defaults write" command:

do shell script "defaults write " & perc & "app/ \"Preference Folder Location\" " & perc & "app/profile"

As "default write" output is a binary file, this is convered to xml using "plutil" command:

plutil -convert xml1 "$here/app/"

Adium binary are launched with the modifed Info.plist file:

do shell script "open " & perc & "app/"

See Portable Adium wiki page.


AbiWord should work as Mozilla applications using a -u flag to set profile folder but this is not yet implemented on OS X porting: Bug 9944 - OS X command line -u option fail

Profile folder path is set modifing HOME environment with "export HOME" command:

do shell script "export HOME=" & perc & "app; open " & perc & "app/"

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License