Dillo, the GTK Web Browser
The purpose of this article is to introduce Dillo, a web browser written by a group of programmers led by Jorge Arellano Cid. Although the version reviewed (0.6.4) is still alpha code, it has some features that already make it useful.
Dillo is a very small and fast web browser written completely in C. The uncompressed source code tarball is approximately 1.2MB and the resulting executable file is 1.1MB. While Dillo is based on GTK+ (GTK version 1.2.0 or higher is required), GNOME isn't required to run it. Dillo uses the HTML parser from the gzilla project, so Mozilla doesn't have to be installed either, as is the case with Galeon.
Basic functionality is provided, such as forward and backward histories, home, along with reload, abort and save buttons. A handy feature is a button that clears the URL textbox, allowing you to paste URLs from the clipboard without having to manually clear the textbox first.
Dillo can open files from the local disk either by clicking on the underlined F in the toolbar or by typing its full name preceded by file: in the URL textbox.
The configuration is handled by manipulating the ~/.dillo/dillorc file with a text editor. A sample dillorc file is found in the source code directory.
Dillo can display PNG and JPEG pictures, and it does a decent job of displaying tables. Since frames aren't supported yet, Dillo displays a link to each frame on the page that allows the user to display them one at a time. Dillo has correctly displayed sites such as Freshmeat, NewsForge and Linux Journal.
Right now Dillo can download files via HTTP by right-clicking on the link and selecting Save Link As. To download a file via FTP you need a program such as WebDownloader for X. Copy the link to the clipboard by right-clicking on it and selecting Copy Link Location, then paste the link into the external download program.
A Find dialog is accessed by pressing CTRL-F. When a match is found, Dillo tries to scroll the page so it is at the top of the window. One thing to note is that the matching word is not highlighted, which can make it difficult to find.
Keyboard shortcuts include ALT+, and ALT+. to navigate forward and backward through your history. Double-clicking on the browser toggles the toolbar between visible and invisible, freeing up some more viewing space.
In order to use the SSL-Cookies patch for Dillo, you need OpenSSL installed, and you have to get the Dillo source code dated Jan. 14, 2002 from the CVS archive. This is accomplished by the following steps:
Get the Dillo sources from the CVS archive:
$cvs -d:pserver:email@example.com:/cvsroot/dillo login(Hit Enter when asked for your CVS password)
$cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/dillo co -D 01/14/2002 dillo
Copy the dillo-ssl-cookies.2002-01-14.diff file into the dillo directory created above.
It might be a good idea to make a backup copy of the source code in case you encounter problems with the patching procedure. Move into the dillo directory and apply the patch with the following command:
$patch -p1 -i dillo-ssl-cookies.2002-01-14.diff
Execute autoconf to create the new configure file.
Configure the software to include the OpenSSL libraries with the following command:
$./configure --enable-ssl --with-ssl-inc=/usr/local/ssl/include --with-ssl-lib=/usr/local/ssl/libIf the configure script answered yes to the following lines then your build should work:
SSL_connect in -lssl, BIO_ctrl in -lcrypto, openssl/ssl.h and openssl/err.h
Make the executables by issuing the make command and then install the files by changing to root and issuing make install.
$make $su $make installIf you get an error about a missing AM_PATH_GTK macro when Dillo starts compiling, look for a file called gtk.m4 on your system. If it is in /usr/share/aclocal, then it needs to be copied or symlinked to /usr/local/share/aclocal.
To determine which cookies Dillo accepts and rejects, create a cookie_controls file in your ~/.dillo directory. The Cookies.txt file placed in the doc directory by the patch contains information on using the cookie_controls file. Saved cookies are stored in the ~/.dollo/cookies file.
- Free Today: September Issue of Linux Journal (Retail value: $5.99)
- The Tiny Internet Project, Part I
- Bitcoin on Amazon! Sort of...
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Android Browser Security--What You Haven't Been Told
- Returning Values from Bash Functions
- Epiq Solutions' Sidekiq M.2
- Machine Learning with Python
- Securing the Programmer
Pick up any e-commerce web or mobile app today, and you’ll be holding a mashup of interconnected applications and services from a variety of different providers. For instance, when you connect to Amazon’s e-commerce app, cookies, tags and pixels that are monitored by solutions like Exact Target, BazaarVoice, Bing, Shopzilla, Liveramp and Google Tag Manager track every action you take. You’re presented with special offers and coupons based on your viewing and buying patterns. If you find something you want for your birthday, a third party manages your wish list, which you can share through multiple social- media outlets or email to a friend. When you select something to buy, you find yourself presented with similar items as kind suggestions. And when you finally check out, you’re offered the ability to pay with promo codes, gifts cards, PayPal or a variety of credit cards.Get the Guide