Bug 2017994

Summary: speech-dispatcher.scm problem with festival and speech-dispatcher
Product: [Fedora] Fedora Reporter: niemiec.arkadiusz
Component: festival-freebsoft-utilsAssignee: Ben Beasley <code>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 34CC: bruno, caillon+fedoraproject, code, davidyang6us, fedora, gnome-sig, mattdm, mclasen, niemiec.arkadiusz, pbrobinson, rebus, redhat, rhughes, rstrode, sandmann
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: festival-freebsoft-utils-0.10-27.fc37 festival-freebsoft-utils-0.10-26.el9 festival-freebsoft-utils-0.10-26.fc34 festival-freebsoft-utils-0.10-26.fc35 festival-freebsoft-utils-0.10-3.el8 festival-freebsoft-utils-0.10-27.fc36 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-04-13 14:49:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description niemiec.arkadiusz 2021-10-27 21:45:21 UTC
Description of problem:

The festival server returns:
SIOD ERROR: could not open file speech-dispatcher.scm
when running:
spd-say "Testing test testings"

Version-Release number of selected component (if applicable):

speech-dispatcher.x86_64                          0.10.2-2.fc34                          @fedora
speech-dispatcher-festival.x86_64                 0.10.2-2.fc34                          @fedora
festival.x86_64                                   2.5.0-14.fc34    
festival-freebsoft-utils.noarch                   0.10-21.fc34                           @updates

How reproducible:

always

Steps to Reproduce:

1. Set speed-dispatcher to use festival
2. run: sudo festival --server
3. run: spd-say "Testing test testings"

Actual results:

$ sudo festival --server
client(4) Wed Oct 27 00:04:46 2021 : accepted from localhost
SIOD ERROR: could not open file speech-dispatcher.scm
client(4) Wed Oct 27 00:04:46 2021 : disconnected

Expected results:

To not see ERROR.

Additional info:

I have found a similar bug from years ago: https://bugzilla.redhat.com/show_bug.cgi?id=484577

Also:
$ sudo find / -name "speech-dispatcher.scm"
/usr/share/festival/lib/speech-dispatcher.scm

Comment 1 David Yang 2022-03-07 13:55:26 UTC
Here to chime in that I experienced this same issue and resolved it by downloading every file ending in .scm to the directory /usr/share/festival. They were all necessary, I downloaded them one by one to satisfy each new "could not open file" error message in the misguided belief that maybe I wouldn't need to wget them all individually and this one'll be the last one. I downloaded them all from this repo:

https://github.com/brailcom/festival-freebsoft-utils

Which I found by googling the filename. These .scm files were all apparently required for festival to function, perhaps these should be included in the speech-dispatcher-festival installl?

Comment 2 Christian Stadelmann 2022-04-12 23:53:00 UTC
Same issue here.

This is an interoperability problem between festival and festival-freebsoft-utils, therefore I'm CC'ing @music, who owns the latter package.

festival expects the .scm modules to be installed in /usr/share/festival
festival-freebsoft-utils installs their .scm modules into /usr/share/festival/lib

(In reply to David Yang from comment #1)
> Here to chime in that I experienced this same issue and resolved it by
> downloading every file ending in .scm to the directory /usr/share/festival.
> They were all necessary, I downloaded them one by one to satisfy each new
> "could not open file" error message in the misguided belief that maybe I
> wouldn't need to wget them all individually and this one'll be the last one.
> I downloaded them all from this repo:
> 
> https://github.com/brailcom/festival-freebsoft-utils

Easier workaround:

> cd /usr/share/festival/lib
> gio copy *.scm ..

Comment 3 David Yang 2022-04-13 04:57:24 UTC
Whoops, can confirm that I also have a /usr/share/festival/lib that contains the files, missed that in my troubleshooting

Comment 4 Ben Beasley 2022-04-13 14:30:23 UTC
I took over maintenance of the festival-freebsoft-utils package only recently, after it was orphaned, so I did a little research.

It looks like festival-freebsoft-utils has always installed to %{_datadir}/festival/lib. Meanwhile, the changelog message for festival 2.5.0-6 (2018-09-09) includes “Drop lib from %{_datadir}/festival/lib”. That was committed when festival was unretired[1], and it appears to be the origin of the incompatibility.

-----

The Texinfo documentation for Festival says [1]:

> @example
> $ bin/festival
> Festival Speech Synthesis System 1.4.3:release Jan 2003
> Copyright (C) University of Edinburgh, 1996-2003. All rights reserved.
> For details type `(festival_warranty)'
> festival> ^D
> @end example
> If errors occur at this stage they are most likely to do
> with pathname problems.  If any error messages are printed
> about non-existent files check that those pathnames
> point to where you intended them to be.  Most of the (default)
> pathnames are dependent on the basic library path.  Ensure that
> is correct.  To find out what it has been set to, start the
> system without loading the init files.
> @example
> $ bin/festival -q
> Festival Speech Synthesis System 1.4.3:release Jan 2003
> Copyright (C) University of Edinburgh, 1996-2003. All rights reserved.
> For details type `(festival_warranty)'
> festival> libdir
> "/projects/festival/lib/"
> festival> ^D
> @end example
> This should show the pathname you set in your @file{config/config}.

Indeed, festival-2.5.0-filesystem-standard.patch sets default_libdir and default_datadir both to /usr/share/festival, and we can confirm:

> $ festival
> 
> Festival Speech Synthesis System 2.5.0:release December 2017
> Copyright (C) University of Edinburgh, 1996-2010. All rights reserved.
> 
> clunits: Copyright (C) University of Edinburgh and CMU 1997-2010
> clustergen_engine: Copyright (C) Carnegie Mellon University 2005-2017
> hts_engine: All rights reserved.
> For details type `(festival_warranty)'
> festival> libdir
> "/usr/share/festival"

No spec file other than festival and festival-freebsoft-utils contains the string “festival/lib”.

I tried the above check on EL9, and got "/usr/share/festival" for libdir. There is currently no festival on EL8. On EL7, libdir is still "/usr/share/festival".

-----

Based on all of that, it seems like it would be correct to adjust festival-freebsoft-utils to install directly into /usr/share/festival, on all branches except EPEL7.

[1] https://src.fedoraproject.org/rpms/festival/c/f48d9894?branch=f48d9894
[2] https://github.com/festvox/festival/blob/master/doc/festival.texi#L1073
[3] https://src.fedoraproject.org/rpms/festival/blob/d5a56acb3cef074af8ae27106a7a3cb2a27cd2c4/f/festival-2.5.0-filesystem-standard.patch

Comment 5 Ben Beasley 2022-04-13 14:40:03 UTC
I reproduced the report locally (thanks for the directions; I’m not a speech-dispatcher user) and confirmed that server does not report an error with the proposed fix. I’ll start pushing updates shortly; testing is appreciated!

Comment 6 Fedora Update System 2022-04-13 14:48:52 UTC
FEDORA-2022-5b55863266 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-5b55863266

Comment 7 Fedora Update System 2022-04-13 14:49:58 UTC
FEDORA-2022-5b55863266 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2022-04-13 15:08:37 UTC
FEDORA-2022-c39206093c has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-c39206093c

Comment 9 Fedora Update System 2022-04-13 15:16:03 UTC
FEDORA-2022-ff27385487 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-ff27385487

Comment 10 Fedora Update System 2022-04-13 15:29:14 UTC
FEDORA-2022-eb6bd67aa1 has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2022-eb6bd67aa1

Comment 11 Fedora Update System 2022-04-13 15:41:59 UTC
FEDORA-EPEL-2022-c791bb34c8 has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-c791bb34c8

Comment 12 Fedora Update System 2022-04-13 15:53:29 UTC
FEDORA-EPEL-2022-6a3a9bf070 has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-6a3a9bf070

Comment 13 Fedora Update System 2022-04-13 19:49:34 UTC
FEDORA-2022-c39206093c has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-c39206093c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-c39206093c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 14 Fedora Update System 2022-04-14 16:34:26 UTC
FEDORA-EPEL-2022-c791bb34c8 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-c791bb34c8

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 15 Fedora Update System 2022-04-14 16:40:35 UTC
FEDORA-2022-ff27385487 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-ff27385487`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-ff27385487

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 16 Fedora Update System 2022-04-14 17:03:23 UTC
FEDORA-2022-eb6bd67aa1 has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-eb6bd67aa1`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-eb6bd67aa1

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 17 Fedora Update System 2022-04-14 17:30:07 UTC
FEDORA-EPEL-2022-6a3a9bf070 has been pushed to the Fedora EPEL 8 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-6a3a9bf070

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 18 Fedora Update System 2022-04-21 20:40:36 UTC
FEDORA-EPEL-2022-c791bb34c8 has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 19 Fedora Update System 2022-04-21 20:57:17 UTC
FEDORA-2022-eb6bd67aa1 has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 20 Fedora Update System 2022-04-21 21:21:33 UTC
FEDORA-2022-ff27385487 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 21 Fedora Update System 2022-04-21 22:13:01 UTC
FEDORA-EPEL-2022-6a3a9bf070 has been pushed to the Fedora EPEL 8 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 22 Fedora Update System 2022-05-07 04:23:57 UTC
FEDORA-2022-c39206093c has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.