• Stars
    star
    1,112
  • Rank 41,754 (Top 0.9 %)
  • Language
    Objective-C
  • License
    BSD 3-Clause "New...
  • Created over 4 years ago
  • Updated 28 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Email tracker, read receipt and spy pixel blocker plugin for macOS Mail (10.11-13.x)

MailTrackerBlocker Awesome Humane Tech

MailTrackerBlocker is a plugin (mailbundle) for the default Mail app built-in to macOS. Email marketers and other interests often embed these trackers in HTML emails so they can track how often, when and where you open your emails. This plugin labels who is tracking you and strips out spy pixels out of the HTML before display, rendering the typical advice of disabling "load remote content in messages" unnecessary.

Browse your inbox privately with images displayed once again.

Be informed. Say No To Spy Pixels.

<a style="color: #770506;">
<img src="http://cdn.website.com/newsletter/logo.png" width="438" height="42" border="0" style="max-width: 90%; height: auto" alt="logo.png">
</a>

<br>
<a href="https://website.us5.list-manage.com/unsubscribe?u=abdef">Click here to unsubscribe</a> or <a href="https://website.us5.list-manage.com/profile?u=abdef">Update subscription preferences</a>

-<img width="0" height="0" class="mailtrack-img" alt="" style="display:flex" src="https://mailtrack.io/trace/mail/0eabccbe98c98e9b8e9a8b89eab89ce9ab89e8bc.png?u=1234567">

Prerequisites

Apple Mail on macOS 10.11 - 13.x.

⚠️ If you have macOS 12 and up, Mail Privacy Protection is recommended over MailTrackerBlocker for more complete privacy guards.

Setup

Installation

You can install MailTrackerBlocker.pkg directly from the releases page or via Homebrew Cask:

$ brew install mailtrackerblocker

Usage

macOS 12, 13


1. Tap on the button to find out what was blocked.

⚠️ Enabling "Block All Remote Content" with MailTrackerBlocker enabled is redundant; disable this option for the best experience.

macOS 10.11, 10.12, 10.13, 11


1. Tap on the button to find out what was blocked.

⚠️ Disabling "load remote content in messages" with MailTrackerBlocker enabled is redundant; re-enable this option for the best experience.

macOS 10.14, 10.15


1. Open Mail, goto `Preferences > General > Manage Plug-ins... > check "MailTrackerBlocker.mailbundle" > Apply and Restart Mail`. Note that you'll need to do this again for each update.
2. Tap on the button to find out what was blocked.

⚠️ Disabling "load remote content in messages" with MailTrackerBlocker enabled is redundant; re-enable this option for the best experience.

To uninstall

If you installed with Homebrew:

$ brew uninstall mailtrackerblocker

If you installed the pkg manually:

osascript -e "quit app \"Mail\""
# plugin files
sudo rm -r /Library/Mail/Bundles/MailTrackerBlocker.mailbundle
sudo rm -r /Library/Application\ Support/com.onefatgiraffe/mailtrackerblocker
sudo pkgutil --forget com.onefatgiraffe.mailtrackerblocker
# user-generated settings
rm -r ~/Library/Containers/com.apple.mail/Data/Library/Application\ Support/com.onefatgiraffe.mailtrackerblocker
defaults delete com.apple.mail _mtb_IsAutoUpdateCheckAllowed
defaults delete com.apple.mail _mtb_IsFirstStartup
defaults delete com.apple.mail _mtb_LastUpdateCheckDate

FAQ

Why am I getting a "Incompatible Plug-ins Disabled" message after enabling?

Typically caused by Mac migration or restoration from backup. Delete Mail's private plugin-ins dir (or DataVaults) to fix this issue. This dir will automatically be regenerated afterwards.

Why is my Mail so slow?

This issue isn't related to MailTrackerBlocker but such problems can be resolved by doing a Mailbox Rebuild to force Mail to regenerate its indexes.

Building from source

Building will automatically install a copy into your /Library/Mail/Bundles/ dir so if you have a current installation from the public pkg installer, you'll need to remove it due to permissions: $ rm -rf /Library/Bundles/MailTrackerBlocker.mailbundle.

git clone https://github.com/apparition47/MailTrackerBlocker.git --recursive
cd MailTrackerBlocker

A. Make

To sign with your identity, edit the Makefile to specify your own Developer ID Application (used to sign the plugin binary [for macOS 11 and up]) and Developer ID Installer (used to sign the pkg) certificates. You can also comment out the top lines to disable signing.

To build binary, pkg and sign (if configured):

make all
open build/Release

B. Xcode

  1. Give Xcode Full Disk Access from System Preferences > Security & Privacy > Privacy > Full Disk Access and add Xcode.
    • Required because the mailbundle needs to be installed into /Library/Mail/Bundles.
  2. Open the Xcode project.
  3. Change the Signing settings in Signing & Capabilities (macOS 11 and up: you'll need to use your own Developer ID Application certificate; below macOS 11: set it to none/don't sign) then hit build.
    • mac OS 11 and up: allow Finder access to allow Xcode to copy unsigned directly into sandboxed env

Credits

License

BSD-3.