Fedora project has this patch in the 0.1.20 release. It fixes a parse error in the timitidy config parses (root config only contains a single line, "include /home/foo/bar.conf)
0.1.21 fails to find PAT files from timidity.cfg. The parsing is still messed up somehow. It is trying to open files under /etc///usr/share/soundfonts:
open("/etc///usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/DrawbarOrgan.pat", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "[timidity] '/usr/share/soundfont"..., 112) = 112
munmap(0x7fad1af21000, 2271680) = 0
write(2, "error: generic error\r\n", 22) = 22
Given this type of timidity.cfg:
Bank name: Fluid R3 GM
Date: Feb 24. 2008
Made by: Frank Wen
Target: SBAWE32
Copyright: Frank Wen 2000-2002, 2008; Toby Smithe 2008
Here is an updated patch that I believe addresses this problem correctly. Absolute path names to PAT files in timidity.cfg were not being handled correctly. With this patch if the path name begins with a /, the DirectoryStack (directory containing the cfg file) isn't prepended. Also, the error message that prints if a PAT file is unable to be opened was changed to print the final (possibly prepended) path, not just the path segment listed in the cfg file. This makes it much easier to determine what is going wrong without having to resort to "strace".
0.1.21 fails to find PAT files from timidity.cfg. The parsing is still messed up somehow. It is trying to open files under /etc///usr/share/soundfonts:
open("/etc///usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/DrawbarOrgan.pat", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "[timidity] '/usr/share/soundfont"..., 112) = 112
munmap(0x7fad1af21000, 2271680) = 0
write(2, "error: generic error\r\n", 22) = 22
Given this type of timidity.cfg:
Bank name: Fluid R3 GM
Date: Feb 24. 2008
Made by: Frank Wen
Target: SBAWE32
Copyright: Frank Wen 2000-2002, 2008; Toby Smithe 2008
Tools: SFEDT v1.28:SWAMI v0.9.4
bank 0 #N /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0
0 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/YamahaGrandPiano # 9 velocity ranges, stereo
1 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/BrightYamahaGrand # 9 velocity ranges, stereo
2 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/ElectricPiano # 10 velocity ranges
3 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/HonkyTonk # 9 velocity ranges, stereo
4 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/RhodesEP # 9 velocity ranges, stereo
5 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/LegendEP2 # 9 velocity ranges, stereo
6 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Harpsichord # 9 velocity ranges
7 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Clavinet # 9 velocity ranges
8 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Celesta # 9 velocity ranges, stereo
9 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Glockenspiel # 9 velocity ranges
10 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/MusicBox # 9 velocity ranges
11 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Vibraphone # 9 velocity ranges, stereo
12 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Marimba # 9 velocity ranges, stereo
13 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Xylophone # 9 velocity ranges, stereo
14 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/TubularBells # stereo
15 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/Dulcimer # 9 velocity ranges, stereo
16 /usr/share/soundfonts/fluid-soundfont-lite-patches/FluidR3_GM-B0/DrawbarOrgan # 9 velocity ranges, stereo
etc.
Here is my timidity.cfg as provided by the Fedora fluid-soundfont-lite-patches-3.1-9.fc18.noarch.rpm package.
Here is an updated patch that I believe addresses this problem correctly. Absolute path names to PAT files in timidity.cfg were not being handled correctly. With this patch if the path name begins with a /, the DirectoryStack (directory containing the cfg file) isn't prepended. Also, the error message that prints if a PAT file is unable to be opened was changed to print the final (possibly prepended) path, not just the path segment listed in the cfg file. This makes it much easier to determine what is going wrong without having to resort to "strace".
New code commited to the git repo
The git code still doesn't work to parse the timidity.cfg file.
Could you make a tarball of the timidity config files as they are stored on your filesystem, and maybe 2-3 of your instruments?
Something like this?
tar cfz config.tar.gz /etc/timidify /usr/share/timidity/font/someinstrument* ~/.timidity
New patch to apply against git master to fix timidity.cfg parsing with absolute path names.
Here is the default timidity.cfg and a few patch files on Fedora which come from fluid-soundfont-lite-patches-3.1-13.fc21.noarch.rpm.
timidity-fluid-lite.cfg is missing in config.tar.gz
Please try the latest git version