Emmabuntus, Ubuntu, Derivate, Linux, Open Source BackTrack, Linux, distributions, Ubuntu, derivate, securuty, forensic VirtualBox, Linux, Ubuntu, Raring Ringtail synaptic, Ubuntu, Linux, software packages jwplayer, multimedia, Linux, Ubuntu, flash Meshlab, graphic, software, Ubuntu, open source, Linux Synapse, Linux, Ubuntu, raring, Quantal Gimp, Ubuntu, Linux FreeMind, Linux, open source Linux, infographic, history

AnyMeal is a GNULinux recipe database software developed using MySQL and XML

AnyMeal is a GNU/Linux recipe database software developed using MySQL and XML. It can manage a cookbook with more than 100,000 recipes, thereby allowing to search, display, edit, import and export them. AnyMeal is designed to be lean and flexible. AnyMeal is open-source software. Happy cooking!

Here's a small collection of recipes, which you can download in the following formats: UTF-8 Mealmaster, PDF and HTML.

AnyMeal has reached the development status alpha. This means, that the basic features have been implemented. The alpha-phase has its focus on achieving higher stability and implementing useful features, which are still missing.

My brother made a Latte macchiato and then took a picture of it. The picture is available under the terms and conditions of the GNU Free Documentation License.

Printing recipes is not supported directly, but you can export recipes to HTML and print them out with your favorite browser. If you know, how to use Apache-FOP, you can even create PDF-files from Formatted Objects output!

There is a wizard for setting up a database. Destruction of databases is supported by a simple dialog.

The architecture of this software is making extensive use of SQL and XML. The software is object-oriented and implemented in C++. By using the powerful XML-SQL-Utility-approach, it was possible to implement the database-backend very quickly.

Using flex, it was possible to build a performant importer for Mealmaster-recipes. Instead of having to type in your recipes, you can start with downloading and importing a huge amount of recipes from the internet.

All search-commands are converted to SQL and passed on to the database to fully exploit the power of MySQL. AnyMeal is being tested on databases with around 170,000 recipes and 230 million characters. This is the equivalent of about 60 weighty cookbooks. Most other applications will fail to handle a much smaller number of recipes!



You can download AnyMeal from the files-page on sourceforge.net.

Note that AnyMeal is a software for GNU/Linux and currently other platforms (Mac OS X, Microsoft Windows, ...) are not supported.

You can obtain GNU/Linux for free. You can for example install Kubuntu. There are more distributions such as Debian and Redhat, and Fedora Core to name only a few. You can have a look at the Wikipedia comparison of Linux distributions for more. Make sure that you choose a distribution which comes with the KDE-desktop, the GNU C++ compiler, and other packages.

Installation of AnyMeal

Installation with APT

Thanks to Sandro Tosi there also is a Debian package of AnyMeal-0.29.

Compile from source

Install or compile depending packages

First you need to install the software-packages, which AnyMeal is depending on:
  • KDE-3.2 (I'm not sure, wether it works with earlier versions)
  • Norman Walsh's docbook-scripts version 1.64 or later.
  • MySQL version 4.0 or 4.1 (No tests have been done with later versions of MySQL).
  • boost-library.
  • Xerces-C 2.6 or later and
  • corresponding version of Xalan-C (1.9 or later).
The required versions of Xerces-C and Xalan-C are very recent ones!

It's always the best option to install this packages from the same DVD/CD-distribution, which you used for installing your GNU/Linux-system. If you are installing from Internet, you may find compiled packages using an rpm/deb-search-engine like rpm.pbone.net or www.rpmseek.com.

See freshmeat-page for an extensive list of dependencies.

Compile AnyMeal

Download a source-archive. The file name may f.e. be anymeal-0.24.tar.bz2. Unpack the sources and enter the main-directory:
    tar xjf anymeal-*.tar.bz2
cd anymeal-*

Now start the configure-script:


Compile the program.


Log in as superuser and install it

    su -c "make install"
Please have a look at the Frequently asked questions before compiling the program.


MySQL server

Starting with AnyMeal-0.28 you now have the choice between using an Embedded MySQL server (does not work on recent versions of Ubuntu!) or using a system-wide MySQL server which you may have to set up yourself (Ubuntu automatically sets up the MySQL server for you).

If you need to set up MySQL yourself, you can find a section on setting up MySQL on the FAQ-page.

Configure AnyMeal

When you are using AnyMeal the first time, you'll need to create a recipe database. AnyMeal is providing a wizard for this. Just select File->Connect from the menu.

AnyMeal first will connect to kwallet to safely store and retrieve user-passwords.

Then a dialog for connecting to the MySQL server will come up. Click New to open the wizard for creating a new database. You have the choice between Embedded and Network. The Embedded configuration will try to run a MySQL server as a user process and connect to it by using a socket. The Network configuration will try to connect to an existing MySQL server using a network protocol. Typically you will connect to a MySQL server running on the same machine (i.e. "localhost"). I hope the wizard is self-explanatory. Let me know if there are any problems.

Have a look at the Shockwave tutorials to see some demonstrations on how to configure and use AnyMeal.


Static screenshots

The first screenshoot shows two MDI-windows. One is displaying a recipe, the other is displaying a search result. The user interface allows importing, searching and displaying MealMaster recipes so far.

A recipe and a search result

I declare, that no elephants have been harmed in the process of making this software.

The second screenshot shows the ingredient-tab of the search dialog. With AnyMeal you can search for the recipes you can do with a set of given ingredients! Still most recipe software doesn't offer this functionality.


Search recipes for provided ingredients

Here you can see one tab of the recipe-editor.

Editing ingredient-sections of a recipe

You can find more screenshots on AnyMeal's screenshots-page.

Anymeal shockwave tutorials

Here are a few video walkthrough I made in June 2007. I hope they are useful.

If you liked this article, subscribe to the feed by clicking the image below to keep informed about new contents of the blog:


Related Post

    160x600     step

Linux Links

Share on Google Plus

About Hugo Repetto

Ubuntu is a Linux distribution that offers an operating system predominantly focused on desktop computers but also provides support for servers. Based on Debian GNU / Linux, Ubuntu focuses on ease of use, freedom in usage restriction, regular releases (every 6 months) and ease of installation.
    Blogger Comment
    Facebook Comment


Post a Comment