Little Snitch

When using Little Snitch you must allow GlimmerBlocker to make network connections as all http requests will be made by GlimmerBlocker instead of e.g. Safari.

During (or right after) installation, you will be promted to permit network access:

OBS:

  1. You must select Forever to permit GlimmerBlocker network access after restarting your mac and after deactivation/activation of GlimmerBlocker.
  2. You must select Any Connection to be able to browse all websites. Just after installation GlimmerBlocker downloads the default filters and therefore it is highly probable that the first permission dialog has "glimmerblocker.org" as the host. Restricting to port 80 does not work for all web sites as some sites use e.g. port 8080.
  3. And you'll need to click Allow

All traffic comes from GlimmerBlocker?

Little Snitch intercepts traffic when it leaves your Mac, and not traffic between applications on your mac. Therefore, it will think that all http traffic now comes from GlimmerBlocker instead of Safari, NetNewsWire, etc.

When you use GlimmerBlocker (without Little Snitch) the flow is: Safari → GlimmerBlocker → website

When you use GlimmerBlocker and Little Snitch the flow is: Safari → GlimmerBlocker → Little Snitch → website

The proper flow would be Safari → Little Snitch → GlimmerBlocker → website
but this requires reengineering of Little Snitch. It is not something GlimmerBlocker can do.

Workaround #1

If you configure the network settings to dynamically select the proxy using a PAC script, you can make Safari use GlimmerBlocker and all other apps use direct connections. (requires GlimmerBlocker version 1.4.4 or later)

There are 4 steps:

Step 1

To do this, create your own filter.

Step 2

Copy the xml snippet below, and paste it into the "Rules in..." for your filter. You will then get a rule which creates such a dynamically script.

<?xml version="1.0" encoding="UTF-8"?>
<glimmerblocker-rules>
    <rule priority="2" type="request" host="127.0.0.1" host-type="is" path="/rule/pac" path-type="is">
        <comments><![CDATA[Proxy PAC file.]]></comments>
        <request language="js" version="1"><![CDATA[gb.response.contentType = 'application/x-ns-proxy-autoconfig';
gb.response.headers['Cache-Control'] = 'max-age=1800';
var ua = gb.request.headers['User-Agent'];
ua = ua ? ua[0] || '' : ''; // deref list
var proxy;
if (ua.match(/Safari|OmniWeb/))
    proxy = 'PROXY 127.0.0.1:8228' ;
else
    proxy = 'DIRECT';
t = "function FindProxyForURL(url, host) { return '" + proxy + "'; }\n";]]></request>
    </rule>
</glimmerblocker-rules>

Step 3

Open the "Network" System Preferences Panel. You need to do step 4 for all of the connections you use (e.g. Ethernet, AirPort).

Step 4

Click the "Advanced" button. Select the "Proxies" tab. Check the "Automatic Proxy Configuration" item, and in the URL field enter "http://127.0.0.1:8228/rule/pac". Uncheck "Web Proxy (HTTP)". Beware that GlimmerBlocker enables it each time you activate GlimmerBlocker.

Workaround #2

macosxhints has published  a workaround. This makes Safari use GlimmerBlocker as proxy, and all other applications use a direct connection. This workaround requires you to be able to install a php script on the Mac's local web server.

Version 2.0.4 of Little Snitch

If you have version 2.0.4 of Little Snitch installed, please check that you are using "Core System Version" 387 and not 385. The latter is know to crash or completely deny network connections. If you have 385 installed, just download and install 2.0.4 once more as this will upgrade it to 387.