After emerging festival, the directory /usr/share/festival/ is created, with voices etc. installed there. However, /etc/festival/server.scm says: ; For a list of voices, look in /usr/lib/festival/voices/ Which is irritating, since the files are not in /usr/lib, but /usr/share. At that point, /usr/lib/festival/ does not exist at all. However, I emerged mbrola afterwards. And funny enough, mbrola creates a directory /usr/lib/festival and puts voices in there. So now I have two festival/voices/ directories, one in /usr/share and one in /usr/lib. This is very irritating and should be sorted out somehow. Reproducible: Always Steps to Reproduce: 1. 2. 3.
I noticed this after upgrading festival from 1.4.3-r2 to 1.4.3-r3, which broke festival-gaim. Needless to say, using manual symlinks to fix this is easy but wrong. :-) Downgrading back to 1.4.3-r2 fixed the problem.
Ok... festival-gaim needs to be updated to use the correct directories. mbrola puts its voices in /opt/mbrola, and festival puts festvox voices in /usr/share/festival. What version of mbrola are you seeing it put stuff in /usr/lib?
Created attachment 64744 [details] complete log of emerging festival, mbrola & co.
I haven't noticed before, but interesting part in the log - it seems that it tries to create a symlink /usr/lib/festival -> /usr/share/festival but fails.
I'm using mbrola-3.0.1h-r1 (portage stable) as well. No mbrola files in /opt. I'm on x86 if that makes any difference.
Ok, the DEPENDencies are setup correctly... so if you use festival-gaim-1.1 (stable x86), it'll pull in the old festival, mbrola, and speech-tools. If you use festival-gaim-1.1-r1, it'll pull in the new ones. But 1.1 and 1.1-r1 should still work with both varieties because festival sets /usr/lib/festival to be a symlink to /usr/share/festival. Unfortunately, mbrola was installed on your system before festival, so it put stuff in /usr/lib/festival before the symlink was there. Just unmerge mbrola and festival, make sure /usr/lib/festival is gone, then emerge festival, then emerge mbrola. This problem is already fixed in ~x86.
festival does not succeed in creating the symlink, no matter wether that directory already exists or not. I have not tried it with ~x86 yet, though.
Do you have a log that shows it failing to create the symlink, because the ebuild clearly has: dosym /usr/share/festival /usr/lib/festival My advice is just to use the newer ~x86 ebuilds
I noticed this error when emerging festival per the instructions in comment #6 (using stable x86): ln: creating symbolic link `/var/tmp/portage/festival-1.4.3-r3/image//usr/lib/festival' to `/usr/share/festival': No such file or directory Incidentally, using ~x86 for festival, mbrola, and festival-gaim, mbrola voices are no longer listed by festival-gaim.
I just downgraded the three aforementioned packages to x86 stable, manually creating the /usr/lib/festival -> /usr/share/festival symlink after emerging festival, and everything seems to be working perfectly again. W00T! :-) (Now if only it would natively support esd...) By the way, moving mbrola files to /opt seems strange to me. Is there a simple explaination, or should I open an mbrola bug? Thanks, Jeremy, for helping us work through this.
Ok, the -r3 bug is fixed in cvs. Did you have USE=mbrola with the ~x86 packages?
Just did this: ACCEPT_KEYWORDS="~x86" USE="mbrola" emerge --oneshot festival mbrola festival-gaim festival-gaim still gives this: FATAL ERROR : cannot find file /usr/share/festival/voices/english/us2_mbrola/us2/us2 ! Am I missing something?