18

I have installed citrix receiver on my home macbook. It auto starts on login yet it does not show an entry in the Login Items tab under the Users and Groups pane of System Preferences. How can I disable the service from starting on login?

6

The following services are are started at login by launchd

/Library/LaunchAgents/com.citrix.AuthManager_Mac.plist
/Library/LaunchAgents/com.citrix.ReceiverHelper.plist
/Library/LaunchAgents/com.citrix.ServiceRecords.plist

You can use launchctl to stop the processes like so

launchctl stop com.citrix.AuthManager_Mac

However I am currently unable to prevent launchd from autoloading these services through launchctl. It is irrelevant because the Citrix Receiver App will not start those services when it starts and will therefore not work if they were stopped or disabled.

I did notice these services are unneeded if using the the companies web app. Considering that one can just delete the above .plist files and only use the web app.

5

Like @cheezsteak mentions, starting and stopping is done through launchctl. The process below allows you to stop autostart at boot.

First, I fetched a list of all "citrix" processes that run on startup:

launchctl list | grep citrix

In order to remove them completely from starting up automatically, I use the following commands:

launchctl remove com.citrix.ServiceRecords
launchctl remove com.citrix.ReceiverHelper
launchctl remove com.citrix.AuthManager_Mac

The only issue now is that when you open the Citrix Receiver application, you may get something like the following error:

Unable to connect to the citrix AuthManager service

To fix this, you manually need to start the services again:

launchctl load /Library/LaunchAgents/com.citrix.ServiceRecords.plist
launchctl load /Library/LaunchAgents/com.citrix.ReceiverHelper.plist
launchctl load /Library/LaunchAgents/com.citrix.AuthManager_Mac.plist

Unfortunately, this is a bit of a cumbersome process. Especially to repeat it every now and then. But I've made it simple as an Automator task, which runs the mentioned commands to start the service and immediately after start the Citrix Receiver.

Actually, I have no doubt that it is relatively easy for Citrix to make this configurable as a preference. There is actually a discussion on their forum about this, but it appears dead and without response. For the time being - and as mere principle - I choose the hard way myself.

For further reference about launchctl, this AskDifferent answer is quite helpful.

  • 1-liner: launchctl list | grep citrix | awk '{print $NF}' | xargs launchctl remove – A T Nov 10 '18 at 6:08
2

Creating an app in Automator with shell script works fine to unload at startup without removing the plist files.

You have to add :

launchctl unload –w /Library/LaunchAgents/com.citrix.AuthManager_Mac.plist 
launchctl unload –w /Library/LaunchAgents/com.citrix.ReceiverHelper.plist 
launchctl unload –w /Library/LaunchAgents/com.citrix.ServiceRecords.plist

Add this app to run at startup and it'll solve the error when you open the Citrix Receiver application.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .