Kerpow!
Note 1: This project page is ported from my previous site kaear.co.uk (now defunct), and was last updated 12/01/2006, 15:51:13
Note 2: I investigated www.gwhere.org briefly, and found it is a good program and works well for raw data on a CD. However, since it is only a cataloging device, it does not allow for an extra layer of human readability and so I went back to writing my own!
kerpow: caffiene-powered-archiver
When you're me, you don't keep everything on your PC. Sometimes because you don't have the hard-drive space, sometimes because you don't want to - but mostly because you don't need to.
So you back up your work, your documents, your music, your downloads …
“Oh darn it, which CD did I store that document on? I know I downloaded that program once, I've got it here, promise …”
You need a database to store all of this information in - but MySQL is so much hassle to setup and MS Access isn't cross-platform or portable. Enter kerpow!
What is it?
kerpow is a database application that provides an easy method for keeping track of ones backups. In a day where CDRs an DVDRs are so cheap, it's easy for anyone to make backups of important data - and with so much space on a DVDR, you're not likely to put just one item on it. kerpow will be able to tell you what else is on that DVDR, and more importantly, which DVDR that all-important document is on!
All you have to do is remember where you put the DVDR ;)
How does it work?
Written in Java, kerpow uses an embedded Java-based database from IBM (Cloudscape 10.0) to store all the data. The first time it's run the database is built - and since it's all Java the database and program will run on any platform that will run the Java Runtime-Environment (JRE).
The program was originally built from a Linux command-line point of view, allowing it to be run from scripts in a non-interactive manner. Options were added to allow it to be run interactively from command-line, and also with a GUI, however once the GUI started taking more shape, a lot of those options have been disabled until a better plugin framework can be developed to allow both command line and GUI front ends.
Current status
- Command-line interface completed (interactive and non-interactive) - currently disabled
- Music:
- auto-archiving (update)
- display, list (including wildcard searching)
- full db controls over the contents of all music tables (add/edit/delete)
- Additional plugins for minidisks and videos (series & films)
- Preferences file used to control application aspects (verbosity, column widths, directories, etc). - doesn't do a lot in the GUI version bar verbosity
- Run.once lock for automatic database generation.
- Archived JAR packaged class files, embedded database JARs and preferences (available for download - see further down)
- Linux bash script to run the program.
Things to do:
- Document the plugin writing procedure
- Enable network connectivity to allow people to share and search other databases.
- Functions:
- Music folder organisation (artist/album directories, flat structure, album-artist, artist-album, etc) preferences option
- Preferences path option
- Write an extra plugin (?) to control the raw data tables.
- Windows batch file (?) to run the program correctly.
Screenshots
Download
Occasionally this gets updated when significant progress is made - when I come up with a better system of release, it'll be easier to track. I have, however, already resigned myself to the fact that I don't think anyone but me will use this!
Pre-GUI version (only deals with music) kerpow.tar.bz2 GUI version, including music, video and minidisk plugins: kerpow-all.tar.bz2
Install and Run instructions (Linux)
Download the tar.bz2 archive from above and extract it somewhere (I advise home directory or similar) - there's no need to run it as root, and was written with the intention of being run as a normal user.
It'll create it's own directory. cd into there and then run the program with: ./kerpow.sh
In the non-GUI version adding –interactive to the end of that will set you into the interactive command-line prompt.
The whole procedure looks similar to this:
me@home:/$ cd $HOME
me@home:~/$ tar xfj kerpow.tar.bz2
me@home:~/$ cd kerpow
me@home:~/kerpow/$ ./kerpow.sh
Install and Run instructions (Windows 2000/XP)
Download the tar.bz2 archive from above and extract it to your local directory. You can use WinRAR and newer versions of WinZip to extract these tar.bz2 archives. I'll get around to a zipped version if and when anyone actually does use this.
It'll create it's own directory. From here on in (until I have a GUI), you'll have to use the command prompt. Get into this by: Start –> Run –> cmd
From here, go to the directory you extracted the archive into and run the program with: java -jar kerpow.jar
In the non-GUI version adding –interactive to the end of that will set you into the interactive command-line prompt.
The whole procedure looks similar to this:
C:\> cd kerpow
C:\kerpow\>java -jar kerpow.jar
Other notes
It probably doesn't work under Windows like it should because of the classpath. I'm sort of half-heartedly working on a fix for this.




