PithHelmetBeta [ Top | Edit | New | Search | Page Info | Login ]

v1.67; last modified 2004-08-26 04:52:15 EDT by sjk

PithHelmet Preview Release v2.0-45

This is a pretty stable release and both interface and functionality are pretty much set.

NOTE: This is Panther (Mac OS X 10.3) only - it will probably not work on earlier code. It has only been tested with Safari 1.2.x (v125.x) although it may work on other versions. You are likely to lose your custom rules on upgrade until PithHelmet 2.0 is in a stable release.

Download PithHelmet here - http://culater.net/dl/files/PithHelmet-2.0.0-45.tbz

PithHelmetExplanation - A series of notes that should help explain how the rules work.

Changes For v45

Bugs Fixed For v44

Bugs Fixed For v43

New Features For v42

New Features For v41

New Features

Future Enhancements

Installing

  1. Install SIMBL 0.5 - this is backward compatible with older SIMBL plugins, but PithHelmet uses this new version to catch loading errors much more gracefully. You can just copy the SIMBL.bundle over the old version in /Library/InputManagers/SIMBL/
  2. Decompress the .tbz file and copy it over the old version of the PithHelmet.bundle (in /Library/Application Support/SIMBL/Plugins folder)
  3. If you installed 2.0-35, you will need to delete/move your rules file - sorry, rule set upgrading will be done soon.
  4. Start Safari or Shiira

Uninstalling

You can rerun the v0.7.3 installer, it will replace the beta version with the last official release.

Warnings

Your existing rules won't be imported, but they won't be overwritten either. This version uses a new storage system.

  1. if you add a rule, you need to click the Apply button (or close the window) on the Rule Editor before it will actually be used to block things. Changes to an existing rule happen immediately.
  2. Machete scripts are a little complicated to write - they need to read from STDIN and write to STDOUT
  3. if you want to use the site rules/preferences, you need to check the Use Site Preferences checkbox

Just a note for those trying to write scripts: the format should be while(read from STDIN) { modify input; print output to STDOUT }

Beta Questions/Comments/Bugs

Please report any bugs or issues here by editing this page. It will require you to spend about 10 seconds creating an account. Adding PithHelmet version number (when relevant) can be helpful information for tracking status of issues previously mentioned here.

Site xxx won't load. What should I do?

Contact me via email and let's try to sort out your problem. PithHelmet has always had a problem with redirects. This should be fixed up for the most part, but some corner cases can still confuse the engine.

Are there any Machete scripts available?

They are not currently included with the preview - I'm trying to figure out a good way of packaging them. I the mean time, here is a sample script that simply zaps an ad from VersionTracker. This is implemented in Python, but it could just as easily be done in perl, sed or awk... To try it out follow these instructions:

  1. download http://culater.net/dl/files/versiontracker.py - it should be just a text file
  2. find the file in the Terminal and type chmod +x versiontracker.py
  3. open the Rule Editor inside Safari and bring up the VersionTracker rule. select the Site Settings tab and use the Machete Script popup option "Other..." to find the versiontracker.py file
  4. save the rules
  5. open the Safari preferences, go to the PithHelmet pane and click "Enable Machete"
  6. restart Safari
  7. reload VersionTracker to see if it works

This assumes a small amount of command line experience. I'm currently trying to figure out how to more easily distribute this scripts.

What is a Machete script and how do I use it?

Machete scripts for the time being are simple filters that alter the data coming from a website. They can be implemented in almost any programming or scripting language. When you have Machete turned on, it will look for a relevant script file and filter the data before sending it to the browser to be rendered. Learning how to use it from the one example can be a little tricky if you aren't already a programmer, however I am trying to address the problem by enabling people to easily share popular rules for particular sites.

What is the difference between a Filter Setting and a Site Setting?

Probably I need a change in terminology to make this easier to understande.

Filter Setting determines what content to block after a pattern has been matched (cookies included).

Site Settings/Preferences determines what parts of PithHelmet to enable for a particular site - note that the Default Site Rule determines the behavior for all site rules.

What is the difference between a "Main URL" and a "Content URL"?

Main URLs are what you would type in the location bar - they are explicitly what you requested. Content URLs are loaded on behalf of the page - stuff like images, flash, java applets, custom stylesheets and javascripts.

What is a cross-site cookie?

A cross-site cookie is one that is coming from a 3rd party site. In the realm of online security, 3rd party hijacking is usually referred to as "cross-site scripting." However, most Mac browsers refer to this as 3rd party. I should probably fall in line. :-) Usually, this is a cookie sent to an advertising site to track user habits. Most often these are triggered by images embedded in a particular web page.