PyFloppy

pyfloppy.png

Yet another floppy formatting tool, this one written in Python / Tkinter.

The reason for writing pyfloppy was that I had been sick and tired of problems when using gfloppy; sometimes it gave me error messages on broken floppies that worked fine when I formatted them from the command line, other times there were no error messages when the floppy was definitely broken; sometimes it even worked without problems.

I always found it annoying that I didn't ever know what gfloppy was really doing and where the error messages came from, so I decided to write my own program that gives me more control on what happens in the background. For the same reason I decided not to use a pretty graphical progress bar but old fashioned text output; in fact everything is old fashioned here, no superformatting stuff (not to tell of extra-super-1.9MB floppies), however since I use pyfloppy I never had problems anymore (well, at least with floppy formatting ....).

You can specify any option the background programs accept, and pyfloppy will remember the settings you made at the last session. I put in a default option for mke2fs ( -m 0 , which means that 0 % of the storage are being reserved for the superuser, because I did not want the default 5 % of mke2fs), but if you remove it once you can easily get rid of that, in case you do not like it. The -v (verbose) option for mkdosfs is mandatory, because without it you would not get much output, so it does not need to be specified separately; the -c and -cc options can be toggled with radiobuttons, so they don't need to be specified either.

Requirements

Besides Tcl/Tk >= 8.4, Python >= 2.3 and Tkinter you will need fdformat, mke2fs and mkdosfs. I guess anyone will have these, anyway.

Bugs

Maybe your system uses non standard descriptors for your floppies device nodes, this might cause fdformat to fail.
Pyfloppy tries the older standard first (like /dev/fd0 + H1440 , Q720, D360 for 3.5" drives , lower case letters for 5.25" drives, if these are not found the newer standard with an "u" instead of H,Q,D is used). If none of these is found, the standard device node (like "/dev/fd0") is tried, so if fdformat doesn't work the missing device node might be the problem.
If anyone uses a floppy device other than /dev/fd0, /dev/fd1, /dev/floppy/0, /dev/floppy/1 you will also have bad luck, simply because I did not implement this. However this could easily be added, so please tell me if you miss your floppy device here.

News

June 27 2005: Pyfloppy-1.2

The path to fdformat, mke2fs and mkdosfs is now no longer hardcoded, but automatically guessed, so it's no problem anymore if one of these is installed somewhere else than on my Mandrake box.
Dylan Wakefield has contributed an ebuild script, that Gentoo users may find useful for installing pyfloppy (I admit I didn't know what to do with it, so I did not pack it into the tarball; hints are welcome). Please note: there is also a patch for pyfloppy-1.1, which is now obsolete.

April 12 2006: Pyfloppy-1.3

Pyfloppy now has a workaround that fixes problems that would have caused trouble on some buggy installs of Tcl with multithreading support. The gui was slightly polished, too.

Aug. 13 2006: Pyfloppy-1.4

A workaround for a bug that would stop Pyfloppy from working with Python-2.4 and Tk-8.5 was added. The shell output window was improved again and now seems to handle backspace characters properly. Gentoo users can find an updated ebuild script (see link above) for Pyfloppy-1.3 which I think should work with Pyfloppy-1.4 as well (no files added or removed). I recently switched to use debian, so I will not ship rpm packages anymore, however I kept the spec file in the tarball, so anyone should be able to build their own.

Aug. 23 2006: Pyfloppy-1.5

I fixed a minor bug in the shell output window: in some cases inserting a newline would have caused the previous line to be deleted. I also updated the pot-file and the german translation.

Aug. 28 2006: Pyfloppy-1.6

I added a spanish translation contributed by Martintxo and fixed a typo in install.sh which caused the doc files to be installed into the pyfloppy-1.4 directory instead of the pyfloppy-1.5 directory.

License

PyFloppy is licensed under the terms of the Gnu General Public License.

Download

pyfloppy-1.6.tar.bz2 (20 kB)

Feedback

Send bug reports and any other feedback to:

Michael Lange <klappnase (at) freakmail (dot) de>