luakit

Now updated for WebKit 2 and GTK+ 3.

Luakit is a highly configurable, browser framework based on the WebKit web content engine and the GTK+ toolkit. It is very fast, extensible with Lua and licensed under the GNU GPLv3 license. It is primarily targeted at power users, developers and any people with too much time on their hands who want to have fine-grained control over their web browser’s behaviour and interface.

Screenshots

Screenshot of Luakit.
Luakit in normal mode when reading a web page.
Screenshot of Luakit.
Luakit in follow mode with several link hints visible.
Screenshot of Luakit.
Luakit showing the ad blocker settings page, listing currently active filter lists.
Screenshot of Luakit.
Luakit with a different theme and with vertical tabs enabled.

New Features

Miscellaneous Changes and Bug Fixes

Announcements

Currently development is still ongoing, and although many parts of Luakit are now relatively stable, some parts are in a state of flux. This is complicated by the separation of Luakit’s Lua code into the config/ and lib/ directories; while development changes can be made to Lua modules within lib/, occasionally it is necessary to modify Lua code within config/. This risks breaking users’ configuration, as it is expected for users to copy files from config/ to their home directory and modify them as they see fit.

I am considering ways to mitigate this problem for a variety of common use-cases. Currently, however, it is necessary for users to check for changes to files in config/ whenever they update, and manually merge any changes into any modified files.

Downloading, Installing, & Running

WebKit Security

Important security notice: While switching to the WebKit 2 API means a vastly improved security situation, not all distributions of Linux package the most up-to-date version of WebKitGTK+, and several package very outdated versions that have many known vulnerabilities. As of February 2017, Arch, Fedora, and Ubuntu all have the latest version of WebKitGTK+; but Debian, Gentoo, and OpenSUSE ship outdated and vulnerable versions in their stable channel. See here for more details.

If you use Luakit for browsing, it is your responsibility to ensure that your distribution packages an up-to-date version of WebKitGTK+!

Supported Operating Systems

At this point in time, only Linux and similar Unix-like operating systems are supported. I’ve only tested Luakit on Linux.

Required Dependencies

Installing

Arch Linux users can install the luakit-git package from the AUR. Other users will need to download and build from source. Luakit contains only around 9000 lines of code, so this process is usually very fast.

Downloading The Source

You can download the latest development version in either zip or tar formats.

You can also clone the project with Git by running:

git clone git://github.com/aidanholm/luakit

After downloading, full instructions on building and running Luakit are available in the README.md file.

Contributing to Luakit

Please report any bugs or issues you find at the GitHub issue tracker. If you have any feature requests or questions, feel free to open an issue for those as well. Pull requests and patches are both welcome, and there are plenty of areas that could be improved, especially tests and documentation.