I'm closing this bug since it enables a fairly obscure feature. flite
isn't well maintained currently. I'm told spiel is better but it's not
packaged yet.

I was told Fedora enables speech synthesis in webkitgtk for the same
reason Debian does: because flite is packaged. However in GNOME OS,
speech synthesis is disabled in webkitgtk because nobody "packaged" it
there.

** Changed in: flite (Ubuntu)
       Status: Incomplete => Won't Fix

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to flite in Ubuntu.
https://bugs.launchpad.net/bugs/2096940

Title:
  [MIR] flite

Status in flite package in Ubuntu:
  Won't Fix

Bug description:
  Setting as incomplete while I gather more information and finish the
  paperwork here.

  [Availability]
  The package flite is already in Ubuntu universe.

  The package flite build for the architectures it is designed to work
  on.

  It currently builds and works for architectures: all Ubuntu
  architectures (including i386)

  Link to package https://launchpad.net/ubuntu/+source/flite

  [Rationale]
  - The package flite is required in Ubuntu main to enable speech synthesis in 
webkit2gtk as was done in Debian.

  https://mdn.github.io/dom-examples/web-speech-api/speak-easy-
  synthesis/

  https://caniuse.com/speech-synthesis

  In my testing, this feature works in the Firefox snap but not the
  Chromium snap (I'll follow up there). This is a request for it to work
  in webkit2gtk which is used by the Epiphany browser.

  gstreamer's "bad" plugins also have a plugin that uses flite. We may
  eventually try to get part of "bad" into main.

  - The package flite is a new runtime dependency of package webkit2gtk
  that we already support

  - There is no other/better way to solve this that is already in main or 
should go universe->main instead of this.
  webkit2gtk's speech synthesis feature works with either flite or libspiel but 
libspiel is not packaged in Debian or Ubuntu.

  - It would be great and useful to community/processes to have the
  package flite in Ubuntu main, but there is no definitive deadline.

  [Security]
  https://cve.mitre.org/cve/search_cve_list.html
  - check OSS security mailing list (feed into search engine
  site:www.openwall.com/lists/oss-security flite')
  - Ubuntu CVE Tracker
  https://ubuntu.com/security/cve?package=flite
  - Debian Security Tracker
  https://security-tracker.debian.org/tracker/source-package/flite
  - Had 1 security issues in the past
  + https://ubuntu.com/security/CVE-2014-0027

  - no `suid` or `sgid` binaries
  - no executables in `/sbin` and `/usr/sbin`
  - Package does not install services, timers or recurring jobs
  TODO: - Security has been kept in mind and common isolation/risk-mitigation
  TODO:   patterns are in place utilizing the following features:
  TODO:   TBD (add details and links/examples about things like dropping
  TODO:   permissions, using temporary environments, restricted users/groups,
  TODO:   seccomp, systemd isolation features, apparmor, ...)
  - Packages does not open privileged ports (ports < 1024).
  - Package does not expose any external endpoints
  - Packages does not contain extensions to security-sensitive software 
(filters, scanners, plugins, UI skins, ...)

  [Quality assurance - function/usage]
  - The package works well right after install

  [Quality assurance - maintenance]
   The package is maintained well in Debian/Ubuntu/Upstream and does not have 
too many, long-term & critical, open bugs
  - Ubuntu https://bugs.launchpad.net/ubuntu/+source/flite/
  - Debian https://bugs.debian.org/cgi-bin/pkgreport.cgi?src=flite
  - Upstream's bug tracker https://github.com/festvox/flite/issues

  - The package does not deal with exotic hardware we cannot support

  [Quality assurance - testing]
  - The package does not run a test at build time because TBD

  RULE:   - The package should, but is not required to, also contain
  RULE:     non-trivial autopkgtest(s).
  TODO-A: - The package runs an autopkgtest, and is currently passing on
  TODO-A:   this TBD list of architectures, link to test logs TBD
  TODO-B: - The package does not run an autopkgtest because TBD

  RULE: - existing but failing tests that shall be handled as "ok to fail"
  RULE:   need to be explained along the test logs below
  TODO-A: - The package does have not failing autopkgtests right now
  TODO-B: - The package does have failing autopkgtests tests right now, but 
since
  TODO-B:   they always failed they are handled as "ignored failure", this is
  TODO-B:   ok because TBD

  RULE: - If no build tests nor autopkgtests are included, and/or if the package
  RULE:   requires specific hardware to perform testing, the subscribed team
  RULE:   must provide a written test plan in a comment to the MIR bug, and
  RULE:   commit to running that test either at each upload of the package or
  RULE:   at least once each release cycle. In the comment to the MIR bug,
  RULE:   please link to the codebase of these tests (scripts or doc of manual
  RULE:   steps) and attach a full log of these test runs. This is meant to
  RULE:   assess their validity (e.g. not just superficial).
  RULE:   If possible such things should stay in universe. Sometimes that is
  RULE:   impossible due to the way how features/plugins/dependencies work
  RULE:   but if you are going to ask for promotion of something untestable
  RULE:   please outline why it couldn't provide its value (e.g. by splitting
  RULE:   binaries) to users from universe.
  RULE:   This is a balance that is hard to strike well, the request is that all
  RULE:   options have been exploited before giving up. Look for more details
  RULE:   and backgrounds https://github.com/canonical/ubuntu-mir/issues/30
  RULE:   Just like in the SRU process it is worth to understand what the
  RULE:   consequences a regression (due to a test miss) would be. Therefore
  RULE:   if being untestable we ask to outline what consequences this would
  RULE:   have for the given package. And let us be honest, even if you can
  RULE:   test you are never sure you will be able to catch all potential
  RULE:   regressions. So this is mostly to force self-awareness of the owning
  RULE:   team than to make a decision on.
  TODO: - The package can not be well tested at build or autopkgtest time
  TODO:   because TBD. To make up for that:
  TODO-A:   - We have access to such hardware in the team
  TODO-B:   - We have allocated budget to get this hardware, but it is not here
  TODO-B:     yet
  TODO-C:   - We have checked with solutions-qa and will use their hardware
  TODO-C:     through testflinger
  TODO-D:   - We have checked with other team TBD and will use their hardware
  TODO-D:     through TBD (eg. MAAS)
  TODO-E:   - We have checked and found a simulator which covers this case
  TODO-E:     sufficiently for testing, our plan to use it is TBD
  TODO-F:   - We have engaged with the upstream community and due to that
  TODO-F:     can tests new package builds via TBD
  TODO-G:   - We have engaged with our user community and due to that
  TODO-G:     can tests new package builds via TBD
  TODO-H:   - We have engaged with the hardware manufacturer and made an
  TODO-H:     agreement to test new builds via TBD
  TODO-A-H: - Based on that access outlined above, here are the details of the
  TODO-A-H:   test plan/automation TBD (e.g. script or repo) and (if already
  TODO-A-H:   possible) example output of a test run: TBD (logs).
  TODO-A-H:   We will execute that test plan
  TODO-A-H1:  on-uploads
  TODO-A-H2:  regularly (TBD details like frequency: monthly, infra: jira-url)
  TODO-X:   - We have exhausted all options, there really is no feasible way
  TODO-X:     to test or recreate this. We are aware of the extra implications
  TODO-X:     and duties this has for our team (= help SEG and security on
  TODO-X:     servicing this package, but also more effort on any of your own
  TODO-X:     bug triage and fixes).
  TODO-X:     Due to TBD there also is no way to provide this to users from
  TODO-X:     universe.
  TODO-X:     Due to the nature, integration and use cases of the package the
  TODO-X:     consequences of a regression that might slip through most likely
  TODO-X:     would include
  TODO-X:     - TBD
  TODO-X:     - TBD
  TODO-X:     - TBD

  RULE: - In some cases a solution that is about to be promoted consists of
  RULE:   several very small libraries and one actual application uniting them
  RULE:   to achieve something useful. This is rather common in the go/rust 
space.
  RULE:   In that case often these micro-libs on their own can and should only
  RULE:   provide low level unit-tests. But more complex autopkgtests make no
  RULE:   sense on that level. Therefore in those cases one might want to test 
on
  RULE:   the solution level.
  RULE:   - Process wise MIR-requesting teams can ask (on the bug) for this
  RULE:     special case to apply for a given case, which reduces the test
  RULE:     constraints on the micro libraries but in return increases the
  RULE:     requirements for the test of the actual app/solution.
  RULE:   - Since this might promote micro-lib packages to main with less than
  RULE:     the common level of QA any further MIRed program using them will 
have
  RULE:     to provide the same amount of increased testing.
  TODO: - This package is minimal and will be tested in a more wide reaching
  TODO:   solution context TBD, details about this testing are here TBD

  [Quality assurance - packaging]
  RULE: - The package uses a debian/watch file whenever possible. In cases where
  RULE:   this is not possible (e.g. native packages), the package should either
  RULE:   provide a debian/README.source file or a debian/watch file (with
  RULE:   comments only) providing clear instructions on how to generate the
  RULE:   source tar file.
  TODO-A: - debian/watch is present and works
  TODO-B: - debian/watch is not present, instead it has TBD
  TODO-C: - debian/watch is not present because it is a native package

  - debian/control defines a correct Maintainer field

  RULE: - It is often useful to run `lintian --pedantic` on the package to spot
  RULE:   the most common packaging issues in advance
  RULE: - Non-obvious or non-properly commented lintian overrides should be
  RULE:   explained
  TODO: - This package does not yield massive lintian Warnings, Errors
  TODO: - Please link to a recent build log of the package <TBD>
  TODO: - Please attach the full output you have got from
  TODO:   `lintian --pedantic` as an extra post to this bug.
  TODO-A: - Lintian overrides are not present
  TODO-B: - Lintian overrides are present, but ok because TBD

  - This package does not rely on obsolete or about to be demoted packages.
  - This package has no python2 or GTK2 dependencies

  - The package will be installed by default, but does not ask debconf
  questions

  - Packaging and build is easy, link to debian/rules
  https://salsa.debian.org/a11y-team/flite/-/blob/master/debian/rules

  [UI standards]
  - Application is not end-user facing (does not need translation or .desktop)

  The package description says it supports English and Indic languages.

  [Dependencies]
  - No further depends or recommends dependencies that are not yet in main

  [Standards compliance]
  - This package correctly follows FHS and Debian Policy

  [Maintenance/Owner]
  TODO-A: - The owning team will be TBD and I have their acknowledgement for
  TODO-A:   that commitment
  TODO-B: - I Suggest the owning team to be TBD
  TODO-A: - The future owning team is already subscribed to the package
  TODO-B: - The future owning team is not yet subscribed, but will subscribe to
  TODO-B:   the package before promotion

  - This does not use static builds

  - This does not use vendored code

  - This package is not rust based

  - The package has been built within the last 3 months in the archive
  - Build link on launchpad: https://launchpad.net/ubuntu/+source/flite/2.2-7

  [Background information]
  The Package description explains the package well
  Upstream Name is flite

  Links to upstream project
  http://cmuflite.org/
  https://github.com/festvox/flite

  flite was in Ubuntu main from Ubuntu 6.06 LTS until it was no longer
  required for Build-Depends to be in main. The paperwork was simpler
  then!

  https://wiki.ubuntu.com/MainInclusionReportFlite

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/flite/+bug/2096940/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to