Icon Duplication in the Dock and Other Odd Symptoms (macOS 10.12+)

The Symptoms

If you've noticed the following symptoms, Scrivener may not be properly installed on your Mac:

  • If you keep its icon stored in the Dock for easy access, when you launch the software from this icon, a second copy appears and runs from there, leaving the original untouched. A circle and cross (universal "do not") badge may be placed over the second copy in some occasions.
  • You may also note other irregularities, particularly wherever Scrivener might need to make use of external utilities, such as Kindle Previewer or Pandoc.
  • The routine update check may fail to function, and if you do get an update downloaded, it won't actually update the software after a restart.
  • Third-party tools that automate or modify how software functions will fail to recognise Scrivener.

If the Mac is suffering from some of these symptoms but you do not keep Scrivener in the Dock to notice the first, it may be a good idea to try putting it in the Dock temporarily so you can check for that condition.

For those more technically minded, you can also detect this with a simple command from the shell, rather than all of the above guesswork: ps x | grep Scrivener. This will print the full path that Scrivener has been launched from, and should correspond to where the software is installed. A typical path would look like this: "/Applications/Scrivener.app/Contents/MacOS/Scrivener". If instead you see a long string of random characters, with a path starting in "/private" then the installation needs to be repaired.

The Problem

The problem is that Scrivener is currently quarantined by macOS on your system. This can happen if the software has materialised in its current location without the use of typical file management actions, such as dragging and dropping an icon in Finder. As a result, the software is not allowed to launch from its installed location, and is instead duplicated into a temporary hidden location with limited access to the system.

The Fix

Easy Method

Since the problem originates from not having copied the file in a fashion Apple deems to be "correct", all you have to do is move the software out of its current folder and back, using Finder.

Technical Fix

If that does not work (and it has been known to), then the flag can be removed at the system level with the following steps:

  1. From Finder, use the Go ▸ Utilities menu command.
  2. Double-click on the Terminal icon.
  3. Copy and paste the following command into Terminal, leaving a space after the command:

    xattr -d com.apple.quarantine
    
  4. Drag and drop Scrivener from its installed location from a Finder window, into the Terminal window, to paste the full path to its location. The result of this should look something like:

    xattr -d com.apple.quarantine /Applications/Scrivener.app
    
  5. Press Return to execute the command, and try launching the software again.