Dne 25. 03. 20 v 17:33 Aleksandra Fedorova napsal(a): > On Wed, Mar 25, 2020 at 3:10 PM Miro Hrončok <mhroncok@xxxxxxxxxx> wrote: >> On 25. 03. 20 14:06, Aleksandra Fedorova wrote: >>>>> By contributing to Fedora Rawhide sources and consuming them as ELN >>>>> repositories for testing purposes. >>>> The change proposal literally says "There is no user-facing part in this change. >>>> No ELN artifacts are going to be shipped to the end-user." >>>> >>>> As a contributor, how do I consume the content if I cannot consume the content? >>>> As I understand it, the "end-user" and "user-facing" terms must have different >>>> meanings in this context, right? What is this meaning? >>> Looks like terminology issue. For me user is a person who uses >>> released Fedora, like Fedora 31 Workstation, on their laptop, or >>> Fedora 32 IoT edition on their Raspberry Pi, or a minimalistic Fedora >>> for Fedora server. >>> Basically anyone who needs Fedora to solve their own problems, which >>> are not related to development of the distribution. >>> >>> Fedora Rawhide is not a user-facing branch in Fedora, because it's >>> purpose is to develop Fedora, not something else. >>> Same with ELN. It is not a Fedora Server edition, there is no reason >>> to ever use it on a server. It is a rebuild of Fedora Rawhide, and >>> it's purpose is the development of Fedora, and help others to >>> contribute to that development. >>> >>> So it is facing contributors, not users. >>> >>> Different types of contributors though. >> I consider rawhide users our users and I assume many other do consider them our >> users as well. I consider upstream projects who run their CI on Fedora our >> users. You are not incorrect that this is a terminology issue, however I think >> this is a different mindset issue. Please do consider rawhide users and upstream >> projects our users when designing things. > You are misinterpreting what I said. And it is a terminology issue. > > You somehow assume that if we call people users - we care about them, > and if we call them contributors, they are _just_ contributors, so we > don't. > This is not what I have said, and please don't put such a mindset on me. > > The difference between users and contributors is not how you treat > them, but a level of knowledge about Fedora internals which is > expected from them. > Using rawhide on your workstation is possible, but you need to learn > first what rawhide is and you need to make an educated choice to use > it. > Same with ELN. > > It does not have impact on Fedora Workstation user experience. My > grandma, who is Fedora user since Fedora 8, will not see this change > on her laptop and she doesn't need to be informed about it. > >> For example, there is a point to run an ELN on a server - e.g. to run a buildbot >> worker on it for some CI tests. > I think this is not the server Neil meant. > My point was to highlight that ELN is not a "stable edition" like > Fedora Server. ELN is Rawhide, its quality is no better than Rawhide > quality, its stability is Rawhide stability, its target audience is > Rawhide audience. > >>>> I'd rather discuss this here and only come to FPC for approval of new guidelines >>>> when ready. The FPC members who are likely to discuss this are already >>>> discussing this here. Why spitting the discussion into two places? >>> Sorry, my understanding of why we need RelEng and FPC tickets was >>> completely the opposite. Mailing list discussion about the Change is >>> generic, and gets side-tracked to one side or the other and digging >>> through it to get the pieces which are relevant to FPC topic is >>> harder. While ticket has a fixed topic, discussion associated to it >>> and the outcome of that discussion. I don't see how you can prevent >>> people from discussing the topic in the ticket and move it to the >>> mailing list. >>> >>> If you see FPC ticket as a "request to vote" only, why do we need it >>> then? Can't we just invite FPC representative to vote on a FESCo >>> ticket? >> We could, but there are existing workflows based on the committees using their >> own ticketing tracker to do the voting. > Ok. > >>>> This is all nice only as long as you prefer conditionals over branching. For a >>>> Fedora maintainer who doesn't, this is just "unnecessary cruft" in the spec file. >>> It is not really about personal preferences. These are two different >>> approaches with different purposes, different results and different >>> requirements. >>> There are consequences on choosing one other the other. >> Yes. That's what I've been saying since the beginning. Choosing %ifs over >> branches has consequences. Choosing branches over %ifs has consequences. Not >> being able to choose has consequences. >> >>> Branching means forking Fedora Rawhide into something else. Which >>> eventually will lead to new downstream tree which will ignore the rest >>> of Fedora and just use the fork instead. It can be done, but I think >>> it will damage Fedora as a project. >> Not if we do automation that constantly keeps them in sync. Is that hard? Most >> likely. But it doesn't put additional burden to the community maintainers. > It removes community maintainer from the conversation about what > downstream is doing. While we want to give community member a voice in > that conversation. > It also cuts community maintainer from the help of downstream, as > downstream will be developing a fork. I don't understand why the focus on the worst case scenario. > >>>>> Yes, there is a risk that it won't work. And we have a very clean >>>>> contingency plan for it: we shutdown the whole thing. >>>>> It will be unfortunate, but it is an option. >>>> What is to stop us saying "stop acting like we can stop doing this now and start >>>> over at this point" when we realize this is hurting the Fedora community, but we >>>> need to ship next RHEL? (Sspeaking from experience. Things like this were said.) >>> I don't understand your question. Nothing ever stops anyone from >>> saying anything. But it is FESCo and Fedora Council who have the >>> decision power. >> Correct. I just want to avoid us repeating the same mistakes over and over >> again. I am afraid this change has a potential to alienate community >> contributors and I would like us to consider the problem before we start doing >> it and before RHEL is depending on it and before everybody will just repeat "we >> cannot change this, because we have this in RHEL already". >> >> So can we please not rush this and try to figure things ad hoc, but dedicate >> some more time to planning things? Especially I'd appreciate if the "how do we >> make this work without %if spaghetti everywhere" aspect is considered. > We can not fully implement it in the planning phase. It is not a > generic question with generic answer. It needs to be decided on a > package level. And decision maybe different for each package and for > each case. > > We can come up with guidelines, for example: > > 1) Try to find a way to resolve the issue without any conditionals first. > > There should be a reason why package X needs a dependency Y in Fedora > and there should be a reason why it is a required dependency and not a > recommended one. So why in that case downstream wants it differently? > The first approach is just to talk through it. I can assume cases > where downstream adds a dependency, as well as Fedora package removing > them. > > Note that bloated dependency trees is a common problem for all binary > distributions, it is not an "EL-thing" and we can work on that > together. > > Nicolas has pointed out to another reason why we would get > EL-conditionals: the outdated rpm stack in RHEL. But we don't have > this problem with ELN, as we are building Rawhide, and rpm stack is > going to be the Rawhide rpm stack as well. > > 2) Minimize and isolate the conditional, and track the reason. > > As ELN SIG we need to have a place where we collect known reasons for > such conditionals. The overall goal is to reduce this set, not to grow > indefinitely. As Stephen said we expect it to be about couple of > hundred packages. We will be able to track each one of them. (We have > rpminspect to run package diffs for us). > > 3) In complex cases - bring it to community and FESCo. > > We don't know what those complex cases might be, one of the goals is > to find them. So we keep it as an option to bring individual case to a > wider audience. To ask for help and to decide on it. > It seems there are missing real life examples of what we sometimes do in RHEL, so please see attached patch. This patch is coming from RHEL version of the espeak-ng. Now somebody tell me what it does for what purpose and which scenario from the above three should be applied here. Vít
>From 992303ae8e6675529de0baed27826ac684b17611 Mon Sep 17 00:00:00 2001 From: Ondřej Lysoněk <olysonek@xxxxxxxxxx> Date: Jul 13 2018 08:52:16 +0000 Subject: Drop dependency on rubygem-ronn Resolves: rhbz#1588339 --- diff --git a/0001-Use-kramdown-in-man-pages.patch b/0001-Use-kramdown-in-man-pages.patch new file mode 100644 index 0000000..a1cb2fb --- /dev/null +++ b/0001-Use-kramdown-in-man-pages.patch @@ -0,0 +1,795 @@ +From faab1d055d8c033b5975727a4de7431d548b7db2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ond=C5=99ej=20Lyson=C4=9Bk?= <olysonek@xxxxxxxxxx> +Date: Tue, 26 Jun 2018 15:07:43 +0200 +Subject: [PATCH] Use kramdown in man pages + +--- + Makefile.am | 20 +++---- + README.md | 4 +- + configure.ac | 8 --- + src/espeak-ng.1.md | 163 +++++++++++++++++++++++++++++++++++++++++++++++++++ + src/espeak-ng.1.ronn | 162 -------------------------------------------------- + src/speak-ng.1.md | 159 +++++++++++++++++++++++++++++++++++++++++++++++++ + src/speak-ng.1.ronn | 158 ------------------------------------------------- + 7 files changed, 331 insertions(+), 343 deletions(-) + create mode 100644 src/espeak-ng.1.md + delete mode 100644 src/espeak-ng.1.ronn + create mode 100644 src/speak-ng.1.md + delete mode 100644 src/speak-ng.1.ronn + +diff --git a/Makefile.am b/Makefile.am +index 0ae0c326..cf1d833e 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -76,14 +76,14 @@ distclean-local: + + ##### custom rules: + +-SUFFIXES=.html .md .ronn ++SUFFIXES=.html .md + + .md.html: _layouts/webpage.html +- cat $< | sed -e 's/\.md)/.html)/g' -e 's/\.ronn/.html/g' | \ ++ cat $< | sed -e 's/\.md)/.html)/g' | \ + kramdown --template _layouts/webpage.html > $@ + +-.ronn.html: +- ronn --html $< ++.md.html: ++ kramdown --template _layouts/webpage.html -i kramdown -o html $< > $@ + + ##### vim: + +@@ -101,11 +101,11 @@ EXTRA_DIST += $(vim_addons_syntax_DATA) + + ##### documentation: + +-src/espeak-ng.1: src/espeak-ng.1.ronn +- ronn --roff $< ++src/espeak-ng.1: src/espeak-ng.1.md ++ kramdown -i kramdown -o man $< > $@ + +-src/speak-ng.1: src/speak-ng.1.ronn +- ronn --roff $< ++src/speak-ng.1: src/speak-ng.1.md ++ kramdown -i kramdown -o man $< > $@ + + docs: docs/index.html \ + docs/add_language.html \ +@@ -195,9 +195,7 @@ endif + + bin_PROGRAMS += src/speak-ng + +-if HAVE_RONN + man1_MANS += src/speak-ng.1 +-endif + + src_speak_ng_LDADD = src/libespeak-ng.la + src_speak_ng_LDFLAGS = -static -lm ${PCAUDIOLIB_LIBS} +@@ -206,9 +204,7 @@ src_speak_ng_SOURCES = src/speak-ng.c + + bin_PROGRAMS += src/espeak-ng + +-if HAVE_RONN + man1_MANS += src/espeak-ng.1 +-endif + + src_espeak_ng_LDADD = src/libespeak-ng.la ${PCAUDIOLIB_LIBS} + src_espeak_ng_SOURCES = src/espeak-ng.c +diff --git a/README.md b/README.md +index dac80c21..935fe977 100644 +--- a/README.md ++++ b/README.md +@@ -108,7 +108,6 @@ Optionally, you need: + to enable audio output; + 3. the [sonic](https://github.com/espeak-ng/sonic) development library to + enable sonic audio speed up support; +-4. the `ronn` man-page markdown processor to build the man pages. + + To build the documentation, you need: + +@@ -122,7 +121,6 @@ be installed using the following commands: + | autotools | `sudo apt-get install make autoconf automake libtool pkg-config` | + | c99 compiler | `sudo apt-get install gcc` | + | sonic | `sudo apt-get install libsonic-dev` | +-| ronn | `sudo apt-get install ruby-ronn` | + | kramdown | `sudo apt-get install ruby-kramdown` | + + ### Building +@@ -326,7 +324,7 @@ To enable eSpeak, you need to: + The [main documentation](docs/index.md) for eSpeak NG provides more information + on using and creating voices/languages for eSpeak NG. + +-The [espeak-ng](src/espeak-ng.1.ronn) and [speak-ng](src/speak-ng.1.ronn) ++The [espeak-ng](src/espeak-ng.1.md) and [speak-ng](src/speak-ng.1.md) + command-line documentation provide a reference of the different command-line + options available to these commands with example usage. + +diff --git a/configure.ac b/configure.ac +index 33960c24..302f88f4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -223,14 +223,6 @@ AM_CONDITIONAL(OPT_KLATT, [test x"$have_klatt" = xyes]) + AM_CONDITIONAL(OPT_MBROLA, [test x"$have_mbrola" = xyes]) + AM_CONDITIONAL(OPT_ASYNC, [test x"$have_async" = xyes]) + +-dnl ================================================================ +-dnl ronn checks. +-dnl ================================================================ +- +-AC_CHECK_PROG(RONN, ronn, ronn, no) +- +-AM_CONDITIONAL(HAVE_RONN, [test ! x"$RONN" = xno]) +- + dnl ================================================================ + dnl Extended dictionary checks. + dnl ================================================================ +diff --git a/src/espeak-ng.1.md b/src/espeak-ng.1.md +new file mode 100644 +index 00000000..89fa2c01 +--- /dev/null ++++ b/src/espeak-ng.1.md +@@ -0,0 +1,163 @@ ++# espeak-ng(1) - A multi-lingual software speech synthesizer. ++{: data-date="July 2018"} ++ ++## SYNOPSIS ++ ++__espeak-ng__ \[*options*\] \[*words*\] ++ ++## DESCRIPTION ++ ++__espeak-ng__ is a software speech synthesizer for English, and some other ++languages. ++ ++## OPTIONS ++ ++`-h`, `--help` ++: Show summary of options. ++ ++`--version` ++: Prints the espeak library version and the location of the espeak voice ++ data. ++ ++`-f <text file>` ++: Text file to speak. ++ ++`--stdin` ++: Read text input from stdin instead of a file. ++ ++If neither `-f` nor `--stdin` are provided, `<words>` are spoken, or if no ++words are provided then text is spoken from stdin a line at a time. ++ ++`-d <device>` ++: Use the specified device to speak the audio on. If not specified, the ++ default audio device is used. ++ ++`-q` ++: Quiet, don't produce any speech (may be useful with `-x`). ++ ++`-a <integer>` ++: Amplitude, 0 to 200, default is 100. ++ ++`-g <integer>` ++: Word gap. Pause between words, units of 10ms at the default speed. ++ ++`-k <integer>` ++: Indicate capital letters with: 1=sound, 2=the word \"capitals\", higher ++ values = a pitch increase (try `-k20`). ++ ++`-l <integer>` ++: Line length. If not zero (which is the default), consider lines less than ++ this length as end-of-clause. ++ ++`-p <integer>` ++: Pitch adjustment, 0 to 99, default is 50. ++ ++`-s <integer>` ++: Speed in words per minute, default is 160. ++ ++`-v <voice name>` ++: Use voice file of this name from espeak-ng-data/voices. A variant can be ++ specified using _voice_+_variant_, such as af+m3. ++ ++`-w <wave file name>` ++: Write output to this WAV file, rather than speaking it directly. ++ ++`--split=<minutes>` ++: Used with `-w` to split the audio output into \<minutes\> recorded ++ chunks. ++ ++`-b` ++: Input text encoding, 1=UTF8, 2=8 bit, 4=16 bit. ++ ++`-m` ++: Indicates that the text contains SSML (Speech Synthesis Markup Language) ++ tags or other XML tags. Those SSML tags which are supported are ++ interpreted. Other tags, including HTML, are ignored, except that some HTML ++ tags such as \<hr\> \<h2\> and \<li\> ensure a break in the speech. ++ ++`-x` ++: Write phoneme mnemonics to stdout. ++ ++`-X` ++: Write phonemes mnemonics and translation trace to stdout. If rules files ++ have been built with `--compile=debug`, line numbers will also be displayed. ++ ++`-z` ++: No final sentence pause at the end of the text. ++ ++`--stdout` ++: Write speech output to stdout. ++ ++`--compile=voicename` ++: Compile the pronunciation rules and dictionary in the current directory. ++ =\<voicename\> is optional and specifies which language is compiled. ++ ++`--compile-debug=voicename` ++: Compile the pronunciation rules and dictionary in the current directory as ++ above, but include line numbers, that get shown when `-X` is used. ++ ++`--ipa` ++: Write phonemes to stdout using International Phonetic Alphabet. `--ipa=1` ++ Use ties, `--ipa=2` Use ZWJ, `--ipa=3` Separate with _. ++ ++`--tie=<character>` ++: The character to use to join multi-letter phonemes in `-x` and `--ipa` ++ output. ++ ++`--path=<path>` ++: Specifies the directory containing the espeak-ng-data directory. ++ ++`--pho` ++: Write mbrola phoneme data (.pho) to stdout or to the file in `--phonout`. ++ ++`--phonout=<filename>` ++: Write output from `-x` `-X` commands and mbrola phoneme data to this file. ++ ++`--punct="<characters>"` ++: Speak the names of punctuation characters during speaking. If ++ =\<characters\> is omitted, all punctuation is spoken. ++ ++`--sep=<character>` ++: The character to separate phonemes from the `-x` and `--ipa` output. ++ ++`--voices[=<language code>]` ++: Lists the available voices. If =\<language code\> is present then only ++ those voices which are suitable for that language are listed. ++ ++`--voices=<directory>` ++: Lists the voices in the specified subdirectory. ++ ++## EXAMPLES ++ ++`espeak-ng "This is a test"` ++: Speak the sentence \"This is a test\" using the default English voice. ++ ++`espeak-ng -f hello.txt` ++: Speak the contents of hello.txt using the default English voice. ++ ++`cat hello.txt | espeak-ng` ++: Speak the contents of hello.txt using the default English voice. ++ ++`espeak-ng -x hello` ++: Speak the word \"hello\" using the default English voice, and print the ++ phonemes that were spoken. ++ ++`espeak-ng -ven-us "[[h@'loU]]"` ++: Speak the phonemes \"h@'loU\" using the American English voice. ++ ++`espeak-ng --voices` ++: List all voices supported by eSpeak. ++ ++`espeak-ng --voices=en` ++: List all voices that speak English (`en`). ++ ++`espeak-ng --voices=mb` ++: List all voices using the MBROLA voice synthesizer. ++ ++## AUTHOR ++ ++eSpeak NG is maintained by Reece H. Dunn <msclrhd@xxxxxxxxx>. It is based on ++eSpeak by Jonathan Duddington <jonsd@xxxxxxxxxxxxxxx>. ++ ++This manual page is based on the eSpeak page written by Luke Yelavich ++<themuso@xxxxxxxxxx> for the Ubuntu project. +diff --git a/src/espeak-ng.1.ronn b/src/espeak-ng.1.ronn +deleted file mode 100644 +index 4fcd5e87..00000000 +--- a/src/espeak-ng.1.ronn ++++ /dev/null +@@ -1,162 +0,0 @@ +-# espeak-ng - A multi-lingual software speech synthesizer. +- +-## SYNOPSIS +- +-__espeak-ng__ [<options>] [<words>] +- +-## DESCRIPTION +- +-__espeak-ng__ is a software speech synthesizer for English, and some other +-languages. +- +-## OPTIONS +- +- * `-h`, `--help`: +- Show summary of options. +- +- * `--version`: +- Prints the espeak library version and the location of the espeak voice +- data. +- +- * `-f <text file>`: +- Text file to speak. +- +- * `--stdin`: +- Read text input from stdin instead of a file. +- +-If neither -f nor --stdin are provided, <words> are spoken, or if no +-words are provided then text is spoken from stdin a line at a time. +- +- * `-d <device>`: +- Use the specified device to speak the audio on. If not specified, the +- default audio device is used. +- +- * `-q`: +- Quiet, don't produce any speech (may be useful with -x). +- +- * `-a <integer>`: +- Amplitude, 0 to 200, default is 100. +- +- * `-g <integer>`: +- Word gap. Pause between words, units of 10ms at the default speed. +- +- * `-k <integer>`: +- Indicate capital letters with: 1=sound, 2=the word "capitals", higher +- values = a pitch increase (try -k20). +- +- * `-l <integer>`: +- Line length. If not zero (which is the default), consider lines less than +- this length as end-of-clause. +- +- * `-p <integer>`: +- Pitch adjustment, 0 to 99, default is 50. +- +- * `-s <integer>`: +- Speed in words per minute, default is 160. +- +- * `-v <voice name>`: +- Use voice file of this name from espeak-ng-data/voices. A variant can be +- specified using <voice>+<variant>, such as af+m3. +- +- * `-w <wave file name>`: +- Write output to this WAV file, rather than speaking it directly. +- +- * `--split=<minutes>`: +- Used with `-w` to split the audio output into <minutes> recorded +- chunks. +- +- * `-b`: +- Input text encoding, 1=UTF8, 2=8 bit, 4=16 bit. +- +- * `-m`: +- Indicates that the text contains SSML (Speech Synthesis Markup Language) +- tags or other XML tags. Those SSML tags which are supported are +- interpreted. Other tags, including HTML, are ignored, except that some HTML +- tags such as <hr> <h2> and <li> ensure a break in the +- speech. +- +- * `-x`: +- Write phoneme mnemonics to stdout. +- +- * `-X`: +- Write phonemes mnemonics and translation trace to stdout. If rules files +- have been built with --compile=debug, line numbers will also be displayed. +- +- * `-z`: +- No final sentence pause at the end of the text. +- +- * `--stdout`: +- Write speech output to stdout. +- +- * `--compile=voicename`: +- Compile the pronunciation rules and dictionary in the current directory. +- =<voicename< is optional and specifies which language is compiled. +- +- * `--compile-debug=voicename`: +- Compile the pronunciation rules and dictionary in the current directory as +- above, but include line numbers, that get shown when -X is used. +- +- * `--ipa`: +- Write phonemes to stdout using International Phonetic Alphabet. --ipa=1 Use +- ties, --ipa=2 Use ZWJ, --ipa=3 Separate with _. +- +- * `--tie=<character>`: +- The character to use to join multi-letter phonemes in -x and --ipa output. +- +- * `--path=<path>`: +- Specifies the directory containing the espeak-ng-data directory. +- +- * `--pho`: +- Write mbrola phoneme data (.pho) to stdout or to the file in --phonout. +- +- * `--phonout=<filename>`: +- Write output from -x -X commands and mbrola phoneme data to this file. +- +- * `--punct="<characters>"`: +- Speak the names of punctuation characters during speaking. If +- =<characters> is omitted, all punctuation is spoken. +- +- * `--sep=<character>`: +- The character to separate phonemes from the -x and --ipa output. +- +- * `--voices[=<language code>]`: +- Lists the available voices. If =<language code> is present then only +- those voices which are suitable for that language are listed. +- +- * `--voices=<directory>`: +- Lists the voices in the specified subdirectory. +- +-## EXAMPLES +- +- * `espeak-ng "This is a test"`: +- Speak the sentence "This is a test" using the default English voice. +- +- * `espeak-ng -f hello.txt`: +- Speak the contents of hello.txt using the default English voice. +- +- * `cat hello.txt | espeak-ng`: +- Speak the contents of hello.txt using the default English voice. +- +- * `espeak-ng -x hello`: +- Speak the word "hello" using the default English voice, and print the +- phonemes that were spoken. +- +- * `espeak-ng -ven-us "[[h@'loU]]"`: +- Speak the phonemes "h@'loU" using the American English voice. +- +- * `espeak-ng --voices`: +- List all voices supported by eSpeak. +- +- * `espeak-ng --voices=en`: +- List all voices that speak English (`en`). +- +- * `espeak-ng --voices=mb`: +- List all voices using the MBROLA voice synthesizer. +- +-## AUTHOR +- +-eSpeak NG is maintained by Reece H. Dunn <msclrhd@xxxxxxxxx>. It is based on +-eSpeak by Jonathan Duddington <jonsd@xxxxxxxxxxxxxxx>. +- +-This manual page is based on the eSpeak page written by Luke Yelavich +-<themuso@xxxxxxxxxx> for the Ubuntu project. +diff --git a/src/speak-ng.1.md b/src/speak-ng.1.md +new file mode 100644 +index 00000000..b05b9ad4 +--- /dev/null ++++ b/src/speak-ng.1.md +@@ -0,0 +1,159 @@ ++# speak-ng(1) - A multi-lingual software speech synthesizer. ++{: data-date="July 2018"} ++ ++## SYNOPSIS ++ ++__speak-ng__ \[*options*\] \[*words*\] ++ ++## DESCRIPTION ++ ++__speak-ng__ is a software speech synthesizer for English, and some other ++languages. ++ ++## OPTIONS ++ ++`-h`, `--help` ++: Show summary of options. ++ ++`--version` ++: Prints the espeak library version and the location of the espeak voice ++ data. ++ ++`-f <text file>` ++: Text file to speak. ++ ++`--stdin` ++: Read text input from stdin instead of a file. ++ ++If neither `-f` nor `--stdin` are provided, `<words>` are spoken, or if no ++words are provided then text is spoken from stdin a line at a time. ++ ++`-q` ++: Quiet, don't produce any speech (may be useful with `-x`). ++ ++`-a <integer>` ++: Amplitude, 0 to 200, default is 100. ++ ++`-g <integer>` ++: Word gap. Pause between words, units of 10ms at the default speed. ++ ++`-k <integer>` ++: Indicate capital letters with: 1=sound, 2=the word \"capitals\", higher ++ values = a pitch increase (try `-k20`). ++ ++`-l <integer>` ++: Line length. If not zero (which is the default), consider lines less than ++ this length as end-of-clause. ++ ++`-p <integer>` ++: Pitch adjustment, 0 to 99, default is 50. ++ ++`-s <integer>` ++: Speed in words per minute, default is 160. ++ ++`-v <voice name>` ++: Use voice file of this name from espeak-ng-data/voices. A variant can be ++ specified using _voice_+_variant_, such as af+m3. ++ ++`-w <wave file name>` ++: Write output to this WAV file, rather than speaking it directly. ++ ++`--split=<minutes>` ++: Used with `-w` to split the audio output into \<minutes\> recorded ++ chunks. ++ ++`-b` ++: Input text encoding, 1=UTF8, 2=8 bit, 4=16 bit. ++ ++`-m` ++: Indicates that the text contains SSML (Speech Synthesis Markup Language) ++ tags or other XML tags. Those SSML tags which are supported are ++ interpreted. Other tags, including HTML, are ignored, except that some HTML ++ tags such as \<hr\> \<h2\> and \<li\> ensure a break in the speech. ++ ++`-x` ++: Write phoneme mnemonics to stdout. ++ ++`-X` ++: Write phonemes mnemonics and translation trace to stdout. If rules files ++ have been built with `--compile=debug`, line numbers will also be displayed. ++ ++`-z` ++: No final sentence pause at the end of the text. ++ ++`--stdout` ++: Write speech output to stdout. ++ ++`--compile=voicename` ++: Compile the pronunciation rules and dictionary in the current directory. ++ =\<voicename\> is optional and specifies which language is compiled. ++ ++`--compile-debug=voicename` ++: Compile the pronunciation rules and dictionary in the current directory as ++ above, but include line numbers, that get shown when `-X` is used. ++ ++`--ipa` ++: Write phonemes to stdout using International Phonetic Alphabet. `--ipa=1` ++ Use ties, `--ipa=2` Use ZWJ, `--ipa=3` Separate with _. ++ ++`--tie=<character>` ++: The character to use to join multi-letter phonemes in `-x` and `--ipa` ++ output. ++ ++`--path=<path>` ++: Specifies the directory containing the espeak-ng-data directory. ++ ++`--pho` ++: Write mbrola phoneme data (.pho) to stdout or to the file in `--phonout`. ++ ++`--phonout=<filename>` ++: Write output from `-x` `-X` commands and mbrola phoneme data to this file. ++ ++`--punct="<characters>"` ++: Speak the names of punctuation characters during speaking. If ++ =\<characters\> is omitted, all punctuation is spoken. ++ ++`--sep=<character>` ++: The character to separate phonemes from the `-x` and `--ipa` output. ++ ++`--voices[=<language code>]` ++: Lists the available voices. If =\<language code\> is present then only ++ those voices which are suitable for that language are listed. ++ ++`--voices=<directory>` ++: Lists the voices in the specified subdirectory. ++ ++## EXAMPLES ++ ++`speak-ng "This is a test"` ++: Speak the sentence \"This is a test\" using the default English voice. ++ ++`speak-ng -f hello.txt` ++: Speak the contents of hello.txt using the default English voice. ++ ++`cat hello.txt | speak-ng` ++: Speak the contents of hello.txt using the default English voice. ++ ++`speak-ng -x hello` ++: Speak the word \"hello\" using the default English voice, and print the ++ phonemes that were spoken. ++ ++`speak-ng -ven-us "[[h@'loU]]"` ++: Speak the phonemes \"h@'loU\" using the American English voice. ++ ++`speak-ng --voices` ++: List all voices supported by eSpeak. ++ ++`speak-ng --voices=en` ++: List all voices that speak English (`en`). ++ ++`speak-ng --voices=mb` ++: List all voices using the MBROLA voice synthesizer. ++ ++## AUTHOR ++ ++eSpeak NG is maintained by Reece H. Dunn <msclrhd@xxxxxxxxx>. It is based on ++eSpeak by Jonathan Duddington <jonsd@xxxxxxxxxxxxxxx>. ++ ++This manual page is based on the eSpeak page written by Luke Yelavich ++<themuso@xxxxxxxxxx> for the Ubuntu project. +diff --git a/src/speak-ng.1.ronn b/src/speak-ng.1.ronn +deleted file mode 100644 +index 25c607f2..00000000 +--- a/src/speak-ng.1.ronn ++++ /dev/null +@@ -1,158 +0,0 @@ +-# speak-ng - A multi-lingual software speech synthesizer. +- +-## SYNOPSIS +- +-__speak-ng__ [<options>] [<<words>>] +- +-## DESCRIPTION +- +-__speak-ng__ is a software speech synthesizer for English, and some other +-languages. +- +-## OPTIONS +- +- * `-h`, `--help`: +- Show summary of options. +- +- * `--version`: +- Prints the espeak library version and the location of the espeak voice +- data. +- +- * `-f <text file>`: +- Text file to speak. +- +- * `--stdin`: +- Read text input from stdin instead of a file. +- +-If neither -f nor --stdin are provided, <words> are spoken, or if no +-words are provided then text is spoken from stdin a line at a time. +- +- * `-q`: +- Quiet, don't produce any speech (may be useful with -x). +- +- * `-a <integer>`: +- Amplitude, 0 to 200, default is 100. +- +- * `-g <integer>`: +- Word gap. Pause between words, units of 10ms at the default speed. +- +- * `-k <integer>`: +- Indicate capital letters with: 1=sound, 2=the word "capitals", higher +- values = a pitch increase (try -k20). +- +- * `-l <integer>`: +- Line length. If not zero (which is the default), consider lines less than +- this length as end-of-clause. +- +- * `-p <integer>`: +- Pitch adjustment, 0 to 99, default is 50. +- +- * `-s <integer>`: +- Speed in words per minute, default is 160. +- +- * `-v <voice name>`: +- Use voice file of this name from espeak-ng-data/voices. A variant can be +- specified using <voice>+<variant>, such as af+m3. +- +- * `-w <wave file name>`: +- Write output to this WAV file, rather than speaking it directly. +- +- * `--split=<minutes>`: +- Used with `-w` to split the audio output into <minutes> recorded +- chunks. +- +- * `-b`: +- Input text encoding, 1=UTF8, 2=8 bit, 4=16 bit. +- +- * `-m`: +- Indicates that the text contains SSML (Speech Synthesis Markup Language) +- tags or other XML tags. Those SSML tags which are supported are +- interpreted. Other tags, including HTML, are ignored, except that some HTML +- tags such as <hr> <h2> and <li> ensure a break in the +- speech. +- +- * `-x`: +- Write phoneme mnemonics to stdout. +- +- * `-X`: +- Write phonemes mnemonics and translation trace to stdout. If rules files +- have been built with --compile=debug, line numbers will also be displayed. +- +- * `-z`: +- No final sentence pause at the end of the text. +- +- * `--stdout`: +- Write speech output to stdout. +- +- * `--compile=voicename`: +- Compile the pronunciation rules and dictionary in the current directory. +- =<voicename< is optional and specifies which language is compiled. +- +- * `--compile-debug=voicename`: +- Compile the pronunciation rules and dictionary in the current directory as +- above, but include line numbers, that get shown when -X is used. +- +- * `--ipa`: +- Write phonemes to stdout using International Phonetic Alphabet. --ipa=1 Use +- ties, --ipa=2 Use ZWJ, --ipa=3 Separate with _. +- +- * `--tie=<character>`: +- The character to use to join multi-letter phonemes in -x and --ipa output. +- +- * `--path=<path>`: +- Specifies the directory containing the espeak-ng-data directory. +- +- * `--pho`: +- Write mbrola phoneme data (.pho) to stdout or to the file in --phonout. +- +- * `--phonout=<filename>`: +- Write output from -x -X commands and mbrola phoneme data to this file. +- +- * `--punct="<characters>"`: +- Speak the names of punctuation characters during speaking. If +- =<characters> is omitted, all punctuation is spoken. +- +- * `--sep=<character>`: +- The character to separate phonemes from the -x and --ipa output. +- +- * `--voices[=<language code>]`: +- Lists the available voices. If =<language code> is present then only +- those voices which are suitable for that language are listed. +- +- * `--voices=<directory>`: +- Lists the voices in the specified subdirectory. +- +-## EXAMPLES +- +- * `speak-ng "This is a test"`: +- Speak the sentence "This is a test" using the default English voice. +- +- * `speak-ng -f hello.txt`: +- Speak the contents of hello.txt using the default English voice. +- +- * `cat hello.txt | speak-ng`: +- Speak the contents of hello.txt using the default English voice. +- +- * `speak-ng -x hello`: +- Speak the word "hello" using the default English voice, and print the +- phonemes that were spoken. +- +- * `speak-ng -ven-us "[[h@'loU]]"`: +- Speak the phonemes "h@'loU" using the American English voice. +- +- * `speak-ng --voices`: +- List all voices supported by eSpeak. +- +- * `speak-ng --voices=en`: +- List all voices that speak English (`en`). +- +- * `speak-ng --voices=mb`: +- List all voices using the MBROLA voice synthesizer. +- +-## AUTHOR +- +-eSpeak NG is maintained by Reece H. Dunn <msclrhd@xxxxxxxxx>. It is based on +-eSpeak by Jonathan Duddington <jonsd@xxxxxxxxxxxxxxx>. +- +-This manual page is based on the eSpeak page written by Luke Yelavich +-<themuso@xxxxxxxxxx> for the Ubuntu project. +-- +2.14.4 + diff --git a/espeak-ng.spec b/espeak-ng.spec index 3099262..b9f6125 100644 --- a/espeak-ng.spec +++ b/espeak-ng.spec @@ -1,6 +1,6 @@ Name: espeak-ng Version: 1.49.2 -Release: 2%{?dist} +Release: 3%{?dist} Summary: eSpeak NG Text-to-Speech License: GPLv3+ @@ -8,9 +8,20 @@ URL: https://github.com/espeak-ng/espeak-ng Source0: %{url}/archive/%{version}.tar.gz BuildRequires: gcc make autoconf automake libtool pkgconfig -BuildRequires: rubygem-ronn rubygem-kramdown +BuildRequires: rubygem-kramdown BuildRequires: pcaudiolib-devel +# Downstream-only so far. I tried two different formats for the man pages, +# but both seem unsuitable for upstream at this point, because they would +# be problematic on Debian, which seems to be the primary development +# platform of espeak-ng. The two formats are: +# 1. kramdown - used in the below patch. The problem is that Debian has +# an old version of the kramdown tool, which does not support generating +# man pages +# 2. asciidoc - the asciidoc tool on Debian pulls in ~1GB of dependencies, +# which is unacceptable +Patch0: 0001-Use-kramdown-in-man-pages.patch + %description The eSpeak NG (Next Generation) Text-to-Speech program is an open source speech synthesizer that supports over 70 languages. It is based on the eSpeak engine @@ -42,7 +53,7 @@ Requires: %{name} = %{version}-%{release} Documentation for eSpeak NG, a software speech synthesizer. %prep -%autosetup +%autosetup -p1 %build ./autogen.sh @@ -100,6 +111,10 @@ ESPEAK_DATA_PATH=`pwd` LD_LIBRARY_PATH=src:${LD_LIBRARY_PATH} src/espeak-ng ... %doc docs/*.html %changelog +* Fri Jul 13 2018 Ondřej Lysoněk <olysonek@xxxxxxxxxx> - 1.49.2-3 +- Drop dependency on rubygem-ronn +- Resolves: rhbz#1588339 + * Wed Feb 07 2018 Fedora Release Engineering <releng@xxxxxxxxxxxxxxxxx> - 1.49.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx