Spec URL: http://www.lovesunix.net/fedora/podsleuth.spec SRPM URL: http://www.lovesunix.net/fedora/podsleuth-0.6.0-1.fc8.src.rpm Description: PodSleuth is a new project I started last May that aims to probe, identify, and expose properties and metadata bound to iPods. It obsoletes libipoddevice, which had the same goals, but due to many reasons ended up being a mess of spaghetti code and hacks due to effectively being obsoleted overnight about a year ago when Apple made a particular firmware release. PodSleuth takes the many lessons learned from libipoddevice and evolutions of the iPod itself and implements hardware support in a more future proof, yet backwards compatible and easy to maintain way. (I am aware that 0.6.1 is out but all that changes is hardcoding $prefix/lib and similar changes which would need to be patched out anyways)
Using %_libexecdir instead of /usr/libexec will bring you additional karma points.
Spec URL: http://www.lovesunix.net/fedora/podsleuth.spec SRPM URL: http://www.lovesunix.net/fedora/podsleuth-0.6.0-2.fc8.src.rpm I'd like to collect my karma points please
I'll try to give it a shot tomorrow. But I would be more interested in seeing ewal life applications using it...
"ewal" should be read "real"
No worries, Podsleuth is being used by the 0.13.2 release of Banshee and will be used by all future versions. I'll need to patch up the new banshee a bit for more of this libdir madness but once that is done I can provide a test srpm that uses the external ndesk-dbus, boo and utilizes podslueth.. a brave new world.
I am sorry, but I will not be able to do a full review because I have no computer to test this application on (it does not build for F7 which is the newest in the Fedora line that I have access to). However, here is a preliminary review, maybe it will be useful to someone who decides to continue: Package Review ============== Key: - = N/A x = Check ! = Problem ? = Not evaluated === REQUIRED ITEMS === [x] Package is named according to the Package Naming Guidelines. [x] Spec file name must match the base package %{name}, in the format %{name}.spec. [!] Package meets the Packaging Guidelines. See note 1 [x] Package successfully compiles and builds into binary rpms on at least one supported architecture. Tested on:devel/x86_64 [x] Rpmlint output: source RPM:empty binary RPM: podsleuth.x86_64: E: script-without-shebang /usr/lib64/podsleuth/PodSleuth.dll.config podsleuth.x86_64: E: no-binary podsleuth.x86_64: E: only-non-binary-in-usr-lib I think all of these are ignorable [x] Package is not relocatable. [x] Buildroot is correct (%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)) [x] Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x] License field in the package spec file matches the actual license. License type:MIT [x] 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 is included in %doc. [x] Spec file is legible and written in American English. [x] Sources used to build the package matches the upstream source, as provided in the spec URL. SHA1SUM of package: d4ea13c3905fac15d1acf79b5fd56cca5b5e1287 podsleuth-0.6.0.tar.bz2 [?] Package is not known to require ExcludeArch See note 2 [x] All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [-] The spec file handles locales properly. [-] ldconfig called in %post and %postun if required. [x] Package must own all directories that it creates. [x] Package requires other packages for directories it uses. [x] Package does not contain duplicates in %files. [x] Permissions on files are set properly. [x] Package has a %clean section, which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). [x] Package consistently uses macros. [x] Package contains code, or permissable content. [-] Large documentation files are in a -doc subpackage, if required. [x] Package uses nothing in %doc for runtime. [-] Header files in -devel subpackage, if present. [-] Static libraries in -devel subpackage, if present. [x] Package requires pkgconfig, if .pc files are present. [-] Development .so files in -devel subpackage, if present. [x] Fully versioned dependency in subpackages, if present. [x] Package does not contain any libtool archives (.la). [-] Package contains a properly installed %{name}.desktop file if it is a GUI application. [x] Package does not own files or directories owned by other packages. === SUGGESTED ITEMS === [x] Latest version is packaged. One later version exists, but packaging an older version is intentional [x] Package does not include license text files separate from upstream. [-] Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x] Reviewer should test that the package builds in mock. Tested on:x86/devel [?] Package should compile and build into binary rpms on all supported architectures. Tested on: only on devel/x86_64 [?] Package functions as described. [?] Scriptlets must be sane, if used. See note 5 [x] The placement of pkgconfig(.pc) files is correct. [x] File based requires are sane. === Final Notes === 1. Parallel make is not activated. If it is known to not work, please add a comment about it. If it works, please add %{?_smp_mflags} to the make line 2. Is this program known to work on PPC ? I am not familiar with PPCs and I cannot test either... 3. The devel package misses %defattr(-,root,root,-) 4. No debuginfo package was generated in my mock build. Should there be one? 5. I am not familiar enough with mono to know if the gacutil related info from http://fedoraproject.org/wiki/Packaging/Mono#head-dd247e82e61dc1e89bc2bf315d4cbf0e11d48528 applies here or not.
1. An oversight 2. Right, we have no Mono on ppc64, I forgot to ExcludeArch that one 3. Watch my shame.. bugger 4. Intentional, Mono generates debug symbols by demand at runtime 5. Will investigate
SRPM: http://dnielsen.fedorapeople.org/podsleuth-0.6.0-3.fc8.src.rpm SPEC: http://dnielsen.fedorapeople.org/podsleuth.spec Fixed: Added a note that parallel build breaks Excluded ppc64 Fixed file permissions Notes: omission of debug symbols is intentional gac registation does not appear to be needed
I've created the following for testing: http://dnielsen.fedorapeople.org/banshee-0.13.2-3.fc8.src.rpm http://dnielsen.fedorapeople.org/ipod-sharp-0.8.0-1.fc8.src.rpm You'll also need taglib-sharp: https://bugzilla.redhat.com/show_bug.cgi?id=430393 and the latest mono-zeroconf: http://koji.fedoraproject.org/koji/buildinfo?buildID=33766 As soon as podsleuth and taglib-sharp pass reviews I plan to start work on getting banshee 0.13.2 into the stable repos.
Adding Paul Johnson to CC Paul would you mind doing a review of this?
* For consistency, please use the same ExclusiveArch that the mono spec uses. http://cvs.fedora.redhat.com/viewcvs/devel/mono/mono.spec?view=auto * Please separate the -devel subpackage Requires onto different lines, because it is difficult to read otherwise. * Does the -devel package need to Require: the items that the main package BuildRequires? With those addressed, this has my review and can land.
Upsie this got lost a bit, many apologies New Package CVS Request ======================= Package Name: podsleuth Short Description: Probes, identifies, and exposes properties and metadata bound to iPods Owners: dnielsen Branches: f8, f7 Cvsextras Commits: yes
cvs done.
Now in the devel repos, CLOSING