luakit is a fast, light and simple to use micro-browser framework extensible by Lua using the WebKit web content engine and the GTK+ toolkit.
You don't have to be a developer to use luakit on a daily basis. If you are familiar with vimperator, pentadactyl, jumanji, uzbl & etc you will find luakit behaves similarly out of the box.
- Lua (5.1)
- lfs (lua file system)
- libwebkit (webkit-gtk)
To compile the stock luakit run:
To link against LuaJIT (if you have LuaJIT installed) run:
To build without libunique (which uses dbus) run:
To build with a custom compiler run:
Note to packagers: you may wish to build luakit with:
To prevent luakit searching in relative paths (
./lib) for user
CC=clang build options do not conflict. You can use whichever you desire.
To install luakit run:
sudo make install
The luakit binary will be installed at:
And configs to:
And the luakit libraries to:
To change the install prefix you will need to re-compile luakit (after a
clean) with the following option:
make PREFIX=/usr sudo make PREFIX=/usr install
Or to see the full list of luakit launch options run:
The entire browsing experience is controlled by the configs in
/etc/xdg/luakit. Most of it is fine out of the box.
It is common to fork the configs from
/etc/xdg/luakit into your home directory
to make your customizations. It is not necessary to copy and or edit all of the
mkdir -p $XDG_CONFIG_HOME cp -v /etc/xdg/luakit $XDG_CONFIG_HOME
mkdir -p ~/.config cp -v /etc/xdg/luakit ~/.config
The several files of interest are explained below.
This is the main config file which dictates which and in which order different parts of the browser are loaded.
Defines every action the browser takes when you press a button or combination of
buttons (even mouse buttons, direction key, etc) and the browser commands (I.e.
:lua <code>, etc).
Change fonts and colours used by the interface widgets.
Is responsible for building the luakit browser window and defining several
helper methods (I.e.
Is a wrapper around the webview widget object and is responsible for watching
webview signals (I.e. "key-press", "load-status", "resource-request-starting",
etc). This file also provides several window methods which operate on the
current webview tab (I.e.
Manages the modal aspect of the browser and the actions that occur when switching modes.
Change global options like scroll/zoom step, default window size, useragent, search engines, etc.
To delete luakit from your system run:
sudo make uninstall
If you installed with a custom prefix remember to add the identical prefix here also, example:
sudo make PREFIX=/usr uninstall
Please use the bug tracker at:
Join us in
#luakit on the