Bug 2303960

Summary: Review Request: vosk-api - Offline speech recognition toolkit
Product: [Fedora] Fedora Reporter: Manish Tiwari <matiwari>
Component: Package ReviewAssignee: Parag AN(पराग) <panemade>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, panemade, petersen
Target Milestone: ---Keywords: AutomationTriaged
Target Release: ---Flags: panemade: fedora-review+
Hardware: All   
OS: Linux   
URL: https://alphacephei.com/vosk
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-12-27 01:22:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2309810    
Attachments:
Description Flags
The .spec file difference from Copr build 8214852 to 8218838
none
The .spec file difference from Copr build 8218838 to 8255616 none

Comment 1 Parag AN(पराग) 2024-09-30 10:24:50 UTC
Few initial observations
1) Why to specify arch list in this line?
ExclusiveArch:  x86_64 aarch64 ppc64le

See https://docs.fedoraproject.org/en-US/packaging-guidelines/#_architecture_support

2) Why this package need below line?
%global debug_package %{nil}

See more https://docs.fedoraproject.org/en-US/packaging-guidelines/Debuginfo/

3) Why many patches needed for this package? Try to contact upstream and see if these patches can be merged upstream. We want to see no patches needed or distro specific patches needed for any Fedora package.
See https://docs.fedoraproject.org/en-US/packaging-guidelines/PatchUpstreamStatus/

4) make command should follow https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make

5) %check section should only execute testsuite not build there.

Comment 2 Manish Tiwari 2024-10-11 17:59:14 UTC
(In reply to Parag AN(पराग) from comment #1)
> Few initial observations
> 1) Why to specify arch list in this line?
> ExclusiveArch:  x86_64 aarch64 ppc64le
> 
> See
> https://docs.fedoraproject.org/en-US/packaging-guidelines/
> #_architecture_support
> 
The vosk-api package depends on Kaldi, which itself relies on libraries that use floating-point optimizations specific to 64-bit systems.

> 2) Why this package need below line?
> %global debug_package %{nil}
> 
> See more https://docs.fedoraproject.org/en-US/packaging-guidelines/Debuginfo/
> 
The %global debug_package %{nil} is included to disable debuginfo generation because the package primarily consists of headers, shared libraries, and model data, with no significant executable content requiring debugging.

> 3) Why many patches needed for this package? Try to contact upstream and see
> if these patches can be merged upstream. We want to see no patches needed or
> distro specific patches needed for any Fedora package.
> See
> https://docs.fedoraproject.org/en-US/packaging-guidelines/
> PatchUpstreamStatus/
> 
These patches address Kaldi's compatibility with OpenFST, OpenBLAS, LAPACK to ensure proper functionality.

> 4) make command should follow
> https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make
> 
Done the changes as per guideline
> 5) %check section should only execute testsuite not build there.
Removed , not required

Comment 3 Manish Tiwari 2024-10-11 18:19:13 UTC
Addressed above suggested changes
- Added comments to clarify the rationale behind the changes I have made.
- Removed the %check section
- Added required flag for parallel make  

Spec URL: https://download.copr.fedorainfracloud.org/results/matiwari/IBus-Speech-To-Text/fedora-41-x86_64/08121484-vosk-api/vosk-api.spec

SRPM URL: https://download.copr.fedorainfracloud.org/results/matiwari/IBus-Speech-To-Text/fedora-41-x86_64/08121484-vosk-api/vosk-api-0.3.45-1.fc41.src.rpm

Description: Vosk is an offline open source speech recognition toolkit
Fedora Account System Username: matiwari

Comment 4 Parag AN(पराग) 2024-11-05 06:33:35 UTC
This package is not compiling in rawhide. Please check and submit new package links.

Comment 6 Fedora Review Service 2024-11-05 18:23:31 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8214852
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2303960-vosk-api/fedora-rawhide-x86_64/08214852-vosk-api/fedora-review/review.txt

Found issues:

- Not a valid SPDX expression 'ASL 2.0'. It seems that you are using the old Fedora license abbreviations. Try `license-fedora2spdx' for converting it to SPDX.
  Read more: https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_1

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 8 Fedora Review Service 2024-11-06 06:36:10 UTC
Created attachment 2055858 [details]
The .spec file difference from Copr build 8214852 to 8218838

Comment 9 Fedora Review Service 2024-11-06 06:36:12 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8218838
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2303960-vosk-api/fedora-rawhide-x86_64/08218838-vosk-api/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 10 solomoncyj 2024-11-13 02:45:27 UTC
in %build, use %configure, %make_build and %make_install

Comment 11 Manish Tiwari 2024-11-13 19:26:51 UTC
(In reply to solomoncyj from comment #10)
> in %build, use %configure, %make_build and %make_install
Thanks for your suggestions 
1)%configure: Kaldi uses a custom configure script with its own set of arguments, and it’s not compatible with %configure macro
2)%make_build: I will address this change and will submit new specfile 
3)%make_install: Since neither vosk-api nor kaldi provides a make install step, we need to manually copy the files to the appropriate locations in %install

Comment 12 Manish Tiwari 2024-11-13 19:55:29 UTC
Did the below changes in spec file
1) Added %make_build macro
2) Removed vosk-model-small-en-us as the vosk-api package functions independently of this model data and the required vosk model can be downloaded later whenever required.
3) %{kaldi_commit} is now used instead of long commit hash throughout spec file.  
 
Spec URL: https://download.copr.fedorainfracloud.org/results/matiwari/vosk-api/fedora-rawhide-x86_64/08255431-vosk-api/vosk-api.spec

SRPM URL: https://download.copr.fedorainfracloud.org/results/matiwari/vosk-api/fedora-rawhide-x86_64/08255431-vosk-api/vosk-api-0.3.45-1.fc42.src.rpm

rawhide build : https://download.copr.fedorainfracloud.org/results/matiwari/vosk-api/fedora-rawhide-x86_64/08255431-vosk-api/

Comment 13 Fedora Review Service 2024-11-13 20:48:58 UTC
Created attachment 2057606 [details]
The .spec file difference from Copr build 8218838 to 8255616

Comment 14 Fedora Review Service 2024-11-13 20:49:01 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8255616
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2303960-vosk-api/fedora-rawhide-x86_64/08255616-vosk-api/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 15 Manish Tiwari 2024-12-09 09:28:30 UTC
Updated spec file
1) Removed vosk-api main package to avoid unnecessary binary rpm as it does not provide any standalone functionality or executables
 
Spec URL: https://download.copr.fedorainfracloud.org/results/matiwari/vosk-api/fedora-rawhide-x86_64/08366190-vosk-api/vosk-api.spec

SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/6095/126636095/vosk-api-0.3.45-1.fc41.src.rpm
Devel Package URL: https://kojipkgs.fedoraproject.org//work/tasks/6095/126636095/vosk-api-devel-0.3.45-1.fc41.x86_64.rpm

Comment 16 Parag AN(पराग) 2024-12-09 14:49:17 UTC
$ rpmlint -v vosk-api-0.3.45-1.fc42.src.rpm vosk-api-devel-0.3.45-1.fc42.x86_64.rpm 
25154 blocks
70583 blocks
=================================================== rpmlint session starts ===================================================
rpmlint: 2.5.0
configuration:
    /usr/lib/python3.13/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 2

vosk-api-devel.x86_64: W: no-soname /usr/lib64/libvosk.so
The library has no soname.
==> Upstream does not provide any versioned library name

vosk-api.spec:69: W: configure-without-libdir-spec
A configure script is run without specifying the libdir. configure options
must be augmented with something like --libdir=%{_libdir} whenever the script
supports it.
== > configure script does not support libdir option

============= 2 packages and 0 specfiles checked; 0 errors, 2 warnings, 14 filtered, 0 badness; has taken 1.0 s ==============

Package looks good now.

Comment 17 Fedora Admin user for bugzilla script actions 2024-12-18 06:19:09 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/vosk-api

Comment 18 Fedora Update System 2024-12-18 12:03:11 UTC
FEDORA-2024-b284f7eaf1 (vosk-api-0.3.45-1.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-b284f7eaf1

Comment 19 Fedora Update System 2024-12-19 03:58:14 UTC
FEDORA-2024-b284f7eaf1 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-b284f7eaf1 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-b284f7eaf1

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

Comment 20 Fedora Update System 2024-12-27 01:22:30 UTC
FEDORA-2024-b284f7eaf1 (vosk-api-0.3.45-1.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.