Spec URL: http://fedorapeople.org/~acme/tuna/tuna.spec SRPM URL: http://fedorapeople.org/~acme/tuna/tuna-0.8.4.tar.bz2 Description: Provides interface for changing scheduler and IRQ tunables, at whole CPU and at per thread/IRQ level. Allows isolating CPUs for use by a specific application and moving threads and interrupts to a CPU by just dragging and dropping them. Operations can be done on CPU sockets, understanding CPU topology. Can be used as a command line utility without requiring the GUI libraries to be installed. Uses the interfaces provided by the python-ethtool, python-schedutils and python-linux-procfs. Also includes the oscilloscope as a subpackage, description: Plots stream of values read from standard input on the screen together with statistics and a histogram. Allows to instantly see how a signal generator, such as cyclictest, signaltest or even ping, reacts when, for instance, its scheduling policy or real time priority is changed, be it using tuna or plain chrt & taskset.
More information about tuna and the oscilloscope can be found in this article, that has some screenshots: http://www.osadl.org/Single-View.111+M5aa14d3660e.0.html
> SRPM URL: http://fedorapeople.org/~acme/tuna/tuna-0.8.4.tar.bz2 You're expected to put the src.rpm URL there. > %dir %{_datadir}/tuna/help/kthreads/ > %{_datadir}/tuna/help/kthreads/* Due to the catch-all wildcard '*' these two lines could be replaced with just a single line: %{_datadir}/tuna/help/kthreads/ > %changelog Commonly one only sums up packaging related changes there, i.e. actual changes applied to the spec file, not all internal code changes which should be covered by an included ChangeLog file. In particular, mostly only when one adds patch files to the spec or replaces the source tarball, one gives a summary of what is expected to affect the user, but not full internal log of implementation changes. > %defattr(0755,root,root,0755) It's amazing to see that the widely used %defattr(-,root,root,-) [which defaults to %defattr(0644,root,root,0755)] isn't used in this spec file, but no comment explain why it isn't used. Please run rpmlint on the src.rpm *and* the built rpms. Pre-review your own packages in accordance with the Review Guidelines.
Thanks for all your comments: [acme@doppio tuna]$ rpmlint /home/acme/git/tuna/rpm/SPECS/tuna.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. [acme@doppio tuna]$ rpmlint /home/acme/git/tuna/rpm/SRPMS/tuna-0.9-1.fc11.src.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. [acme@doppio tuna]$ rpmlint /home/acme/git/tuna/rpm/RPMS/noarch/tuna-0.9-1.fc11.noarch.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. [acme@doppio tuna]$ rpmlint /home/acme/git/tuna/rpm/RPMS/noarch/oscilloscope-0.9-1.fc11.noarch.rpm oscilloscope.noarch: E: explicit-lib-dependency python-matplotlib oscilloscope.noarch: W: name-repeated-in-summary Oscilloscope 1 packages and 0 specfiles checked; 1 errors, 1 warnings. [acme@doppio tuna]$ I'm just waiting for an authorization for including a short article that describes the oscilloscope usage to then upload the new .src.rpm.
New files that should address all the comments made: Spec URL: http://fedorapeople.org/~acme/tuna/tuna.spec SRPM URL: http://fedorapeople.org/~acme/tuna/tuna-0.9-1.fc11.src.rpm Please let me know if there are any still any problems.
Hello Arnaldo, Please consider the following comments: - There is no tuna-0.9.tar.bz2 available at: http://userweb.kernel.org/~acme/tuna/tuna-0.9.tar.bz2 From spec: Name: tuna Version: 0.9 Source: http://userweb.kernel.org/~acme/tuna/%{name}-%{version}.tar.bz2 URL: http://userweb.kernel.org/~acme/tuna/ - Please increase the release number and add a description in changelog for each new change in spec file. Cheers, Douglas
couldn't be compiled + msgfmt po/pt_BR.po -o /home/makerpm/rpmbuild/BUILDROOT/tuna-0.9-1.fc11.i386//usr/share/locale/pt_BR/LC_MESSAGES/tuna.mo /var/tmp/rpm-tmp.jlWK4V: line 41: msgfmt: command not found missing gettext in BuildReq.
add -p switch to install https://fedoraproject.org/wiki/Packaging/Guidelines#Timestamps rpmlint output: oscilloscope.noarch: E: explicit-lib-dependency python-matplotlib oscilloscope.noarch: W: name-repeated-in-summary Oscilloscope tuna.noarch: E: non-executable-script /usr/lib/python2.6/site-packages/tuna/oscilloscope.py 0644 /usr/bin/python please fix all comments raised so far and provide new src.rpm with bumped release number
What is the problem with python-matplotlib being explicitely required? The oscilloscope uses it. fixed the -p and msgfmt buildreq issues, new files at: http://fedorapeople.org/~acme/tuna/tuna-0.9-2.fc11.src.rpm http://fedorapeople.org/~acme/tuna/tuna.spec http://userweb.kernel.org/~acme/tuna/tuna-0.9.tar.bz2
Hello Arnaldo, Please consider the following comments: 1) oscilloscope.noarch: W: name-repeated-in-summary Oscilloscope Here: "Summary: Generic Oscilloscope" Are there other good summary that doesn't use "Oscilloscope" word? 2) oscilloscope.noarch: E: explicit-lib-dependency python-matplotlib It seems that rpmlint confused by "lib" string wrongly, concluding that it is a package that contains an ELF shared library that should be depended on automatically. IMO, it's ok. 3) tuna.noarch: E: non-executable-script /usr/lib/python2.6/site-packages/tuna/oscilloscope.py 0644 /usr/bin/python Will oscilloscope.py be executed (fix permission) or not? If not, I think that /usr/bin/python line could be removed. Cheers, Douglas
(In reply to comment #9) > Hello Arnaldo, > > Please consider the following comments: > > 1) oscilloscope.noarch: W: name-repeated-in-summary Oscilloscope > > Here: "Summary: Generic Oscilloscope" > > Are there other good summary that doesn't use "Oscilloscope" word? Replaced with: Summary: Generic graphical signal plotting tool > 2) oscilloscope.noarch: E: explicit-lib-dependency python-matplotlib > > It seems that rpmlint confused by "lib" string wrongly, concluding that it is a > package that contains an ELF shared library that should be depended on > automatically. IMO, it's ok. Ah, that makes sense, agreed. > 3) tuna.noarch: E: non-executable-script > /usr/lib/python2.6/site-packages/tuna/oscilloscope.py 0644 /usr/bin/python > > Will oscilloscope.py be executed (fix permission) or not? > If not, I think that /usr/bin/python line could be removed. Done > Cheers, > Douglas Thanks! New files at: http://fedorapeople.org/~acme/tuna/tuna-0.9-3.fc11.src.rpm http://fedorapeople.org/~acme/tuna/tuna.spec http://userweb.kernel.org/~acme/tuna/tuna-0.9.tar.bz2
Hello Arnaldo, The spec changes looks good to my eyes. Anyway, soon someone will post an approval to your package or a new request of change to you. Cheers, Douglas
ping, is there anything else I need to do?
rpmlint must be run on every package. The output should be posted in the review. - OK The package must be named according to the Package Naming Guidelines. - OK The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption. - OK The package must meet the Packaging Guidelines. - OK The package must be licensed with a Fedora approved license and meet the Licensing Guidelines. - OK The License field in the package spec file must match the actual license. - OK If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package must be included in %doc. - OK The spec file must be written in American English. - OK The spec file for the package MUST be legible. - OK The sources used to build the package must match the upstream source, as provided in the spec URL. - OK The package MUST successfully compile and build into binary rpms on at least one primary architecture. - OK ExcludeArch present. - not needed, ok All build dependencies must be listed in BuildRequires. - OK The spec file MUST handle locales properly. - OK Ldconfig in %post and %postun. - not needed, ok Relocatable package and /usr prefix. - OK A package must own all directories that it creates. - OK A Fedora package must not list a file more than once in the spec file's %files listings. - OK Permissions on files must be set properly. - OK Each package must have a correct %clean section. - OK Each package must consistently use macros. - OK The package must contain code, or permissable content. - OK Large documentation files must go in a -doc subpackage. - OK If a package includes something as %doc, it must not affect the runtime of the application. - OK Header files must be in a -devel package. - OK Static libraries must be in a -static package. - OK Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' . - OK Library with .so suffix must be in -devel package. - OK In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release} - OK Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built. - OK Gui application and desktop-file-install. - OK Packages must not own files or directories already owned by other packages. - OK At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT). - OK All filenames in rpm packages must be valid UTF-8. - OK conclusion: approved
New Package CVS Request ======================= Package Name: tuna Short Description: Application tuning GUI & command line utility Owners: acme Branches: F-11 F-12 InitialCC: i18n-team
CVS done.