el1t / uBlock-Safari

uBlock Origin - An efficient blocker for Chromium, Firefox, and Safari. Fast and lean.
GNU General Public License v3.0
2.74k stars 97 forks source link

Build License


uBlock Origin
for Safari

pronounced you-block origin (/ˈjuːˌblɒk/) — you decide what enters your browser.

An efficient blocker add-on for various browsers. Fast, potent, and lean.

Regarding this Safari port

The majority of this code is shared with upstream. Platform specific portions are under development. Much of the platform shim from the original uBlock Safari version is still being used.

Installation

The preferred method of installation is to install from the extension gallery. This allows the extension to update automatically, and the submissions are approved by Apple.

To learn more about installation and updates, visit the wiki.

Compatible with Safari 11, untested on older versions (but should work).

Note

To benefit from uBlock Origin's higher efficiency, it's advised that you don't use other inefficient blockers at the same time (such as AdBlock or Adblock Plus). uBlock₀ will do as well or better than most popular ad blockers. Other blockers can also prevent uBlock₀'s privacy or anti-blocker features from working properly.

Building

Development

To build and load an unpacked extension for development:

  1. Clone uBlock-Safari and uAssets into the same parent directory
  2. Build by running ./tools/make-safari.sh in uBlock-Safari's directory
  3. Install the unpacked extension through Safari's Extension Builder
    1. In Safari, load the Extension Builder (Develop > Show Extension Builder)
    2. Click the + button in the bottom left corner and "Add Extension"
    3. Select dist/build/uBlock0.safariextension
    4. Click install and enter your password
    5. You will have to reinstall from this panel every time you restart Safari

If you don't see a Develop menu in Safari, you can run defaults write com.apple.Safari IncludeDevelopMenu -bool true or go to Preferences > Advanced > Show Develop menu in menu bar.

Example clone and build:

# Clone
git clone https://github.com/uBlockOrigin/uAssets.git
git clone https://github.com/el1t/uBlock-Safari.git
# Build
cd uBlock-Safari
./tools/make-safari.sh
echo 'Output is in dist/build/uBlock0.safariextension'

Release

To build and sign for release (certificates required):

  1. Clone uBlock-Safari and uAssets into the same parent directory
  2. Build by running ./tools/make-safari.sh all in uBlock-Safari's directory
    1. Requires xar-mackyle, which will be built if not found

Release History

See the releases pages for a history of releases and highlights for each release.

Further Documentation

Visit the upstream uBlock Origin wiki for further documentation.

About

uBlock Origin's manifesto.

Free. Open source. For users by users. No donations sought.

Without the preset lists of filters, this extension is nothing. So if ever you really do want to contribute something, think about the people working hard to maintain the filter lists you are using, which were made available to use by all for free.

You can contribute by helping translate uBlock₀ on Crowdin.

License

GPLv3.