Another alternative that I use as a daily browser is qutebrowser. Basically the same idea, but with Python instead. Also comes with nice vim-bindings for navigation: https://qutebrowser.org/
I don't have chrome, but I have chromium, and I don't see its package depend on the qt5-webengine package that qutebrowser depends on. Doesn't chrome/chromium use their own web engine called Blink[1]?
I used it for a while. It's fantastic browser. Unfortunately modern web is so broken that using browser without real adblocker (uBlock) is basically impossible so I had to switch to Firefox.
Fastest browser I've used so far (Went from IE > Firefox > Chrome > Firefox). No problems with UX either, I'm using the vertical tabs, the rest of the browser barely have any UX except for keyboard shortcuts and commands.
These browsers are plenty fast since they are mostly just using lua/python for the UI and webkit/chromium for the browser component. The things that keep me coming back to luakit and qutebrowser are:
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?
A quick glance at the luakit and qutebowser documentation should give an idea. The difference can be summed up by pointing out that the python and lua code you write for these browsers is trusted and can even modify the UI of the browser. For example in luakit you can add new “chrome pages” so if you don’t like the bookmark manager for example you could write your own.
User scripts only run when a page is loaded afaik.
I was thinking about specifically the different of luakit and qutebrowser, not luakit/qutebrowser and other browsers. As mentioned above, I already use qutebrowser daily.
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
The new website looks great! And it seems new maintainers have stepped up. Is Luakit on an upswing?
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],
Sometime back I was looking for alternative browsers and came across your comment (dated 2015)[0]:
> 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).
In my opinion what both luakit and qutebrowser need to grow or at least stay somewhat healthy is to get way easier to install the latest version. Qutebrowser the author is planning on getting pyinstaller working. For luakit I tried to get flatpak working but had issues with a dependency lfs. I'm hoping they can remove it since it's barely used at all and then the flatpak will just be ready.
I really liked Luakit, but one problem I was having was with videos not loading I believe. I could have hacked it up with an external player I believe, but I couldn't get it to work. Has this been sorted?
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.
Try looking at the settings page to see if it could be disabled. There are settings relating to video playback and hardware acceleration. There was a bug in hardware acceleration that caused the browse to use a lot of cpu, maybe it has been fixed at this point.
I really liked using this web browser. I like qutebrowser too but luakit has some things it doesn’t have. One was making your own luakit:// pages.
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 quite liked uzbl when it was being more actively developed, seemed like a very promising project. Unfortunately development stalled some time ago and it doesn't seem like it's going to start again any time soon. So I migrated to luakit. Luakit and uzbl are pretty much on par with each other feature wise and both are pretty scriptable.
Can this do basic functions such as play a video, post a form or run advanced JavaScript? If it can’t then it is broken today’s web technologies are just too advanced for some of these small browsers
Page is indeed outdated. Check the project GitHub repo, last release (e.g. git tag) was on Nov 2018, version 2.1.
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
Anyone know of something like this but with web technologies rather than a different stack? Vivaldi is the closest I can think of and while it is built with a similar concept it's structured in a way that makes it near impossible for you to modify substantially as a user (and you have to reapply your edits after every update).
E.g. in Vivaldi I blend the URL bar into the top-of-window space where tabs are.
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).
Some dependencies have the package "luarocks-5.1" as a build dependency, and that package has been removed. Apparently, it's been replaced by "luarocks", so you can install in Archlinux by fixing these dependencies (tested on my own system):
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.
One thing I love about luakit is the window is rendered no-frills -- just the content. I use openbox with undecorated windows, and luakit is the only web browser that lets me just have a rectangular space in my display containing web content, resizable and scalable to any dimensions I want. The vim-like interface for me is just a bonus.
The lua api in luakit (https://luakit.github.io/docs/) is trusted, meaning it has similar capabilities to pre-57 Firefox, as opposed to webextensions (in modern FF and Chrome), which are treated as untrusted and thus are somewhat more limited in what they can do.
Annoyed observation: the moon is slightly off-centre. The curve of the moon's left side and the inside curve of the Earth match, but it looks displeasingly off.
Not helpful. The reason why I asked this was that the page claimed that Luakit was a web browser but then immediately started talking about it being a “web browser framework”, and the screenshots showed nothing except for what looked like a web view (there’s no browser chrome, for instance).