Friday, February 29. 2008
Quarry is a multi-purpose graphical game board for playing Go, Amazons, or Reversi. By itself, it permits users to play against each other, but the addition of GTP (game text protocol) game engines such as gnugo or grhino enables play against the computer. Quarry's features include timed moves, timed games, the loading and saving of games in standard formats, annotations, game tree view, and more -- plus, of course, a nice graphic presentation of the game.
Adding a game engine is straightforward:
You can then select the GTP engine as a player (or both players!) when setting up a new game.Installing from the command line: yum install quarry
Installing using the graphical installer: Not available in the Browse view; use the Search or List views to install quarry
Menu location after installation: Applications > Games > Quarry
Upstream website: http://home.gna.org/quarry/
Thanks to cvr for suggesting this package! If you have a package you'd like to see covered, please suggest it using the form on the right side of the main page.
Thursday, February 28. 2008
Fedora offers many tools for viewing detailed hardware information, including lsusb, lspci, hdparm, and direct access to the /proc and /sys filesystems. An alternative tool, lshw, combines this information and more into a single, unified listing -- but the output often exceeds 1000 lines.
lshw-gui provides a convenient graphical interface into this rich source of information, enabling you to easily drill down into the specific details of each subsystem and device. The display shows four panes of information -- three narrow panes on the left to navigate though the tree of device details, and a larger one on the right to view details of the selected node.
This program displays a lot more information than tools such as hwbrowser and does a good job of translating arcane device details into a very readable format.Installing from the command line: yum install lshw-gui
Installing using the graphical installer: Not available in the Browse view; use the Search or List views to install lshw-gui
Menu location after installation: Applications > System Tools > Hardware Lister
Upstream website: http://ezix.org/project/wiki/HardwareLiSter (lshw-gui is referred to as gtk-lshw on the upstream site)
Wednesday, February 27. 2008
PulseAudio became the standard audio system in Fedora 8, but how does the pulseaudio daemon start in a Gnome session?
Gnome sessions are managed by gnome-session, which starts a standard set of clients (as well as any programs which you have configured for your account) each time the Gnome desktop is started. The file /usr/share/gnome/default.session file, which configures the default list of clients, looks like this:
As you can see, the PulseAudio daemon is not among the programs listed (note that gnome-volume-manager is the mounted filesystem volume manager, not an audio volume manager). But this list isn't exhaustive: commands listed in .desktop files in /usr/share/gnome/autostart are also executed when a session is opened -- but on my system the only files in there are bluetooth-applet.desktop, gnome-volume-manager.desktop, and
So what starts pulseaudio? A quick check of the output of ps reveals that its parent process is in fact gnome-session, and strace confirms this.
A look at the rpm packages that start with "pulse" reveals something interesting:
The esound daemon (esd) was the audio daemon historically used by Gnome. A quick look at the files included in pulseaudio-esound-compat shows that it provides a dummy esd command:
The man page for esdcompat tells a bit more of the story:
This brings us to the final question: why does gnome-session start esd if it's not mentioned in any of the configuration files? Surely it can't be ... hardcoded?!
$ strings -a /usr/bin/gnome-session | egrep '\/usr\/bin\/esd'
Tuesday, February 26. 2008
Vector graphics formats such as SVG are perfect for images that will be used at many different resolutions. Converting a bitmapped image such as a scan or a photograph to a vector image can be a tedious challenge; vector editors such as Inkscape provide autotrace tools to help automate this process.
An alternative tool is autotrace, which is a command-line utility that can accept a wide range of bitmap input formats and produce output in several vector formats including scalable vector graphics (svg), encapsulated Postscript (eps), portable data format (pdf), and Adobe Illustrator (ai) format.
The screenshot image today was processed using autotrace from small portion of a 30 megapixel bitmap graphic for which I lost the original vector file; the SVG output from autotrace is being displayed in Inkscape. The conversion command line is quite simple:
However, this is a nice, clean, low-colour input file; autotrace did not fare nearly as well on the Fedora Daily Package logo -- your mileage may vary considerably.
Installing from the command line: yum install autotrace
Monday, February 25. 2008
Planet is a feed aggregator which assembles multiple RSS or Atom newsfeeds into a single web page and feed, like Planet Fedora, Planet Gnome, or Planet KDE. I use it to generate the opensource@seneca Planet.
To keep resource usage to a minimum, Planet writes static web pages based on template files instead of running as a web script. When the Fedora Planet package is installed, sample template files are installed in /usr/share/doc/planet-2.0/examples/, and CSS and image files for the sample templates are in /usr/share/doc/planet-2.0/examples/output.
To set up a planet, copy the template, CSS, and image files to appropriate locations (or create your own template files using the samples as a guide). In this example, I'm going to use ~/planet/template for the template files and ~/public_html/planet for the output location (where the CSS, images, and generated HTML/XML will be placed):
The next step is to create a configuration file. Again, examples can be found under /usr/share/doc/planet-2.0/examples/; here is a simple config file based on the file locations above:
Save this file in an appropriate location (e.g., ~/planet/config.ini) and then run planet with this file as the only argument:
If the output looks good, use crontab to schedule planet to run periodically:
Installing from the command line: yum install planet
Installing using the graphical installer: Not available in the Browse view; use the Search or List views to install planet
Menu location after installation: Not applicable -- run from the command line or as a cron job
Upstream website: http://planetplanet.org
Tuesday, February 19. 2008
GraphicsMagick is a fork of the venerable ImageMagick package, and provides powerful and flexible image conversion, manipulation, and display capabilities. Unlike ImageMagick, which uses separate binaries for various operations (display, convert, animate, compare, and so forth), GraphicsMagick uses a unified binary named gm which is invoked with an operation as the first argument:
Although GraphicsMagick provides capabilities similar to the Netpbm utilities, it can perform multiple image manipulation and format conversion operations using a single process as opposed to a multi-process pipeline. GraphicsMagick can also perform on-the-fly image generation, which makes it particularly useful for web scripts. The image processing features are also available through C, C++, and Perl interfaces (and other languages through extensions).
Installing from the command line: yum install GraphicsMagick
Monday, February 18. 2008
htmldoc is a powerful simple-to-use tool which converts HTML to Postscript, PDF, or indexed HTML output. It provides a graphical user interface (pictured) for manual document conversion -- useful for tasks such producing printed manuals from web pages -- but it can also be used as a filter.
When used as a filter, htmldoc provides a simple way to produce nice-looking output from a script. Here's a bash example:
htmldoc is also a handy tool for producing PDF output in CGI scripts.
Since tables and images are supported, it's easy to set up documents such as invoices, statements, and reports with columnar data, logos, and icons. With a bit of sed/awk/perl magic, you can transform the text output of normal commands into HTML for inclusion in the htmldoc output.
This software is developed by Easy Software Products, who also develop the CUPS print spooler system used in Fedora.
Installing from the command line: yum install htmldoc
Friday, February 15. 2008
Ksudoku is a Sudoku game included in Fedora. It can generate Sudoku puzzles and many variants, including Roxdoku (3D) and Samurai (5 overlapping grid) versions. These may be played online, or any of the 2D versions can be printed out for traditional cordless pencil-and-paper play.
Installing from the command line: yum install ksudoku
php_network_getaddresses: getaddrinfo failed: Name or service not knownphp_network_getaddresses: getaddrinfo failed: Name or service not known