Luakit – fast, extensible, and customizable web browser
luakit.github.io
luakit.github.io
1. Way better vim binding support. Especially that the vim mode doesn't break when the extensions aren't loaded (ie a page fails to load or dev tools are focused or on settings pages)
2. Way more scriptable and customizable.(luakit is much more mature in this regard)
Love to hear more about exactly what is more scriptable and customizable.
The user scripts (not to be confused with Greasemonkey-like userscripts) gives me all the scriptability I need. What could more could I do with luakit?
User scripts only run when a page is loaded afaik.
User scripts (again, in the qutebrowser sense, not greasemonkey as it seems you're thinking about) is launched when the user wants them to launch. See more details here: https://qutebrowser.org/doc/userscripts.html
ps: first start feels great
Plus it was really easy to write simple quick scripts for it without the overhead of web extensions.
The main reason to use it is the Vim support is rock solid, instead of a hack on top of existing behaviour.
I don't think so. Why would it be a concern? It's not like the web rendering engine will "phone home" under your nose or something...
This project could have immense value to the web. Having multiple language communities working on the same types of problems, and in cross-cultural collaboration, gives the best approach, ie with [Model-driven engineering] ([example below]).
I have reviewed Luakit's codebase, trying to figure out the extent of its DOM scripting capabilities (notes elsewhere atm). If anyone else is interested in this, pls message me on Discord, @naturallymitchell via [The Programmers Hangout] or [Luvit].
A good example issue for DOM scripting would be something like [scrolling screenshots],
https://github.com/luakit/luakit/issues/763
> The code itself works very well. Mason, founder of Luakit and most generous contributor, got hit by a bus so new maintainership roles have yet to get filled by existing and new users and developers. All current development takes place outside of "central" repo, and it needs organizing and compiling. Once this takes place, development and merge requests can continue full course.
I actually saved the comment as a placeholder in ZIM[1] - in a section where I keep programs to try in the future. You seem to keep up with the project pretty well and it also looks like the project itself has been moving forward. Going to give it a try this time ("This project could have immense value to the web." - I agree).
Every time I use one I love it initially but then find myself desperately wishing for uBlock Origin and my password manager extension.
Big fan of the project though, can't say that enough. It was a nice, lite and zippy browser with nice key bindings + Lua scripting. A lot to like about it, just hope some of the issues get resolved.
I tried to get a flatpak working for it but was unable to get one of the dependencies luafilesysyem to work. I think the author was going to remove it so once that’s done installing the latest version should get much easier.
I'm looking forward to the day when we will be able to use servo instead, but we're not there yet.
Since then just the “develop” branch has received new code, but GitHub Insights shows stable activity on the last month.
I’m not involved in the project, they’re probably low on contributors and taking things slow. The documentation does point to compiling from code, so you should be good by using the develop branch and even bumping some dependencies if concerned with security issues and etc
Also while there are many things web extensions can do in page their interactions with the browser as a whole or OS are extremely limited. This is good for security, bad for customization. Even in cases where web extensions are appropriate it can make implementation much more difficult (again, good for general user security, bad for running your own code).
For instance: does it make automating interactions with web sites easier than using other tools?
set -e # halts if there's an error in the following
# move to a directory for building modified dependencies
mkdir -p build
cd build
for aurpkg in lua51-{say,luacheck,luassert}; do
# downloads the aur-package building script and files
cower -d "$aurpkg"
(
cd "$aurpkg"
# replace dependency
sed -ri 's/luarocks-?5\.1/luarocks/' PKGBUILD
# install dependencies, build package, and install
makepkg -si
)
done
# install luakit-git from aur
pacaur -y luakit-git
Of course, these things being in the AUR, it's preferable if one gives the PKGBUILDs a read before deciding to build and install each of them, but if you've judged it's OK, you can just run the above.If luakit is really on an upswing, maybe the package will be moved back to one of the official repos.
(Sorry, could not resist...)