Bug 641572
Summary: | Review Request: celt071 - Celt version 0.7.1 for mumble compatibility | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Andreas Osowski <th0br0> |
Component: | Package Review | Assignee: | Dominic Hopf <dmaphy> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | che666, dmaphy, fedora-package-review, gmaxwell, lam, michiel.beijen, msdeleonpeque, nathelbiya, notting, sven, vpvainio |
Target Milestone: | --- | Flags: | dmaphy:
fedora-review+
j: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | celt071-0.7.1-2.fc14 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-04-15 21:40:08 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: |
Description
Andreas Osowski
2010-10-09 10:32:21 UTC
This would be really helpful. I lost about an hour today trying to find out why I could hear no one else in mumble - until we detected that only speex as a codec worked. Then why not help to review it? How would I do this? Make sure the package builds? Make sure it installs and actually works for you? If you actually want Mumble to work reliably it must package it's own CELT 0.7.1 (which is what the mumble software is currently standardized on). Mumble has the build system infrastructure required to concurrently build and package multiple internal versions of CELT in order to make a transition from one version to another. CELT Upstream is currently at 0.8.1 and we're getting ready to do a new release in the coming weeks. Because CELT does not yet have a finished bitstream no two distinct versions of CELT are compatible with each other. Each is effectively a different library implementing a different codec. Accordingly, bundling CELT should not run afoul of Fedora's system lib packaging requirements. Well, the package builds and installs an F14. Of course it doesn't work with mumble as is, as that isn't linked against celt. Well, the package builds and also works if you patch the mumble config files (got some local patch here, but of course this is depending on this RR!) Other than that, if I'm not mistaken, that multiple internal celt versions is not available in 1.2.2 but only in the next release?! Mumble will work if you have libcelt0.so.0.0.0 in /usr/lib (32 bits) or in /usr/lib64 (32 bits). You can get this lib compiling the sources from http://www.celt-codec.org/downloads/ (Older development releases --> celt-0.7.1.tar.gz). Files will be installed by default in /usr/local/lib, so you'll need to copy the lib. Quick hack: rpm -i celt071-0.7.1-1.fc14.i686.rpm (built from above srpm) ln -s /usr/lib/libcelt071.so.0.0.0 /usr/lib/libcelt0.so.0.0.0 ... and Mumble seems to work Mumble searches for: celt.so.0.6.1 celt.so.0.6.1.so celt.so.0.6.2 celt.so.0.6.2.so celt.so.0.7.0 celt.so.0.7.0.so libcelt0.so.0.0.0 libcelt0.so.0.0.0.so libcelt0.so.0.6.1 libcelt0.so.0.6.1.so libcelt0.so.0.6.2 libcelt0.so.0.6.2.so libcelt0.so.0.7.0 libcelt0.so.0.7.0.so libcelt.so.0.0.0 libcelt.so.0.0.0.so libcelt.so.0.6.1 libcelt.so.0.6.1.so libcelt.so.0.6.2 libcelt.so.0.6.2.so libcelt.so.0.7.0 libcelt.so.0.7.0.so (not in this order, plus it searches for every name in many directories; not absence of 0.7.1) Since CELT 0.8.1 installs /usr/lib/libcelt0.so.1.0.0, I don't see a problem with installing this one as /usr/lib/libcelt0.so.0.0.0 out of the box for the time being. The fact that Mumble looks for 3 different versions of CELT in the system hints me that maybe it already supports multiple simultaneous CELT versions? % rpmlint celt071.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. % rpmlint celt071-0.7.1-1.fc13.src.rpm celt071.src: W: spelling-error Summary(en_US) codec -> cosec, codex, code celt071.src: W: spelling-error %description -l en_US codec -> cosec, codex, code celt071.src: W: spelling-error %description -l en_US realtime -> mealtime, real time, real-time celt071.src: W: spelling-error %description -l en_US codecs -> codes, coders, code's celt071.src: W: spelling-error %description -l en_US bitstream -> bit stream, bit-stream, midstream celt071.src: W: spelling-error %description -l en_US installable -> install able, install-able, uninstallable 1 packages and 0 specfiles checked; 0 errors, 6 warnings. % rpmlint celt071-0.7.1-1.fc14.x86_64.rpm celt071-devel-0.7.1-1.fc14.x86_64.rpm celt071-debuginfo-0.7.1-1.fc14.x86_64.rpm celt071.x86_64: W: spelling-error Summary(en_US) codec -> cosec, codex, code celt071.x86_64: W: spelling-error %description -l en_US codec -> cosec, codex, code celt071.x86_64: W: spelling-error %description -l en_US realtime -> mealtime, real time, real-time celt071.x86_64: W: spelling-error %description -l en_US codecs -> codes, coders, code's celt071.x86_64: W: spelling-error %description -l en_US bitstream -> bit stream, bit-stream, midstream celt071.x86_64: W: spelling-error %description -l en_US installable -> install able, install-able, uninstallable celt071.x86_64: W: no-manual-page-for-binary celtdec071 celt071.x86_64: W: no-manual-page-for-binary celtenc071 celt071-debuginfo.x86_64: E: debuginfo-without-sources 3 packages and 0 specfiles checked; 1 errors, 8 warnings. I'm no native english speaker, but I guess you can at least add the spaces in "real time" and "bit stream". Any other warning can be ignored. Package Review ============== Key: - = N/A x = Check ! = Problem ? = Not evaluated === REQUIRED ITEMS === [x] Package is named according to the Package Naming Guidelines [x] Specfile name matches %{name}.spec [x] Package seems to meet Packaging Guidelines [x] Package successfully compiles and builds into binary RPMs on at least one supported architecture. Builds fine with rpmbuild on Fedora 14 x86_64. [x] Rpmlint output: source RPM: only spelling warnings, see above. binary RPM: see above. [x] Package is not relocatable. [!] License in specfile matches actual License and meets Licensing Guidelines License: BSD The files tools/getopt1.c and tools/getopt_win.h are GPLv2+. Since they are used to build the binaries celtenc071 and celtdec071 which are installed by the package, the License rather should be: BSD and GPLv2+ [X] License file is included in %doc. [x] Specfile is legible and written in AE [x] Sourcefile in the Package is the same as provided in the mentioned Source SHA1SUM of Source: 39ffceae34a570dd787bce39a0a720682cc47fb0 [x] Package compiles successfully [!] All build dependencies are listed in BuildRequires There is a missing dependency to libtool. Some scratch builds with mock and koji failed because of this. See http://koji.fedoraproject.org/koji/taskinfo?taskID=2970161 and http://koji.fedoraproject.org/koji/taskinfo?taskID=2970169 [-] Specfile handles locales properly [x] ldconfig called in %post and %postun if required [x] Package owns directorys it creates [x] Package requires other packages for directories it uses. [x] Package does not list a file more than once in the %files listing [x] %files section includes %defattr and permissions are set properly [x] %clean section is there and contains rm -rf %{buildroot} [!] Macros are consistently used You are mixing the notation for the buildroot, line 56 has $RPM_BUILD_ROOT, line 64 %{buildroot}. [x] Package contains code, or permissable content. [-] Large documentation files are in a -doc subpackage [x] Program runs properly without files listed in %doc [x] Header files are in a -devel package [-] Static libraries are in a -static package [x] Package requires pkgconfig if .pc files are present [x] .so-files are put into a -devel subpackage [x] Subpackages include fully versioned dependency for the base package [x] Any libtool archives (*.la) are removed [-] contains desktop file (%{name}.desktop) if it is a GUI application [x] Package does not own files or directories owned by other packages. [!] $RPM_BUILD_ROOT is removed at beginning of %install [-] Filenames are encoded in UTF-8 === SUGGESTED ITEMS === [x] Package contains latest upstream version [x] Package does not include license text files separate from upstream. [-] non-English translations for description and summary [x] Package builds in mock Tested on: F14/x86_64 [x] Package should compile and build into binary RPMs on all supported architectures. tested build with koji [x] Program runs [-] Scriptlets must be sane, if used. [x] pkgconfig (*.pc) files are placed in a -devel package [-] require package providing a file instead of the file itself no files outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin are required For the spelling issues see http://en.wikipedia.org/wiki/Realtime http://en.wikipedia.org/wiki/Bitstream There are various ways to write those words it seems. As for the others see 0.7.1-2: SPEC: http://th0br0.fedorapeople.org/celt071-0.7.1-2/celt071.spec SRPM: http://th0br0.fedorapeople.org/celt071-0.7.1-2/celt071-0.7.1-2.fc14.src.rpm The issues seem to be fixed and the package now builds fine in koji [1]. The package is approved. [1] http://koji.fedoraproject.org/koji/taskinfo?taskID=2970355 Thanks for the review. New Package SCM Request ======================= Package Name: celt071 Short Description: Celt version 0.7.1 for mumble compatibility Owners: th0br0 Branches: f14 f15 f16 It is too early to request f16 branches; we haven't even released f15 yet. Git done (by process-git-requests). celt071-0.7.1-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/celt071-0.7.1-2.fc15 celt071-0.7.1-2.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/celt071-0.7.1-2.fc14 celt071-0.7.1-2.fc14 has been pushed to the Fedora 14 testing repository. Even with this package installed on F15 X86_64 I get the "unable to find matching CELT codec" error in Mumble: mumble-1.2.2-11.fc15.x86_64 celt071-0.7.1-2.fc15.x86_64 This is because mumble still needs an update to work with this celt package :) However, I will do this today / tomorrow. celt071-0.7.1-2.fc15 has been pushed to the Fedora 15 stable repository. celt071-0.7.1-2.fc14 has been pushed to the Fedora 14 stable repository. |