PithHelmet
Links and Downloads
Documentation
Download
PithHelmet-2.8.5.tbz (Safari 4.x only)
PithHelmet-2.8.4.tbz (Safari 3.2 only)
PithHelmet-2.8.3a.tbz (Safari 3.1.x only)
PithHelmet-2.7.tbz (10.4 with Safari 3)
PithHelmet-2.6.7.tbz (10.4 only)
Purchase your copy today for only
Wiki Support
Latest News
PithHelmet Bugs
PithHelmet FAQ
PithHelmet Features
PithHelmet Installation
PithHelmet Localization
Older Software Versions
PithHelmet-2.4.2.tbz (10.3.9 only)
PithHelmet-2.3.3.tbz (<= 10.3.8 only)
Ancient Software Versions
PithHelmet-0.7.3.tbz (Panther only)
PithHelmet-0.7.1.tgz (v85.x only)
PithHelmet-0.6.1.tgz (v74 only)
PithHelmet-src-0.7.2.tgz (source only)
Older Site Versions
0.0 Latest Announcements
Safari 5.1
PithHelmet 3 does not work with Safari 5.1 in any way. This is related to the new multiprocess page rendering and it makes it substantially more annoying to get PithHelmet working. It may be possible to emulate most of PithHelmet with a real Safari extension, but that will take more time and in the end, be much slower. I'm investigation a few existing extensions to see if they actually block requests correctly in all circumstances. I'll post here when I know more.
I should note that this is not a problem with SIMBL. Plugins still work, but the details of how Safari is now implemented make it tougher to get working nicely.
Safari 5.0
This works just fine - install the following:
- SIMBL-0.9.x (install first)
- PithHelmet-3.0b6.pkg (released 2010-06-23)
1.1 What It Does
PithHelmet is an extended site preferences and ad blocking plugin for Apple's Safari browser. The basic purpose of the plugin is to empower you the user to view the web as you like. You can block ad images, Flash, Shockwave or horrible midi loops - the world is your oyster.
1.2 More Detailed Information
Progress reports are regularly written to the PithHelmet Development section of my development log. One of these days I will get around to hosting the source somewhere, but for now, inquiring minds can send me a quick email and get the latest branch.
2.1 Installing and Upgrading
PithHelmet is a plugin for SIMBL. This keeps PithHelmet from unintentionally interfering with other applications, such as the screen saver.
PithHelmet is distributed as a metapackage and installed by Apple's Installer.app. The PithHelmet.mpkg file will automatically update or install the lastest version of SIMBL and the PithHelmet plugin. The installed components are listed below.
The actual PithHelmet.bundle will now be installed in the /Library/Application Supports/SIMBL/Plugins
folder.
If you have added you own rules, they will get saved in a backup file in ~/Library/Application Support/PithHelmet
before they are automatically upgraded.
2.2 Uninstalling PithHelmet
Removing (trashing) the PithHelment.bundle from /Library/Application Support/SIMBL/Plugins
folder will effectively remove PithHelmet from Safari.
2.3 Installed Files and Folders
/Library/InputManagers/SIMBL
- (more info)/Library/Application Support/SIMBL/Plugins/PithHelmet.bundle
- this is the actual code section of PithHelmet - this is what gets upgraded/Library/Frameworks/DuctTape.framework
- a framework I wrote for my plug-ins and applications~/Library/Application Support/PithHelmet/PithHelmet.log
- logs all blocked urls if logging is enabled~/Library/Application Support/PithHelmet/com.apple.Safari/PHRuleSet.ka
- stores all the rules
3.1 How To Block A URL
Once you've installed the files, start Safari (restart it if it's been running during the install process). Try browsing a few sites and you should see markedly less advertisements. (I like cnn.com or msn.com for a good demo site)
If some undesirable content isn't blocked, you can add it to the "block list" in one of the following ways:
- Right click (Control-Click) an image and select Block Images from this Server
- Use the rules editor in the PithHelmet Preferences pane
- Open the rule editor (PithHelmet Menu -> Show Rule Editor)
- Click the New button
- The pattern value is a Perl-compatible regular expression - any matches will be blocked. For an explanation of Perl-compatible regular expressions, open the Terminal and type "man perlre".
- Under the "Filter" tab, select which types of content you would like to block.
You can test the rules on a particular URL by clicking the "Show Rule Tester" button. That will give you some information about whether or not the url was blocked or allowed, and for what reason. Once you close the rules editor or click the Apply button, the new rules will be active.
3.2 How To Allow A URL
If some desirable content is accidentally getting caught by the Block rules (a false positive), you can specifically allow content via an Allow rule. The method is similar to adding an Block rule, simply add the rule and under the filter tab select "Allow" instead of "Block". Allow rules are applied only after an Block rule has been matched.
You can use the same testing method described in the previous section.
3.3 How To Build Better Blocking Rules
PithHelmet has a test panel (accessibly via the rule editor) which will give you an explanation of what exactly PithHelmet thinks about a specified URL.
In addition, the curious user can enable the PithHelmet.log file (from the preferences pane) and all urls matching a rule will be logged to this file.
4.0 Quick Explanation of the Preferences Pane
5.0 Quick Explanation of the Rule Editor
- Sample Block Rule
- Sample Transmogrification
- Site Preferences - Ad Blocking
- Site Preferences - Security
- Site Preferences - Style
- Site Preferences - Advanced
6.0 Quick Explanation of Menu Items and Keyboard Shortcuts
7.0 Questions | Comments | Feedback
Please feel free to contact me via email - I'm interested to here your criticisms and thoughts.
You can always read about the latest PithHelmet status in my development journal. There are also a number of pages on the PithHelmet section of my collaborative web site, Wikir.
If you enjoy PithHelmet, please take a moment to register your copy.
8.0 Revision History
v2.8.4 - released 2008-11-26
- compatible with Safari 3.2
- NB: GIF animation can't be turned off right now
v2.8.3 - released 2008-04-26
- compatible with Safari 3.1.1 on Mac OS X 10.5
- NB: GIF animation can't be turned off right now
v2.8 - released 2007-11-05
- compatible with Safari 3.0.4 on Mac OS X 10.5
- NB: GIF animation can't be turned off right now
v2.7 - released 2007-08-05
- compatible with Safari 3.0.3
- NB: GIF animation can't be turned off right now
v2.6.7 - released 2006-06-28
- compatible with Safari 2.0.4 (from the 10.4.7 update)
v2.6.6 - released 2006-05-18
- fixed support for NetNewsWire 2.1
- fixed a few rare but unpleasant code bugs (asserts)
- fixed a few translations
v2.6.5 - released 2006-03-04
- Universal Binary (support for Intel Macs)
- new rules for new and annoying ad techniques
- added Russian translation
v2.6.4 - released 2005-01-14
- added compatibility with Safari 2.0.3
v2.6.3 - released 2005-12-31
- made the initial registration alert significantly less annoying for new users
- added Russian translation
- fixed: removed spurious logging to the console
- fixed: bugs in the feed:// urls - especially with feedburner.
v2.6.2 - released 2005-11-01
- changed installer and version check for Safari 2.0.2
v2.4.2 - released 2005-11-01
- changed installer and version check for Safari 1.3.1
v2.6.1 - released 2005-08-07
- added a command to quickly toogle blocking all plugins (Flash, QuickTime and others)
- added a keyboard shortcut for purging all of the session cookie
- added a menu item to completely disable PithHelmet's blocking code (it's in the Advanced submenu)
- changed name of "Javascript Console" to "Javascript Editor" to combat confusion
- fixed: spurious registration warnings in NetNewsWire/Shiira
- fixed: bugs in the cookie code that could occasionally crash
- fixed: rule wizard could crash in certain circumstances
v2.6 - released 2005-08-01
- added new interactive rule wizard
- added new wildcard style rules (similar to AdBlock)
- added support for NetNewsWire Lite 2.0.1
- added a menu item to Show PithHelmet Preferences
- updated rule set
- fixed: file descriptor leak in Machete
- fixed: preferences would occasionally not show up
v2.5.2 - released 2005-06-01
- added support for NetNewsWire Lite 2.0
- added support for Shiira 1.0
- updated rule set
- fixed: version checking code
- fixed: installer package
v2.5.1/v2.4.2/v2.3.3 - released 2005-05-05
- fixed: occasional hang when accessing certain sites, this is the same fix applied to different versions
v2.5 - released 2005-04-29
- compatibility release for Safari 2.0 on Mac OS X 10.4 (Tiger)
v2.4.1 - released 2005-04-27
- removed support for Shiira
- fixed: crash bug in the url tracker
- fixed: cookie expiring (discard-on-quit now works properly)
v2.4 - released 2005-04-18
- properly updated internal structure to match Safari 1.3 (compatible only with Safari 1.3)
- content collapsing is now turned off by default due to bugs in WebCore/JavascriptCore
- updated French and Italian translation
- fixed: cookie blocking
- fixed: GIF animation blocking
v2.3.2 - released 2005-04-27
- compatible only with Safari 1.2.x
- removed support for Shiira
- fixed: crash bug in the url tracker
v2.3.1 - released 2005-04-17
- fixed version checking
- updated localizations
v2.3 - released 2005-03-21
- added new check for host spoofing (homograph/IDN attacks)
- added new options to aggressively attack popunder ads (off by default)
- added pref to turn off the version check window unless there is an update
- added Javascript console for interactive sessions (in the PithHelmet Debug menu)
- added faster vs. safer mode for blocking (faster may crash some Java-enabled sites)
- changed contextual menu to be on by default
- fixed: bug in regex domain rules that prevented proper operation
- fixed: rare crash on startup
- fixed: rule set upgrading
- fixed: intermittent crash with Java-enabled pages in tabs
Show Complete History