You are on page 1of 4

KNOW HOW Blogging Tools

Linux Tools for Weblogs and RSS

Diary or Newsticker?
Weblogs are springing up like mush-

rooms all over the Internet, and more

and more websites are starting to

offer RSS feeds. This sudden interest

is reason enough for us to look at a

few Linux-based tools that simplify

how you work with both.

BY NICO LUMMA AND PATRICIA

JUNG

Nick Benjaminsz
T
he WWW may just be one Internet gies are universally applicable. The most contents for the third-party site. Many
service among many, but it is defi- important buzzwords in this context are blogs make it really easy to serve up and
nitely the one that demonstrates RSS (“Rich Site Syndication”), and XML integrate RSS files. For example, all
the greatest innovation potential. It uses RPC (XML-based “Remote Procedure major weblog systems either use the
Web chats and streaming on the one Calls”). RSS allows data to be exchanged blogger API or the MetaWeblog API, and
hand to extend traditional text and between websites. XML RPC provides an this means that you can update your
image-based information sources. On the interface that allows access to multiple own blog with the right tools.
other hand, recent developments clearly weblogs. Of course, you will need your own
show that the latter has more to offer This may sound fairly abstract, but a weblog first. Free services such as http://
than it would appear at first glance. simple example will help. If you embed a www.blogger.com or http://www.express
The number of of weblogs (more com- so-called RSS feed from a third-party blogs.com/, which are partly funded by
monly known as blogs), Web-based website within your own website, your advertizing, provide a good opportunity
diaries (for private reasons or as busi- own site will display the current table of to get to know the subject. Experts will
ness tools to keep the members of a team
updated) has rocketed. Along with RSS Listing 1: Sample RSS file
newsfeeds, which allow webmasters to 01 <?xml version="1.0" 10 <item>
host dynamic content from other sources encoding="ISO-8859-1"?> 11 <link>http://blog.borho.net/
on their own sites, or Intranets. 02 <rss version="0.92"> index.php?item=27</link>
Blogs are an inexhaustible source of 03 <channel> 12 <title>Apache Log in
tools that can facilitate the work of vir- 04 <title>stacktrace</title> Realtime</title>
tual or real teams, allowing them to 05 <link>http://blog.borho.net/ 13 <description>ApacheTop is a
distribute information quickly and with- </link> neat tool for displaying the
out red tape, provoke discussions, and 06 <description>just a Apache access_log in realtime.
update obsolete content, without fight- weblog</description> 14 Excellent, I like it!
ing their way through a jungle of static 07 <language>enu</language> 15 [via
HTML files. In other words, blogs are a 08 <lastBuildDate>Tue, 30 Dec Syndic8Blog]</description>
simple way to put content on Web pages. 2003 23:55:11 16 </item>
GMT</lastBuildDate> 17 </channel>
Long Live Buzzwords! 09 <webMaster>martin@borho.net 18 </rss>
At first glance, these online journals may </webMaster>
seem banal, but the underlying technolo-

42 March 2004 www.linux-magazine.com


Blogging Tools KNOW HOW

Figure 1: BloGTK prompts for a few settings. Figure 2: Creating an article with BloGTK. Figure 3: The entry will look like this on the Web.

instead opt for an installation on their help to collate articles from multiple sense to use bespoke tools – to save a
own web servers. However, this does blogs on a single page. This kind of con- published article on a local machine
assume some familiarity with Linux tent aggregation is easy to implement first, or to compose an entry offline
servers and weblog system configura- with today’s blog systems, and will eas- before placing it in the blog.
tion. MovableType [1], Nucleus [2], and ily fill the sidebar of a website with BloGTK [4] is one of only a few weblog
Sunlog [3] are all fairly widespread. All appropriate information from external clients for Linux. It requires both a
of these tools use either the MetaWeblog sources. Python installation on your system and
or Blogger API. the PyGTK library with Python Glade2
The Blogger API is the mother of all Creating a Newsticker (an independent package with some dis-
blog interfaces and was developed by the RSS – an XML-based standard – is avail- tributions) to provide graphics support.
US bloghost Blogger.com, which helped able in a number of variants. The most Red Hat 9.0 users can simply install the
make blogging popular in the USA. How- common versions are 0.92 and 2.0, and BloGTK RPM. This also applies to Suse
ever, Blogger does not provide a great most tools fortunately support both. 9.0, although we were unable to dein-
deal of functionality, a failing that Dave Although the RSS file in Listing 1 may stall the package later. The important
Winer originally aimed to remove with seem cryptic at first glance, a closer look thing to note with Suse is that you need
his MetaWeblog API. This interface can soon reveals what it is all about. The first to install python-numeric and python-
do more, but is not widely supported. few lines are occupied by the blog itself: gnome along with python-gtk.
Both APIs support the adding of new the title (stacktrace), the URL (http:// If you prefer to download the latest
entries to a blog, as well as editing and blog.borho.net/), the description (just a tar-bzip2 compressed archive rather than
deleting. The MetaWeblog API supports weblog), the language (enu for English) use the RPM package, you might experi-
easy file uploads, to add images. and of course a contact address (mar- ence some difficulty when you attempt
Some systems support group blogs and tin@borho.net). The lines that follow to unpack the archive. Missing permis-
thus allow multiple users to contribute to <item> contain the individual items, sions for some of the files in the archive
a weblog. Collaborative blogs of this type with a link to an article, a title, and a leave you no alternative on some sys-
typically focus on a specific topic (such description in each case (the description tems but to assume root privileges before
as a common project), and – in contrast can also be an abstract. RSS files like this entering tar -xjvf blogtk-0.8-5.tar.bz2.
to other popular online journals – also example are known as RSS feeds, as you You can then enter chmod -R a+r
have the advantage of allowing many can “feed” them to other web pages. BloGTK-0.8-5 to set the missing read per-
people to publish their opinions under a missions. Assuming that the Makefile in
single roof. Blog Tools the new directory is readable, you can
No matter whether you are dealing Of you can use your web browser to then call make (in the BloGTK-0.8-5
with a group or traditional blog, RSS can blog, and in fact this is the typical directory). This will let you launch the
approach. In certain cases it makes more tool by typing BloGTK & at the prompt.
GLOSSARY
API:“Application Programmers’Interface”– Table 1: A small selection of interesting blogs
documented interfaces that allow programs http://www.antipope.org/charlie/blosxom.cgi Charlie Stross’weblog.This is how you should do a weblog.
to access the functionality of external http://live.linuxchix.org A Linux community for women.
libraries, services, or other programs.
http://planet.gnome.org Gnome twenty four hours a day.
Python: One of the most popular scripting
http://blogs.ittoolbox.com/linux/ ACTO’s UNIX/Linux Blog
languages besides the shell and Perl. Script
programs do not need to be compiled. http://www.justenoughlinux.com/ The ironic subtitle of this blog is:“Learning just enough Linux to be
Instead, they are executed directly by an dangerous”.
interpreter which parses the source code. http://www.kdedevelopers.org/blog/ The KDE developer community blog.

www.linux-magazine.com March 2004 43


KNOW HOW Blogging Tools

Figure 4: Snownews’ help menu provides an overview of its features. Figure 6: The [H] key provides help in the article view.

Note that you do not need to use shown in the Preview Post tab (see Figure If you use Mozilla, you should take a
make. Instead, simply enter the follow- 3). Selecting Publish Entry finally sends look at MozBlog [6]. This plug-in embeds
ing command in BloGTK-0.8-5 the newly created posting to the blog a blog tool in your browser, allowing you
server. to select Publish in the dropdown menu.
./src/BloGTK.py & When composing entries, the same Unfortunately, the tool could not connect
rules apply as to any other online publi- to our blog software, which means that
If you installed the blogtk-0.8.noarch. cation. A descriptive heading is useful, we cannot say much more about it in
rpm archive on Suse 9.0 (not recom- and occasional paragraphs will improve this article.
mended, as previously mentioned), this readability. Quotes should be tagged as
command is /usr/lib/blogtk/BloGTK.py such (and linked to the original, if at all Feeds: An Overview
&. possible). Also, one should avoid playing So called feed readers are another useful
When first launched, BloGTK displays with fonts and font sizes to keep the group of programs (not only for blog-
the configuration menu (see Figure 1), publication readable. gers). They provide an overview of RSS
which you can later access by selecting It is quite simple to post articles with feeds, and highlight new articles. This
Edit / Accounts and Settings …. There BloGTK, but you will need a web makes it just as easy to read newstickers
are not a lot of required settings, but you browser to modify the weblog configura- as it is to browse newsgroups. Feed read-
should at least know the URL of your tion itself. The Python-based GNOME ers display only the content of the RSS
blog and your username/password com- applet, Gnome Blog [5] provides similar files, but as they are linked to your stan-
bination. After giving BloGTK your data, functionality, although it is tricky to dard browser, you can access any articles
you can then access the weblog. We cre- install. In our lab, version 0.7 refused to that catch your eye directly from within
ated a posting (see Figure 2), which is run on Suse 9.0. the reader.

Figure 5: Adding a feed. Figure 7: Liferea shows the feed list and the articles at the same time.

44 March 2004 www.linux-magazine.com


Blogging Tools KNOW HOW

add your first RSS feed (see Figure 5) –


for example http://slashdot.org/slashdot.
rdf for news from SlashDot, (for more
tips, see [8]). The important thing to
note is that you need to supply the full
URL of the feeds. Snownews will not
automatically add the http:// protocol
prefix.
You can then use the arrow keys to
select a feed from the list, and hit the
Figure 8: Monitoring a new feed. [Enter] key to enjoy the current entries Figure 9: If the title provided by the RSS feed is
(see Figure 6). [Q] will go back one level. inappropriate, you can simply rename it.
Many bloggers use a so-called blogroll If you are at the feed list level, pressing
to list blogs with frequent read access [Q] will quit the program. After a sharp In contrast to Snownews, Liferea not
and display any updates to them. learning curve, you will find that only handles RSS feeds, but also OPML
Blogrolling.com offers this service. You Snownews allows you to read articles (“Outline Processor Markup Language”)
can export the blogroll and parse it with more quickly than a GUI-based web formatted feeds. This allows the program
your feed reader to provide a convenient browser would. to access exported blogrolls.
overview of your favorite blogs. Program / Settings allows you to mod-
Where’s the GUI? ify Liferea to your own liking. Also, you
Snownews is Good News If you prefer a GUI-based approach, you can select Feeds / Folder / New Folder to
The first keyboard-controllable com- can try Liferea [9] (see Figure 7), a clone create folders, and then drag & drop RSS
mand line feed reader, Snownews [7], of the popular Windows program, Fee- feeds to these folders to your heart’s con-
may seem unusual at first glance. But as dreader (http://www.feedreader.com/). tent. You can click the Update button at
RSS feeds mainly comprise text, you can In contrast to Snownews, Liferea pro- any time to pull the current feeds from
typically do without a graphical inter- vides an attractive graphical interface, the servers. A number in brackets to the
face. Snownews’ biggest advantage is requiring both libxml2 and the GNOME2 right of the feed name indicates that the
that it allows you to access your favorite libraries with dev(el) files to do so. feed contains new articles. If the name of
tickers and blogs anywhere. Listing 2 shows the steps for compiling an entry in the feed list does not tell you
After downloading the pre-compiled and installing. The line that sets the enough, you can right-click the entry,
snownews-1.4.2.i586.tar.bz2 archive PKG_CONFIG_PATH variable was neces- and select Properties in the dropdown to
from the project homepage, you can sim- sary for Suse 9.0, as the configure script learn more. The dialog box that appears
ply enter tar -xjvf to unpack it, and then failed to find the libxml-2.0.pc file in the (see Figure 9) allows you to correct the
launch Snownews: /usr/lib/pkgconfig directory without a lit- misleading title. ■
tle help. You can omit this step on other
cd snownews-1.4.2/ systems. INFO
./snownews After typing liferea & to launch the
[1] MovableType:
program, you can select Feeds / Feed / http://www.movabletype.org/
To compile the source code archive New Subscription (see Figure 8) to
[2] Nucleus: http://www.nucleuscms.org/
(snownews-1.4.2.tar.gz) yourself, you import new feeds. Although the program
[3] Sunlog: http://www.sunlog.ch/
will first need to unpack the archive, and crashed each time we tried this under
then enter make to compile, and make Suse 9.0, after re-launching, we were [4] BloGTK: http://blogtk.sourceforge.net/
install (as root) to install the program. surprised to find that the selected feed [5] Gnome Blog: http://www.gnome.org/
This requires ncurses and the libxml2 had actually been added to the left-hand ~seth/gnome-blog/
libraries, plus dev(el) packages. column. Selecting a list entry displays [6] MozBlog: http://mozblog.mozdev.org/
After launching Snownews, by typing abstracts of the entries in the feed in the [7] Snownews: http://home.kcore.de/~kiza/
snownews at the prompt, you can press right-hand panel. You can then click on software/snownews/
the [H] key to display an overview of the one of them to display the detailed view [8] RSS search: http://feedster.com/
tool’s options (see Figure 4). Press [A] to in the lower right panel (see Figure 7). [9] Liferea: http://liferea.sourceforge.net/

Listing 2: Liferea installation from source code


Nico Lumma is the
THE AUTHOR

tar -xvzf liferea-0.4.5.tar.gz CTO at orangeme-


cd liferea-0.4.5/ dia.de and
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig responsible for devel-
./configure oping their blog
service, Blogg.de. His
make own blog is online at
su -c "make install" http://lumma.de/.

www.linux-magazine.com March 2004 45

You might also like