Fysh logo


fysh is a small perl script I wrote to handle all the tasks associated with my ipod shuffle under Linux. Its name fysh stands for "fill your shuffle".

You can download the latest version of this fysh script here (as well as all older versions). You can also access the git repository. See below.

fysh is free software. Modify at will. Do not hesitate to drop me an e-mail to submit modifications.

Releases and release notes

25-Mar-2007 - fysh 0.6
In this release: Fixed child processes return code and error detection. Command line options (--faac, --flac, --sox) and environment variables (FYSH_FAAC, FYSH_FLAC, FYSH_SOX) to specify faac, flac and sox executables. Much more silent commands and a start at a progress indicator. New option --no-remove to forbid fysh to remove files on the iPod. Handle iPod full case much more gracefully. More for developpers: A bit more elaborate debug messages. A start at an estimator package, for compressed size estimation (not functional yet, though).

4-Mar-2007 - fysh 0.5
This release moves files to ipod in the top-level process to avoid fragmentation and "clicks" believed to be caused by it at playback (it solved the problem for me at least). It also adds support to turn on/off debug messages. It adds a caching mechanism to avoid re-encoding tracks again and again. Signal handling is better than before when hitting ctrl-c for example. And running jobs are killed on exit. Support for a normalization threshold has been implemented, to avoid touching the sound when the volume is acceptable. Executables checking has been bugfixed: fysh now stops when some necessary commands are missing. New command line options: --cache-dir, --debug, --normalize-threshold and --no-random.

8-Feb-2007 - fysh 0.4
This release adds support for multiple, parallel encoding (especially useful for SMP). There is a new --max-jobs option to control it. Encoding error handling has been improved a bit, and can be relied on to detect when a device is full. The option --no-rebuild-db has been added. A logo has been added here and there.

22-Jan-2007 - fysh 0.3
There is a new option --ipod-music-dir. You can pass options to rebuild_db.py. faac options are no longer hard-coded. This release avoids re-selecting recently removed entries for refill. The option --dont-normalize has been added. This release can take options from a .fyshrc file.

15-Jan-2007 - fysh 0.2
This release uses wget to retrieve rebuild_db.py when not installed. The option --handle-mount has been renamed to --mount to avoid collision with -h. More documentation and many more todo items have been added.

13-Jan-2007 - fysh 0.1
Initial freshmeat announcement.


The complete manual is embedded. Just issue:
    $ fysh --man
Here is an online copy of the manual for convenience. It may not be always up to date, but anyway here it goes: manual.html.

Git repository

A git repository is available. To clone it, just issue:
    $ git clone http://vincent.stehle.free.fr/fysh/fysh.git

Latest version

fysh 0.6

Latest news

A git repository is now available for fysh: fysh.git.
I suspect parallel write to ipod to be the cause of "clicks" at playback. This will be modified in fysh 0.5. Also, I'll put the bleeding edge version in the files folder too.
I am back from a one week trip so I can spend some more time on fysh again.

Fysh-related links

Copyright © 2007 Vincent Stehlé ( vincent.stehle@free.fr).
GNU Free Documentation License 1.2