Turning Surf Into A Usable Browser
Other than init systems and distros, there is nothing that Linux users like arguing about more than browsers. “Ungoogled Chromium is the best”, “No LibreWolf is the best”. Well, there is one browser that is made specifically for Linux and BSD, that many people ignore. But it turns out, that with a little configuration, it can be not only a very fast, but feature rich browser. So, I will explain how you can take Suckless’s Surf browser, and make it a browser that it on par with other browsers, with tabs, a search engine, XDG compliance, and even smooth scrolling.
Installing Surf & Tabbed
Surf is a tricky beast. If you don’t have the latest version of WebKit or GTK installed, you should expect hell if you are planning to build from source. So, if you are on a stable Linux distro and don’t want to build your own version of WebKit, you can install Surf with one of these commands.
sudo apt install surf
sudo dnf install surf
AURHELPER -S surf-git
Or, if you have the newest versions, or built them from source, and want smooth scrolling, XDG compliance, and a search engine, build like so.
git clone https://git.suckless.org/surf cd surf make clean install
With Tabbed, there aren’t any dependency issues, so it is advised that you install it the same way you would most Suckless software.
git clone https://git.suckless.org/tabbed cd tabbed make clean install
Using Tabbed with Surf
If you are using a traditional app launcher like dmenu or Rofi, you can simply type “tabbed surf -e”. But, if you don’t want to do that every time, you can simply create a keybinding, shortcut in your desktop environment, or even an alias in your .bashrc or .zshrc.
Adding a search engine, XDG compliance, and smooth scrolling.
Downloading the .diff files
Before you can patch Surf for the desired changes, you need do download the .diff files. Using curl, you can download these patches like so.
curl -O https://surf.suckless.org/patches/web-search/surf-websearch-20190510-d068a38.diff
curl -O https://surf.suckless.org/patches/xdg/surf-xdg-2.0.diff
Patching suckless software isn’t hard at all. Just type,
patch -i FILENAME
and then recompile with.
make clean install
You can now use the Surf browser with tabbs, a search engine, XDG complicance, smooth scrolling, and whatever else you would like to add. It allows you to have a usable browser that works on even the oldest of computers. Plus, you can rub your amazing choice of browser in the face of people arguing about Chromium/Firefox.