How to Install the SpinMonitor Add-On for Firefox

Written By William Tran (Administrator)

Updated at April 1st, 2025

The SpinMonitor add-on must be installed on all users' Firefox browser to view other installed Firefox add-ons from SpinOne. The add-on can be installed from Mozilla's official add-ons page: https://addons.mozilla.org/en-US/firefox/addon/spinmonitor-for-gws/

This approach, however, is inefficient for many organizations because it requires each end user to individually install SpinMonitor. Since the Firefox browser does not have a centralized management system, administrators must use the policies.json file to enforce administrative policies, including the force install of Firefox browser add-ons. 

This article contains two parts: 

  1. An explanation of policies.json 
  2. Deploying the policies.json file using popular tools (Intune, Jamf)

Part 1: Policies.json explanation

Policies.json is a file used to enforce administrative policies on the Firefox browser. Due to Firefox browser API limitations, this file must be deployed to end users' local devices in order for SpinOne to view end users' Firefox add-ons. 

The policies.json file provided below automatically installs the SpinMonitor add-on and makes it unremovable from the Firefox browser.

The following section explains how to deploy the policies.json file.

For Windows

1) Create the policies.json file or download it here

{
	"policies": {
		"Extensions": {
			"Install": [
				"https://addons.mozilla.org/firefox/downloads/file/4458034/spinmonitor_for_gws-1.0.2.xpi"
			],
			"Locked": [
				"{a1d09385-16e5-45a7-8d9f-e8146f9699a5}"
			]
		}
	}
}

2) Place the policies.json file in the Mozilla Firefox\distribution folder. Create the distribution folder if it does not exist. The default location is displayed below. 

C:\Program Files\Mozilla Firefox\distribution

WARNING: If another policies.json file exists, then there is another Firefox policy already implemented. In this case, it is recommended to merge the contents of the two policies.json file. 

 
 

For MacOS

1) Create the policies.json file or download it here

{
	"policies": {
		"Extensions": {
			"Install": [
				"https://addons.mozilla.org/firefox/downloads/file/4458034/spinmonitor_for_gws-1.0.2.xpi"
			],
			"Locked": [
				"{a1d09385-16e5-45a7-8d9f-e8146f9699a5}"
			]
		}
	}
}

2) Place the policies.json file in this folder path. Create the distribution folder if it does not exist.

/Applications/Firefox.app/Contents/Resources/distribution/ 

WARNING: If another policies.json file exists, then there is another Firefox policy already implemented. In this case, it is recommended to merge the contents of the two policies.json file. 

 
 

For Linux

1) Create the policies.json file or download it here

{
	"policies": {
		"Extensions": {
			"Install": [
				"https://addons.mozilla.org/firefox/downloads/file/4458034/spinmonitor_for_gws-1.0.2.xpi"
			],
			"Locked": [
				"{a1d09385-16e5-45a7-8d9f-e8146f9699a5}"
			]
		}
	}
}

2) Place the policies.json file in this folder path. Create the distribution folder if it does not exist. This approach is useful for managing a particular Firefox instance.

firefox/distribution

Alternatively, this folder path can be used to be applied system-wide.

/etc/firefox/policies

WARNING: If another policies.json file exists, then there is another Firefox policy already implemented. In this case, it is recommended to merge the contents of the two policies.json file. 

 
 

 

There are many available options and tools used to deploy policies.json. This following are only suggestions based on popular deployment tools and methods. 

The methods below uses Intune or Jamf to execute a script that downloads the policies.json file and places it in the appropriate local folder of end users' devices. 

Before deploying policies.json, please review the following important points:

  • There can only be one policies.json file. If your organization has an existing policies.json file, it is recommended to merge the two files. 
  • End users will be prompted to authenticate. Once the SpinMonitor add-on is installed on end users' Firefox web browser, end users will receive a prompt to authenticate into Google Workspace. 

Using Intune

 For Windows devices

In Intune Admin Center, add a PowerShell script by navigating to Devices > Scripts and remediations > Platform scripts > Add 

2. Under Script settings, use this script or download it here:

$destination = "C:\Program Files\Mozilla Firefox\distribution\"
if (!(Test-Path $destination)) {
    New-Item -ItemType Directory -Path $destination -Force
}

$url = "https://static.helpjuice.com/helpjuice_production/uploads/upload/image/7298/5160464/policies.json"
$outputPath = "$destination\policies.json"

Invoke-WebRequest -Uri $url -OutFile $outputPath

3. Complete the remaining PowerShell script creation steps by assigning target users/groups

 
 

For MacOS devices

1. In Intune Admin Center, add a PowerShell script by navigating to Devices > Scripts and remediations > Platform scripts > Add 

2. Under Script settings, use this script or download it here:

#!/bin/bash

# Define the destination path
destination="/Applications/Firefox.app/Contents/Resources/distribution"

# Check if the directory exists, and create it if not
if [ ! -d "$destination" ]; then
    sudo mkdir -p "$destination"
    sudo chown -R $(whoami):staff "$destination"
fi

# Define the URL and output path
url="https://static.helpjuice.com/helpjuice_production/uploads/upload/image/7298/5160464/policies.json"
outputPath="$destination/policies.json"

# Download the policies.json file
curl -o "$outputPath" "$url"

3. Complete the remaining PowerShell script creation steps by assigning target users/groups

 
 

For Linux devices

1. In Intune Admin Center, add a PowerShell script by navigating to Devices > Scripts and remediations > Platform scripts > Add 

2. Under Script settings, create this script or download it here:

#!/bin/bash

# Define the destination path for Firefox policies
destination="/etc/firefox/distribution"

# Check if the directory exists; if not, create it
if [ ! -d "$destination" ]; then
    sudo mkdir -p "$destination"
    # Ensure the directory is owned by root
    sudo chown -R root:root "$destination"
fi

# Define the URL to the policies.json file
url="https://static.helpjuice.com/helpjuice_production/uploads/upload/image/7298/5160464/policies.json"

# Define the output path for the policies.json file
outputPath="$destination/policies.json"

# Download the policies.json file (using -L to follow redirects if necessary)
curl -L -o "$outputPath" "$url"

# Ensure the policies.json file is owned by root after downloading
sudo chown root:root "$outputPath"

3. Complete the remaining PowerShell script creation steps by assigning target users/groups

 
 
 
 

Using Jamf Pro

For MacOS devices

1. In Jamf Pro, navigate to Computers > Scripts > New Script 

2. Create and save this script or download it here:

#!/bin/bash

# Define the destination path for Firefox policies
destination="/Applications/Firefox.app/Contents/Resources/distribution"

# Check if the directory exists; if not, create it
if [ ! -d "$destination" ]; then
    sudo mkdir -p "$destination"
fi

# Define the URL to the policies.json file
url="https://static.helpjuice.com/helpjuice_production/uploads/upload/image/7298/5160464/policies.json"

# Define the output path for the policies.json file
outputPath="$destination/policies.json"

# Download the policies.json file
curl -o "$outputPath" "$url"

# Set correct ownership for the policies.json file (root:admin)
sudo chown root:admin "$outputPath"

3. Create a Policy by navigating to Computers > Policies > New

  • Under Trigger, select Startup
  • Under Execution Frequency, select Every check-in
  • Under Scripts, select Configure and deploy the script
  • Select Save

4. Complete the remaining steps by assigning target users/groups

 
 
 
 

 

Congratulations! Once the policies.json file is deployed to end users, their Firefox browser add-ons can now be viewed in SpinOne.

Was this article helpful?