Fresh from the Labs

A look at promising software in development.

This is a lovely little application that gives you very little grief. Think halfway between Amarok and Kaboodle, and you'll get the idea. For those of you who just want to play a few files at a time and hate fancy music players with more features than you could ever want, Minirok is for you. The player is minimalistic and dressed-down, but it still allows for features, such as playlists, skinning, Last.fm support, keybindings and DCOP support for KDE integration. According to Minirok's Web site:

Minirok is a small music player for the K Desktop Environment. As its name hints, it's modeled after Amarok, but with a reduced set of features. In particular, it is designed to cover all the needs and wishes of the author, leaving everything else out. The look and feel is almost identical to Amarok's, though. The main interface is a tree view of the filesystem, with a playlist that can be populated only via drag and drop. There is no collection built from tags, so it's targeted at people whose collections are already structured in a tree at the filesystem level. Searches can be performed both in the tree view and the playlist.

Figure 1. For those sick of do-it-all players, here's the wonderfully simple Minirok.

Installation

If you head to the Minirok Web site, both tarballs and .debs are available (the Debian packages are a little bit older than the source tarballs). As far as dependencies go, aside from PyQt and PyKDE, the only dependency that's relatively obscure is python-mutagen—a Python module that handles audio metadata. Apt users should be able to install the module via the following:

# apt-get install python-mutagen

After this command, the .deb should install, and the tarball should build with no trouble. To install the .deb package, open a terminal to the directory the .deb sits in, and use the command:

# dpkg -i minirok_0.7-1_all.deb

To install via source, download and extract the tarball. Open a terminal in the new directory, and enter the command:

# ./setup.sh install

Usage

Minirok should be in your menu under Multimedia. If not, simply run the command minirok. Once you're in, just click and drag a folder or MP3 into the window pane on the right. As far as controls go, the button on the bottom right that looks like a window clears the playlist, so if you've made everything cluttered and want to start fresh, there's your button. Otherwise, it's a simple case of skip forward or back a track, stop, play/pause and a slider bar. On the left are two buttons: the first, a downward-pointing arrow, is for repeat, and the second, a right-pointing arrow, is for randomizing. And, that's about it—really nice and minimal!

For the moment, things are fairly stable due to a minimal interface, with only the occasional bug. I found that it didn't like some kinds of MP3s, and sometimes it doesn't lead onto the next track on a playlist, but those issues seemed to be fixed in the latest tarball. Overall, this project's been my favourite this month. It fills a niche and doesn't give you all that installation grief.

Perfect Match (pmatch.rubyforge.org)

If you're looking for a good tool for finding duplicate files, this is it. I've been researching these tools for a while, but I didn't trust any to touch my filesystem, as many of my duplicate files are there on purpose. Perfect Match (or pmatch for short) is non-destructive. Using the default options simply prints out a list of what files are duplicated and lets you decide for yourself which ones you'd like to remove.

As for goals and aspirations, according to author Tomasz Muras' Web site:

Some time ago, I was looking for a utility that would find (and possibly remove) duplicate files. I have found a few of them but none was complex enough for what I wanted...hence the idea of Perfect Match! My main requirements were quick compare—that is, first compare files based on size, then hash—and to perform some logic when choosing which duplicate should be removed.

Installation

For the moment, there is no installer available for pmatch, so you'll have to take a few steps here and there, but thankfully, not too many, as it's a small project. The main dependency is Ruby, and a subproject called RubyGems—a system for managing Ruby software libraries. Chances are that RubyGems already is in your distribution's repository, so doing a simple:

# apt-get install rubygems

______________________

John Knight is the New Projects columnist for Linux Journal.

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState