-- Leo's gemini proxy

-- Connecting to gemini.ctrl-c.club:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

___ _ ___

/ _ \ _ _| |_ ___| _ )_ _ _____ __ _____ ___ _ _

| (_) | || | _/ -_) _ \ '_/ _ \ V V (_-</ -_) '_|

\__\_\\_,_|\__\___|___/_| \___/\_/\_//__/\___|_|



A few days ago, I made the decision to switch my web browser, and for reasons still unclear to me, I concluded that Librewolf, my beloved browser, was consuming too many resources for my liking. While exploring alternatives, I recalled a small project that had caught my attention but seemed immature at the time – qutebrowser. I had never paid much attention to it before, but that afternoon, I decided to give it a try. To my amazement, it turned out to be a lightweight, user-friendly browser that incorporated all the keybindings of Vim. In a word, it was relaxing. Today, I want to describe the step-by-step process of configuring it on my Debian system.


installation

First, I quickly checked for qutebrowser availability:


sudo apt search qutebrowser


Then, I proceeded with the installation:


sudo apt install qutebrowser-qtwebengine qutebrowser-qtwebkit qutebrowser qtwebkit-plugins qtwebkit -y


configuration


After installation, I set qutebrowser as my default browser in my Sway configuration file:


set $browser=qutebrowser


Next, I attempted to read the qutebrowser configuration file, but to my surprise, it was empty:


less /home/jolek78/.config/qutebrowser/autoconfig.yml


Empy autoconfig, no config. I learned that if a config.py file existed, it would be ignored unless explicitly loaded using config.load_autoconfig(). It's important not to edit this file manually, as qutebrowser will overwrite it. Instead, I needed to create a config.py. Could there be an example config.py in the package? I searched for the directory:


sudo find / -d -iname qutebrowser 2>/dev/null


Then, I looked for specific files:


sudo find / -name "config.py" 2>/dev/null | grep qutebrowser


Unfortunately, these files weren't very helpful. So, I opened a tab to


:open qute://help/configuring.html


and, with patience, I got to work. I explored GitHub in search of examples and crafted my configuration:


nvim ~/.config/qutebrowser/config.py

config.load_autoconfig()

c.tabs.show = 'always'

config.set("colors.webpage.darkmode.enabled", True)

c.downloads.location.directory = '~/Downloads'

c.downloads.location.prompt = False

c.downloads.location.remember = False

c.url.start_pages = 'https://searx.envs.net/'

c.url.searchengines = 'https://searx.envs.net/? ♪

c.aliases = 'quit', 'w': 'session-save', 'wq': 'quit --save'


It's a basic configuration, but it suits my current needs. I quickly noticed that the adblock feature wasn't working properly, so I turned to GitHub to find python-adblock:


git clone https://github.com/ArniDagur/python-adblock.git

cd python-adblock/

pip install .


I launched qutebrowser again using my keybinding:


bindsym $mod+Shift+f exec $browser


Then, I executed an adblock update:


:adblock-update


And everything worked perfectly, meeting all my requirements.


bookmarks

I had accumulated a multitude of bookmarks, many of which were useless and repetitive, in my previous browser, Librewolf. It was time for some spring cleaning:


grep -o 'HREF='[^]'' bookmarks.html | awk -F'' '{print $2'' > urls

nvim urls


After editing the file, I exported it to the qutebrowser bookmark file:


cat urls >> ~/.config/qutebrowser/bookmarks/urls


my two cents

You know what? Qutebrowser is simply perfect for me.


-- Response ended

-- Page fetched on Sun May 19 00:52:32 2024