Knowledgebase: PaperCut > Administration > Mac OS
Using the PaperCut Mac Client Login Hook With Other Login Scripts
Last modified on 14 August 2020 09:35 PM

Note: The preferred method of starting the PaperCut Client automatically for all users is to use the Launchd method using Launch Agents as advised by Apple

The Mac login hook functionality is used to start the PaperCut client tool automatically when users log in. If you are already using a login script, or want to install additional scripts, the setup procedure will be slightly different to the standard way (double clicking on install-login-hook.command).

The login hook on Mac can point to one script only. To run multiple scripts on login, the master login hook script should call your multiple other login scripts.

A) If you already have a login hook script in place

If you already have a login hook script set up, simply insert the following line at the end of your existing login hook script:

/Applications/ "$1"

This will call the PaperCut script at the end of your current login procedures.

B) To call multiple login scripts

If you’ve already set up the PaperCut Mac client with the login hook (say another application is using the method), perform the following:

1. Create a new text file to function as the master/wrapper login hook script. The contents should be similar to the following example:

# call login script/program #1 here
[path to my other login script]

# call login script/program #2 here
[path to another program starting via a login script]

# call the PaperCut user client login script
/Applications/ "$1"
2. Set execute permissions on the master login hook script:
sudo chmod a+x "/Path/To/Script"
3. Set the login hook property to point it to your master login hook script:
sudo defaults write LoginHook "/Path/To/Script"

Configuring the login hook

The login hook can be enabled by typing the following at a terminal:

sudo defaults write LoginHook "/Path/To/Script"

And removed / disabled by typing the following:

sudo defaults delete LoginHook

Note: in the master login hook script, “$1” is the username variable (i.e. the user who is logging in)