Surf is a simple, lightweight browser from Suckless Tools, the same people who brought you dmenu and dwm. When compiled and configured right, Surf is incredibly robust and stable, able to handle most websites extremely well, and it has a clean and simple layout without buttons and bars to encroach on the web material you’re reading. Unfortunately, Surf is underdocumented, so most who try Surf give up after a few minutes, moving on to Firefox or Chromium or Palemoon or Midori. This web page serves as the needed documentation to make Surf a pleasure to work with.
I have tried surf and ran for for quite some days, but there were a number of problems I had with it.
There were probably more points which I don’t remember anymore.
Now I’m back on Firefox and have turned on the start-search-by-typing option. This gives me the required level of keyboard navigation I need – I can just type in the text of a link and Firefox will select it. There is a surprising amount of useful keyboard shortcuts in Firefox that is a little bit hidden (for example, by typing ‘ [single quote] with the start-search-by-typing option enabled you search only the links of a page, very useful).
The SSL woes are more than likely because Firefox caches sub-CAs it sees in the wild to handle all the badly configured webservers that do not serve the whole certificate chain when connecting.
I really wish browsers did not do this as it masks a problem that to the sysadmin running the site looks just like a temporary glitch in the matrix that they can ignore.
I hate the web.
For adblocking, you could use http://git.codemadness.nl/surf-adblock/ with surf-webkit2.
There are some issues with TLS, at least on my Fedora system (visiting the badssl.com dashboard). For example, no host matching, no check for expired certificate, etc.
There’s ongoing work by Quentin Rameau to port surf to webkit2. See the branch here. We’re planning to make this default as soon as it is stable. 99% of all stability issues with surf are due to the fact that webkit1 is a mess and more or less deprecated.
[Comment removed by author]
Cmd-shift-[ doesn’t work?
While I like the idea of slim browsers, the general consensus is to avoid browsers using ‘WebKit/GTK+’. OpenBSD now warns users when they use a browser that depends on
www/webkit:Here is a blog post that goes into detail about the issues around existing webkit based stuff.
The above info is incorrect as per the post it links to. WebkitGtk+ 2.4 is old and insecure, since it’s a branch of WebkitGtk+ not maintained anymore since quite some time. Newer versions of WebkitGtk+ are properly maintained. Just take a look at the actual post you linked to.
I think the key takeaway is that surf uses 2.4. I guess I should have been more explicit when I said “browsers using ‘WebKit/GTK+’.”, I assumed the context of the original article would be applied.
Since someone mentioned Webkit, I’ll just stick the question in here. As a Gentoo user, I bother about compile times, and compiling WebkitGtk+ takes more than an hour on my system. Even Firefox compiles faster. If I were to develop an application that should render some simple HTML e.g. for help pages, which alternative embeddable renderers exist?
librocket/dillo/netsurf
librocket is pretty enormous but it got used for the UI in Warsow, dillo/netsurf are probably also enormous and I don’t know anything that uses them.
It’s simply not possible to write a small, clean browser implementation which conforms to current web standards. If you’re willing to stick to a buggy and incomplete subset of html, there are some options like netsurf and dillo.
Personally, I’d avoid HTML entirely if I could.