Introducing TBlock 2.2.0

The update brings exciting new features and fixes. We're really happy to publish this new version, because it is the first time we actually received contributions from people who use our software.

Speed improvements

Thanks to our growing community and to our contributors, we were able to fix some major speed issues that occurred when using several allowing rules. We did this by removing a bunch of unnecessary code and by using the multiprocessing library.

New operation

A new operation was added. Now, it is possible to check which filter list owns a specific rule:

$ tblock -W example.org
$ tblock --which example.org

New option, light-speed rules

A major improvement in TBlock 2.2.0 is how rules are applied. Before this release, the hosts file was rebuilt every time a rule was added or removed. Now, the program simply applies the new rules to the hosts file without rebuilding it every time.

Of course, you can still do it “the old way” (which is also the slow way in that case), by using this new option:

$ tblock -b example.org -o
$ tblock --block example.org --rebuild-hosts

Runit support

Thanks again to our awesome users and contributors, the daemon now has official support for the runit init system. A nice new for our users running Artix, Devuan and Void (even though Void is not officially supported yet)!

No more pandoc

The pandoc package was removed from TBlock’s build dependencies. Initially, it was used to convert markdown files into man pages. However, on Arch Linux, pandoc has over 100 dependencies itself, which is really too much for building a simple package! Another problem was that pandoc is coded with the Haskell programming language, and that there are no Haskell-based packages available for Manjaro on PinePhone. Because of that, we decided to include the man pages directly into the source tree.

Localhost it is

The default address where blocked domains are redirected is now 0.0.0.0, and no longer 127.0.0.1, since it is a better practice to do so.

Did someone say Semantic?

We decided to adhere to Semantic Versioning for stability reasons. This won’t impact regular users, but people who use TBlock in other projects will probably be delighted by this.

Brand new documentation

Our documentation was updated, too. Take a look at https://tblock.codeberg.page/docs.

Other changes

You can see the full list of changes by reading the CHANGELOG.

What’s next?

We are currently working on a GUI for TBlock. There is still a lot of work to do, so you shouldn’t expect to see anything relevant before the beginning of September.

You can see a list of the upcoming features that we are working on here.