Cooking with Linux

The Cook's Collection

Marcel Gagné

Issue #132, April 2005

Organize your books with an application that takes the ISBN and fills in the rest of the data for you, or catalog a collection of anything.

So that is where my 2005 wine encyclopedia has gone! Mon Dieu, François, I've been looking for that everywhere. Wait a minute. That's my Parisienne cookbook, my Tuscan creations cookbook and my Provencal herbs reference. How many of my books do you have here? Non, mon ami, I am not suggesting anything other than I have been looking for these for some time now. Yes, you are right, at least they weren't lost. I think you had better prepare the tables, mon ami, our guests will be here any moment.

Too late, they already are here. Welcome, mes amis to Chez Marcel, where fine Linux fare is always on the menu, and the wine cellar is always among the greatest in the world. Please sit and make yourselves comfortable while François fetches the wine. Please, mon ami, head down to the north wing of the cellar and bring back the 2000 Bordeaux we were, ahem, subjecting to quality control earlier. It's next to the Margaux labeled “don't open until 2010”. Vite, François. Vite!

While we wait for my faithful waiter to return with the wine, let me tell you about today's menu. As you know, Chez Marcel has served up a great number of recipes in the years we have been here. We've also served up a great deal of wine. Much as I would like to think that I can remember all of this information, the truth is somewhat more realistic. That's why there are shelves of books on Linux, cooking and wine in the kitchen, cellar and office. The problem becomes one of management, and that's why we need a database.

But what kind of database? How about something easy and extremely flexible. Meet Tellico. Robby Stephenson's Tellico is billed as a collection manager, but I like to think of it as a versatile personal library system. It's a great tool for keeping track of your many cookbooks as well as Linux books, science-fiction books, mysteries and so on (Figure 1). That in itself would make it an extremely useful tool for keeping track of what books various friends and family have borrowed. I don't know about you, mes amis, but I have lent out numerous books over the years that have never come back. The people who borrowed them forgot whom they borrowed books from, and I forgot whom I lent them to—with the exception of François. I keep a special list for him.

Figure 1. Tellico makes a great personal library system, and it looks good doing it.

Tellico has templates to track other forms of collections as well, including videos, music, coins, stamps and more. There's even a template for your wine cellar. You also can create your own collections or modify existing forms. I show you more and tell you how to work with it shortly. Prebuilt packages are available for a number of the major distributions, such as Fedora, SuSE, Mandrake, Slackware and others. You also can download the source (see the on-line Resources) and build it using our famous extract and build five-step:

tar -xzvf tellico-0.13.1.tar.gz
cd tellico-0.13.1
./configure --prefix=/usr
make
su -c "make install"

Tellico is a KDE 3.1 or greater package and requires the associated Qt and KDE development libraries. If you are working from source, you may want to consider building with a couple of additional but optional libraries. The taglib development libraries are the first option, which lets you read information from audio files—more on this shortly. Another optional library is yaz. Build Tellico with that and you have access to Z39.50 searches.

When you start Tellico—by running the command tellico—you start with the proverbial clean slate. Expand the program window to a comfortable size and start defining a collection. To create a book collection, click File on the Tellico menu bar, then New and then select New Book Collection. I mentioned that Tellico is a great personal library system to let you record your books and keep track of when and where you got them, as well as who has borrowed them. Before we get to that stage, however, we need to enter the information from our collection (Figure 2).

Figure 2. Entering a New Title into Your Book Collection

Under the various tabs, you can enter the obvious title and author information as well as publisher, publishing date, edition, genre, series number, condition, whether the book is signed, whether it is currently loaned out and whether you have read it. Many more fields are available for you to explore yourself, but I must mention that you can enter a cover image too, as you saw in Figure 1.

If this seems like a lot of work and you don't feel like adding all this information yourself, there is another way. No, you don't have to hire anyone. All you need is a connection to the Internet, because Tellico offers the ultimate in convenience. Simply click Edit on the menu bar and select Internet Search.

Figure 3. With an Internet connection, entering book information is a breeze.

When the Internet Search dialog appears (Figure 3), you can enter the book's title, author, International Standard Book Number (ISBN) or any keyword you wish. Searches are done on Amazon.com's database, although you can search on UK, Japan and Germany sites too. If you searched by ISBN, you likely will have only one entry returned, but other searches probably will return more than one title. Click to select the one you want, then click Add Entry. Your database automatically is updated along with a nice cover image.

Tellico provides an intelligent search dialog to find a particular title or range of titles. You also can access this information at a glance by adding or removing columns reflecting the various fields from the listings on the right-hand side. For instance, if you always want to know what is out, simply right-click on the fields bar and add Loaned. Titles with that field checked have a green check mark in that position.

Other options exist for bringing data into your Tellico collections besides the ones described here. Click on File and look under the Import submenu. There, you can find options to use data from simple CSV files, Alexandria, Bibtex and more.

The export function is even more interesting because this is where we enter into reporting. You can print an entry at any time, but the export function is somewhat more powerful than this. For example, by selecting HTML export, you can generate an HTML page of all your books with whatever display fields your particular view uses. You then are asked for an HTML filename, whether you want to format all fields or selected entries only and so on. The result is a clean HTML-formatted page (Figure 4).

Figure 4. An HTML-Formatted Report

Before we move on, I want to tell you about one other export function of which I am particularly fond. Choose Export to PilotDB from the list, and you can generate a PDB format report readable by your favorite Palm document reader. Simply hotsync to install your document, and you have everything your need at your fingertips.

When I started telling you about Tellico, I mentioned that templates for other collections exist, including music collections. If you don't have a collection on the go already, click File and select New Music Collection. Entering a new CD title is a process similar to that of entering a book, except the fields are different. That said, adding your CD collection to your library is easy if you have the taglib extensions on your system. Simply enter a music CD into your CD-ROM or DVD drive, click File, select Import and choose Import Audio CD Data (Figure 5). The program reads the information from your CD and imports it to your collection.

Figure 5. Tellico can read the title, artist and track information directly from your CDs.

Once your titles are entered, you can go back and fine-tune any information that might be missing. Of course, if your collection is on vinyl or tape, you have to enter everything manually. As with the book collection, you can enter that an album has been loaned to a friend. Knowing what books and music you have and where they are at the moment, you can sit back with a glass of wine and relax.

And now, we find ourselves back at wine, which is not a bad place to be. What about your wine cellar? Incredibly, Tellico has something for the home wine cellar as well. In the same way that you created a book and music collection, you also can create a wine collection. Click File, then New and select New Wine Collection. Now, click Collection, then New Entry and start adding your wines, one by one (Figure 6).

Figure 6. But of course, we can build a wine cellar database as well.

Unfortunately, there is no magical entry system for building a database of your wine collection, no fanciful way to scan the labels and have all the information magically appear. Each bottle must be entered manually (Figure 5). Still, spending a little time in the wine cellar, studying and recording your collection should not be seen as chore but a labor of love.

Finally, for those who have been asking themselves for a package that would allow them to create simple, custom databases, Tellico is also for you. Instead of using one of the predefined templates, choose to create a custom collection. The default collection fields are extremely simple here—title only—so you will want to modify it. After creating your custom collection, click Collection on the menu bar and select Collection fields. Here, you can define additional fields, whether text, numeric or whatever your needs might be.

On that note, mes amis, I see by the clock that closing time once again has arrived. Now that our wine cellar is entirely up to date, François can give you his complete attention and happily will refill your glasses. Until next time, mes amis, let us drink to one another's health. A votre santé Bon appétit!

Resources for this article: /article/8063.

Marcel Gagné is an award-winning writer living in Mississauga, Ontario. He is the author of the all-new Moving to the Linux Business Desktop (ISBN 0-131-42192-1), his third book from Addison-Wesley. He also is a pilot, was a Top-40 disc jockey, writes science fiction and fantasy and folds a mean Origami T-Rex. He can be reached at mggagne@salmar.com. You can discover a lot of other things, including great WINE links from his Web site at www.marcelgagne.com.