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:firstname.lastname@example.org:/cvsroot/dillo login(Hit Enter when asked for your CVS password)
$cvs -z3 -d:pserver:email@example.com:/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.
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- Three More Lessons
- Django Models and Migrations
- August 2015 Issue of Linux Journal: Programming
- Hacking a Safe with Bash
- Secure Server Deployments in Hostile Territory, Part II
- The Controversy Behind Canonical's Intellectual Property Policy
- Huge Package Overhaul for Debian and Ubuntu
- Shashlik - a Tasty New Android Simulator
- Embed Linux in Monitoring and Control Systems
- KDE Reveals Plasma Mobile