Bug 892335
Summary: | Review Request: AudioCuesheetEditor - Audio Cuesheet Editor | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Sven Baus <s.baus86> |
Component: | Package Review | Assignee: | Nobody's working on this, feel free to take it <nobody> |
Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | besser82, i, otto.liljalaakso, package-review, s.baus86 |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2021-06-23 00:45:28 UTC | Type: | Bug |
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: | 177841, 201449 |
Description
Sven Baus
2013-01-06 18:24:23 UTC
Why don't you continue with #880763 ? #880763 was for version 0.2.0, this is now for version 0.2.1. Or should I have reused the bug?! (In reply to comment #2) > #880763 was for version 0.2.0, this is now for version 0.2.1. > > Or should I have reused the bug?! For a review request, the version number doesn't matter. Please choose the bug report on which you want to continue and mark the other one as a duplicate. *** Bug 880763 has been marked as a duplicate of this bug. *** Hello, I could need some help over here. Anyone has any idea, why it fails with xbuild? Greetings Sven No one any idea? I've been away for a week and need to catch up with accumulated mail. The provided spec file has not been tested by you at all. :( It fails for simple commands, such as rpmbuild -bs and -bb, because the download link for the source tarball results in a wrong file name. For a last try, I've given "spectool -g AudioCueSheet.spec" a try, and it redownloaded the tarball as a file with name "download" because of the Source0 URL you use. That may be a temporary work-around, but needs fixing. Finally, the built src.rpm failed early with Fedora 18 for rpmbuild -bb: line 29: xbuild: command not found A build requirement is missing. I've stopped there. The spec file also still suffers from issues I've pointed out in the old ticket. You won't manage to maintain an RPM package if you don't care about packaging topics. Please provide a src.rpm that builds for you with either plain rpmbuild, Mock or in the official Fedora Build System: https://fedoraproject.org/wiki/Join_the_package_collection_maintainers#Install_the_client_tools_.28Koji.29_and_set_up_your_certificate https://fedoraproject.org/wiki/Join_the_package_collection_maintainers#Upload_Your_Package If your released upstream source tarball doesn't build at all, this is beyond the scope of a Fedora Package Review Request. I see you've asked about xbuild in another place already, note that there's also a Fedora "mono" list, perhaps with subscribers who can help: https://admin.fedoraproject.org/mailman/listinfo/mono Thank you Michael for your explanating answer. As you have already seen, the spec isn't finished yet, since I'm stuck in the build stage. When I can get the xbuild run, I can fix everything else, since I'm currently trying a first build of the rpm. Thank you for informing me about the mailing list, I will ask there for help. "BuildRequires: mono-devel" for /usr/bin/xbuild
> gtk-gui/MainWindow.cs(152,51): error CS1012: Too many characters in character literal
%build
export LANG=en_US.UTF-8
xbuild …
makes the build work. When using rpmbuild, it sets 'export LANG="C"' for the build environment.
I see that consulting Fedora's "mono" list has been fruitful, too. Good. Desktop File: https://sourceforge.net/p/audiocuesheet/code/154/tree/trunk/RPM%20Build/AudioCuesheetEditor.desktop SPEC: https://sourceforge.net/p/audiocuesheet/code/154/tree/trunk/RPM%20Build/AudioCuesheetEditor.spec Hello Everybody, I've reworked some stuff and have been able to build an rpm. I have done first tests with rpmlint to it, which gave me the following output: [makerpm@Sven SPECS]$ rpmlint AudioCuesheetEditor.spec AudioCuesheetEditor.spec:20: W: rpm-buildroot-usage %prep %setup -q -c %{buildroot}/%{name}-%{version} 0 packages and 1 specfiles checked; 0 errors, 1 warnings. The Warning concerns the setup stage. I have no idea how to do it other way, so I would ignore this warning. Would you guys please take a first look above the spec and tell me if there are bad errors inside? Thank you for your help. Greetings Sven First, have a look at the packaging guidelines to get a proper download URL for SourceForge stuff: http://fedoraproject.org/wiki/Packaging:SourceURL#Sourceforge.net W: rpm-buildroot-usage %prep %setup -q -c %{buildroot}/%{name}-%{version} It should be unneded to define such a folder for extracting the sources. The -c switch is for creating a build folder if the tarball doesn't contain it. Try "%setup -q" with the tarball from the mentioned download URL, should work. I had pointed out the wrong %setup usage in bug 880763 comment 7 already. Reading such comments and answering/acknowledging can lead to better communication with reviewers. I will rework the spec since I have seen, that I have missed several things: - install of desktop file - install of start script I'm currently working on it, but haven't finished everything yet. You will get a new version in time. SPEC: https://sourceforge.net/p/audiocuesheet/code/157/tree/trunk/RPM%20Build/AudioCuesheetEditor.spec rpmlint output: [makerpm@Sven SPECS]$ rpmlint AudioCuesheetEditor.spec ../RPMS/x86_64/AudioCuesheetEditor-0.2.1-1.fc17.x86_64.rpm ../SRPMS/AudioCuesheetEditor-0.2.1-1.fc17.src.rpm AudioCuesheetEditor.x86_64: W: spelling-error Summary(en_US) cuesheet -> cue sheet, cue-sheet, dustsheet No spelling error! AudioCuesheetEditor.x86_64: W: spelling-error %description -l en_US cuesheets -> cue sheets, cue-sheets, dustsheets No spelling error! AudioCuesheetEditor.x86_64: E: no-binary There are binaries called "AudioCuesheetEditor.exe" that need to be run with mono. AudioCuesheetEditor.x86_64: W: only-non-binary-in-usr-lib As mentioned above there are binaries. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE.TXT AudioCuesheetEditor.x86_64: E: wrong-script-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE.TXT I could find no encoding error. The files are UTF8 encoded. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/CHANGELOG.TXT AudioCuesheetEditor.x86_64: E: wrong-script-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor-0.2.1/CHANGELOG.TXT I could find no encoding error. The files are UTF8 encoded. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/README.TXT What about that error? I removed the executable bit inside the build stage. AudioCuesheetEditor.x86_64: E: wrong-script-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor-0.2.1/README.TXT I could find no encoding error. The files are UTF8 encoded. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE_DE.TXT What about that error? I removed the executable bit inside the build stage. AudioCuesheetEditor.x86_64: E: wrong-script-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE_DE.TXT I could find no encoding error. The files are UTF8 encoded. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/KNOWN_ISSUES.TXT What about that error? I removed the executable bit inside the build stage. AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE_EN.TXT What about that error? I removed the executable bit inside the build stage. AudioCuesheetEditor.x86_64: E: wrong-script-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor-0.2.1/LICENCE_EN.TXT I could find no encoding error. The files are UTF8 encoded. AudioCuesheetEditor.x86_64: W: no-manual-page-for-binary AudioCuesheetEditor Suplied inside README.TXT AudioCuesheetEditor.src: W: spelling-error Summary(en_US) cuesheet -> cue sheet, cue-sheet, dustsheet No spelling error! AudioCuesheetEditor.src: W: spelling-error %description -l en_US cuesheets -> cue sheets, cue-sheets, dustsheets No spelling error! 2 packages and 1 specfiles checked; 6 errors, 12 warnings. Could you please help me with the errors? I have no idea what I should do to set the correct permission?! Thanks and greetings Sven SPEC: https://sourceforge.net/p/audiocuesheet/code/158/tree/trunk/RPM%20Build/AudioCuesheetEditor.spec Sorry updated spec wasn't uploaded yet. Please be so smart to ignore obvious false positives in those spelling-errors rpmlints. Those are quite normal for many packages, where the spell-checker doesn't recognize technical terms or suggests hyphenated compounds ("cue-sheet") instead of closed compounds ("cuesheet").
It makes no sense to clutter up the review ticket with repeatedly referring to the same rpmlint warning. They are just Warnings not errors.
[...]
About the other warnings and errors, prefer "rpmlint -i …" because it will print more verbose/helpful explanations.
I may comment on some of them but would need a buildable src.rpm first.
[...]
> AudioCuesheetEditor.x86_64: W: spurious-executable-perm /usr/share
> /doc/AudioCuesheetEditor-0.2.1/LICENCE_EN.TXT
>
> What about that error? I removed the executable bit inside the build stage.
Verify it by listing the package contents. Use "rpm" or "rpmls".
SPEC: http://sourceforge.net/p/audiocuesheet/code/161/tree/trunk/RPM%20Build/SPECS/AudioCuesheetEditor.spec RPM: http://sourceforge.net/p/audiocuesheet/code/162/tree/trunk/RPM%20Build/RPMS/x86_64/AudioCuesheetEditor-0.2.1-1.fc17.x86_64.rpm SRPM: http://sourceforge.net/p/audiocuesheet/code/161/tree/trunk/RPM%20Build/SRPMS/AudioCuesheetEditor-0.2.1-1.fc17.src.rpm rpmlint output (only errors included): [makerpm@Sven SPECS]$ rpmlint AudioCuesheetEditor.spec ../RPMS/x86_64/AudioCuesheetEditor-0.2.1-1.fc17.x86_64.rpm ../SRPMS/AudioCuesheetEditor-0.2.1-1.fc17.src.rpm AudioCuesheetEditor.x86_64: E: no-binary There are binaries called "AudioCuesheetEditor.exe" that need to be run with mono. 2 packages and 1 specfiles checked; 1 errors, 12 warnings. So, now the only error is not an error. I have done some testing on the package and on the vm everything works perfect. How do we now go on? Greetings Sven Okay, a src.rpm that can be built. Let's try to squash some of the issues: > %{_libdir}/%{name}/* * Are you aware of the Mono Packaging Guidelines? https://fedoraproject.org/wiki/Packaging:Guidelines -> https://fedoraproject.org/wiki/Packaging:Mono > BuildRequires: gtk-sharp2,mono-core,gtk-sharp2-devel,mono-devel A bit too many here. Typically, the -devel packages depend on their base packages already: gtk2-sharp2-devel -> gtk2-sharp mono-devel -> mono-core > Requires: gtk-sharp2,mono-core This is still an issue (bug 880763 comment 7). There are several automatic dependencies for Mono. Check out: rpm -qR AudioCuesheetEditor|grep ^mono https://fedoraproject.org/wiki/Packaging:Guidelines#Explicit_Requires * rpmlint. You don't need to run it for the spec file when you run it for the src.rpm, which contains the spec file. There is also this warning: AudioCuesheetEditor.src: W: strange-permission AudioCuesheetEditor.spec 0777L $ rpmls -p AudioCuesheetEditor-0.2.1-1.fc17.src.rpm -rw-rw-r-- AudioCuesheetEditor-src-v0.2.1.tar.gz -rwxrwxrwx AudioCuesheetEditor.spec > %description You've changed it to a much shorter one compared with 0.2.0, why not mention that it features a graphical user-interface (GUI)? When users search for a graphical cuesheet editor, that could be helpful. > %install > cp -R %{_builddir}/%{name}-%{version}/bin/Release/resources %{buildroot}%{_libdir}/%{name}/resources > %build > chmod a-x %{_builddir}/%{name}-%{version}/*.TXT > chmod a-x %{_builddir}/%{name}-%{version}/bin/Release/resources/*.xml At the beginning of each section, such as %build or %install, you are inside the right build directory. The directory you've %setup in %prep. So, explicitly referring to paths in %_builddir is not necessary in the whole spec file: chmod a-x *.TXT bin/Release/resources/*.xml Further, many more files inside the RPM package executable. For example, the icons and the EXE (the .exe doesn't need to be executable, does it?). Basically, you could chmod -x many more files at the end of %prep already. > echo '[Desktop Entry]' >> %{buildroot}%{_datadir}/applications/%{name}.desktop > echo 'Type=Application' >> %{buildroot}%{_datadir}/applications/%{name}.desktop > echo 'Exec=AudioCuesheetEditor' >> %{buildroot}%{_datadir}/applications/%{name}.desktop > ... Much more readable and much less effort to type it or change it: cat > %{buildroot}%{_datadir}/applications/%{name}.desktop <<EOF [Desktop Entry] Type=Application Exec=AudioCuesheetEditor ... EOF > desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{buildroot}%{_datadir}/applications/%{name}.desktop Two guidelines are relevant here: https://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage https://fedoraproject.org/wiki/Packaging:Guidelines#Using_.25.7Bbuildroot.7D_and_.25.7Boptflags.7D_vs_.24RPM_BUILD_ROOT_and_.24RPM_OPT_FLAGS (In reply to comment #19) Ok, I have been able to do some more optimization as you offered. Thank you. Only 2 more thing are open: > > %{_libdir}/%{name}/* > > * Are you aware of the Mono Packaging Guidelines? > > https://fedoraproject.org/wiki/Packaging:Guidelines > -> https://fedoraproject.org/wiki/Packaging:Mono What exactly do you mean? AudioCuesheetEditor binaries and stuff will be stored under %{_libdir}/%{name}/*, so why not use wildcards? Or what is the major problem here? > > There is also this warning: > > AudioCuesheetEditor.src: W: strange-permission AudioCuesheetEditor.spec > 0777L > > $ rpmls -p AudioCuesheetEditor-0.2.1-1.fc17.src.rpm > -rw-rw-r-- AudioCuesheetEditor-src-v0.2.1.tar.gz > -rwxrwxrwx AudioCuesheetEditor.spec Sorry, that was because of my build. I build under a different user, will be removed, if the package can go on ;). Thanks for helping me. Greetings Sven (In reply to comment #20) > (In reply to comment #19) > Ok, I have been able to do some more optimization as you offered. Thank you. > Only 2 more thing are open: > > > > > %{_libdir}/%{name}/* > > > > * Are you aware of the Mono Packaging Guidelines? > > > > https://fedoraproject.org/wiki/Packaging:Guidelines > > -> https://fedoraproject.org/wiki/Packaging:Mono > > What exactly do you mean? AudioCuesheetEditor binaries and stuff will be > stored under %{_libdir}/%{name}/*, so why not use wildcards? Or what is the > major problem here? Anyone any idea, what is meant here? I would like to get this package started ;). SPEC: http://sourceforge.net/p/audiocuesheet/code/179/tree/trunk/RPM%20Build/SPECS/AudioCuesheetEditor.spec RPM: http://sourceforge.net/p/audiocuesheet/code/179/tree/trunk/RPM%20Build/RPMS/x86_64/AudioCuesheetEditor-0.2.1-1.fc17.x86_64.rpm SRPM: http://sourceforge.net/p/audiocuesheet/code/179/tree/trunk/RPM%20Build/SRPMS/AudioCuesheetEditor-0.2.1-1.fc17.src.rpm rpmlint output (only new errors mentioned) : [makerpm@Sven SPECS]$ rpmlint AudioCuesheetEditor.spec ../RPMS/x86_64/AudioCuesheetEditor-0.2.1-1.fc17.x86_64.rpm ../SRPMS/AudioCuesheetEditor-0.2.1-1.fc17.src.rpm AudioCuesheetEditor.spec:25: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name} Needs to be done, because mono should not be packaged to _libdir. How do we now go on? Hello? Any Help would be good?! No one alive? Hello? I would like to package this package for fedora?! Version 0.3.0 is almost done, seems like developing works faster than packaging for fedora. SPEC: https://sourceforge.net/p/audiocuesheet/code/255/tree/trunk/RPM%20Build/SPECS/AudioCuesheetEditor.spec RPM: https://sourceforge.net/p/audiocuesheet/code/255/tree/trunk/RPM%20Build/RPMS/x86_64/AudioCuesheetEditor-0.3.0-1.fc17.x86_64.rpm SRPM: https://sourceforge.net/p/audiocuesheet/code/255/tree/trunk/RPM%20Build/SRPMS/AudioCuesheetEditor-0.3.0-1.fc17.src.rpm rpmlint output (only errors mentioned): AudioCuesheetEditor.spec:25: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name} Needed by mono guidelines AudioCuesheetEditor.spec:28: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/resources Needed by mono guidelines AudioCuesheetEditor.spec:29: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/%{name}.exe Needed by mono guidelines AudioCuesheetEditor.spec:46: E: hardcoded-library-path in /usr/lib/%{name}/* Needed by mono guidelines AudioCuesheetEditor.x86_64: E: no-binary Binary is included! AudioCuesheetEditor.src:25: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name} Needed by mono guidelines AudioCuesheetEditor.src:28: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/resources Needed by mono guidelines AudioCuesheetEditor.src:29: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/%{name}.exe Needed by mono guidelines AudioCuesheetEditor.src:46: E: hardcoded-library-path in /usr/lib/%{name}/* Needed by mono guidelines 2 packages and 1 specfiles checked; 9 errors, 12 warnings. This is version 0.3.0. I really would thank anyone for getting this inside fedora ;). SPEC: http://sourceforge.net/p/audiocuesheet/code/324/tree//trunk/RPM%20Build/SPECS/AudioCuesheetEditor.spec RPM: http://sourceforge.net/p/audiocuesheet/code/324/tree//trunk/RPM%20Build/RPMS/x86_64/AudioCuesheetEditor-1.0.3-1.fc17.x86_64.rpm SRPM: http://sourceforge.net/p/audiocuesheet/code/324/tree//trunk/RPM%20Build/SRPMS/AudioCuesheetEditor-1.0.3-1.fc17.src.rpm rpmlint output (only errors mentioned): AudioCuesheetEditor.spec:25: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name} Needed by mono guidelines AudioCuesheetEditor.spec:28: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/resources Needed by mono guidelines AudioCuesheetEditor.spec:29: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/%{name}.exe Needed by mono guidelines AudioCuesheetEditor.spec:46: E: hardcoded-library-path in /usr/lib/%{name}/* Needed by mono guidelines AudioCuesheetEditor.x86_64: E: no-binary Binary is included! This is version 1.0.3. I really would thank anyone for getting this inside fedora ;). You still need to find a sponsor first, this can help get this software into Fedora quickly. Thanks for tagging this bug. How do I get sponsored? Still couldn't find someone?! (In reply to Sven Baus from comment #30) > Thanks for tagging this bug. How do I get sponsored? Still couldn't find > someone?! https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group I'll take this. ;) INFO: Downloading .spec and .srpm files error: line 1: Unknown tag: <!DOCTYPE html> ERROR: "Can't parse specfile: can't parse specfile\n" (logs in /home/besser82/.cache/fedora-review.log) ---> Please upload your recent spec and srpm to some place you can directly link from. To save you some difficulties, I just gave you permissions to access some webspace (~ 2GB) on `fedorapeople.org`. You just need to upload a RSA-key on the FAS [1] and start uploading your files using e.g. scp or filezilla (in SFTP-mode). In order to make your uploads available for public access, you'll need to create a `public_html`-dir inside your home on fp.org and put the files there. When your done with that please provide the links inside a new comment inside this bug. [1] https://admin.fedoraproject.org/accounts/ My point: 1. From your desktop entry I can see icon is located at: Icon=/usr/lib/%{name}/resources/icons/application-x-cue-128.png In common we put icons under /usr/share/pixmaps. I also think that all data files should be installed to %{_datadir}/%{name} but not /usr/lib/%{name} 2. Mix using %{buildroot} and ${RPM_BUILD_ROOT}, you should only use one of them. ===== Review report for AudioCuesheetEditor-1.0.3-1 ===== This review report has been made from manually downloaded spec / srpm as announced in comment #28. Package has severe issues. :( Package Review ============== Legend: [x] = Pass [!] = Fail [-] = Not applicable [?] = Not evaluated Issues ====== - specfile-error warning: bogus date in %changelog: Tue Jun 16 2013 Sven Baus <s.baus86> 1.0.3-1 Tue Jun 09 2013 Sven Baus <s.baus86> 1.0.3-1 Sun Apr 04 2013 Sven Baus <s.baus86> 0.3.0-1 ---> please fix those bogus-dates to existing ones, like either changing the day matching the date or vice-versa. - wrong-file-end-of-line-encoding: /usr/share/doc/AudioCuesheetEditor/LICENCE.TXT /usr/share/doc/AudioCuesheetEditor/KNOWN_ISSUES.TXT /usr/share/doc/AudioCuesheetEditor/CHANGELOG.TXT /usr/share/doc/AudioCuesheetEditor/README.TXT ---> please fix this as explained on: https://fedoraproject.org/wiki/Common_Rpmlint_issues#wrong-file-end-of-line-encoding I'd recommend using this script during %prep, which preserves the original file's timestamp, too: for _file in '*.TXT' do sed -i.orig -e 's!\r$!!g' ${_file} && \ touch -r ${_file}.orig ${_file} && \ rm -rf ${_file}.orig done ===== MUST items ===== Generic: [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. Note: Checking patched sources after %prep for licenses. Licenses found: "*No copyright* GPL (v3 or later)", "Unknown or generated". 5 files have unknown license. Detailed output of licensecheck in /home/besser82/shared/fedora/review/review- AudioCuesheetEditor/licensecheck.txt ---> License-tag is fine. :) [!]: Package requires other packages for directories it uses. Note: No known owner of /usr/lib/AudioCuesheetEditor ---> dir is created by the package itself, but not owned as explained below. [!]: Package must own all directories that it creates. Note: Directories without known owners: /usr/lib/AudioCuesheetEditor ---> remove the '/*' from `/usr/lib/%{name}/*` in %files. This will make the rpm own `/usr/lib/%{name}` with all it's contents. [!]: %build honors applicable compiler flags or justifies otherwise. ---> compiler-flags don't get exported properly. Add `%configure ||:` at the very beginning of %build. [x]: Package contains no bundled libraries without FPC exception. [!]: Changelog in prescribed format. ---> bogus-dates are present. as explained above. [x]: Sources contain only permissible code or content. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names). ---> hardcoding `/usr/lib/` is intentional on Mono / C# based packages, as explained by the Mono-guidelines: https://fedoraproject.org/wiki/Packaging:Mono#File_Locations [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [!]: Useful -debuginfo package or justification otherwise. ---> debuginfo-pkg is empty, because you strip the exec-perms from the build binary. make sure the binary keeps it's exec-perms, please, so rpmbuild's debuginfo automagic will properly find and extract all debugging symbols from build. [x]: Package is not known to require an ExcludeArch tag. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 51200 bytes in 4 files. [!]: Package complies to the Packaging Guidelines ---> severe issues are present. [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [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]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Each %files section contains %defattr if rpm < 4.4 [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Package contains desktop file if it is a GUI application. [x]: Package installs a %{name}.desktop using desktop-file-install or desktop- file-validate if there is such a file. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package do not use a name that already exist [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local ===== SHOULD items ===== Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [!]: Final provides and requires are sane (see attachments). ---> explicit `Requires: gtk-sharp2,mono-core` is not need at all. those dependencies are picked up by AutoRequires. [x]: Package functions as described. [x]: Latest version is packaged. [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]: Package should compile and build into binary rpms on all supported architectures. [-]: %check is present and all tests pass. ---> no testsuite present. [!]: Packages should try to preserve timestamps of original installed files. ---> timestamps on resources/* are not preserved. I'd recommend using `cp -a` instead of `cp -R` [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: Dist tag is present (not strictly required in GL). [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Fully versioned dependency in subpackages if applicable. [x]: SourceX tarball generation or download is documented. [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: AudioCuesheetEditor-1.0.3-1.fc21.x86_64.rpm AudioCuesheetEditor-1.0.3-1.fc21.src.rpm AudioCuesheetEditor.x86_64: W: spelling-error Summary(en_US) cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.x86_64: W: spelling-error %description -l en_US cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.x86_64: W: spelling-error %description -l en_US gui -> GUI, goo, gun AudioCuesheetEditor.x86_64: E: no-binary AudioCuesheetEditor.x86_64: W: only-non-binary-in-usr-lib AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/LICENCE.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/KNOWN_ISSUES.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/CHANGELOG.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/README.TXT AudioCuesheetEditor.x86_64: W: no-manual-page-for-binary AudioCuesheetEditor AudioCuesheetEditor.src: W: spelling-error Summary(en_US) cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.src: W: spelling-error %description -l en_US cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.src: W: spelling-error %description -l en_US gui -> GUI, goo, gun AudioCuesheetEditor.src:25: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name} AudioCuesheetEditor.src:28: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/resources AudioCuesheetEditor.src:29: E: hardcoded-library-path in %{buildroot}/usr/lib/%{name}/%{name}.exe AudioCuesheetEditor.src:46: E: hardcoded-library-path in /usr/lib/%{name}/* AudioCuesheetEditor.src: E: specfile-error warning: bogus date in %changelog: Tue Jun 16 2013 Sven Baus <s.baus86> 1.0.3-1 AudioCuesheetEditor.src: E: specfile-error warning: bogus date in %changelog: Tue Jun 09 2013 Sven Baus <s.baus86> 1.0.3-1 AudioCuesheetEditor.src: E: specfile-error warning: bogus date in %changelog: Sun Apr 04 2013 Sven Baus <s.baus86> 0.3.0-1 2 packages and 0 specfiles checked; 8 errors, 12 warnings. ---> 'hardcoded-library-path' is intentional on Mono / C# based packages as explained by Mono-guidelines: https://fedoraproject.org/wiki/Packaging:Mono#File_Locations 'wrong-file-end-of-line-encoding' and 'specfile-error warning: bogus date' is as explained within `Issues`. Please fix spelling: cuesheet -> cue-sheet / gui -> GUI The rest of those messages can be safely ignored. Rpmlint (installed packages) ---------------------------- # rpmlint AudioCuesheetEditor AudioCuesheetEditor.x86_64: W: spelling-error Summary(en_US) cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.x86_64: W: spelling-error %description -l en_US cuesheet -> cue sheet, cue-sheet, dustsheet AudioCuesheetEditor.x86_64: W: spelling-error %description -l en_US gui -> GUI, goo, gun AudioCuesheetEditor.x86_64: E: no-binary AudioCuesheetEditor.x86_64: W: only-non-binary-in-usr-lib AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/LICENCE.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/KNOWN_ISSUES.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/CHANGELOG.TXT AudioCuesheetEditor.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/AudioCuesheetEditor/README.TXT AudioCuesheetEditor.x86_64: W: no-manual-page-for-binary AudioCuesheetEditor 1 packages and 0 specfiles checked; 1 errors, 9 warnings. # echo 'rpmlint-done:' ---> As written above. Requires -------- AudioCuesheetEditor (rpmlib, GLIBC filtered): /bin/sh gtk-sharp2 mono(System) mono(System.Xml) mono(gdk-sharp) mono(glib-sharp) mono(gtk-sharp) mono(mscorlib) mono-core Provides -------- AudioCuesheetEditor: AudioCuesheetEditor AudioCuesheetEditor(x86-64) application() application(AudioCuesheetEditor.desktop) mono(AudioCuesheetEditor) Source checksums ---------------- http://downloads.sourceforge.net/audiocuesheet/AudioCuesheetEditor-src-v1.0.3.tar.gz : CHECKSUM(SHA256) this package : cc9d5a221e583fecea43f327294f02f77a9764dd6bd7955253f0a8baf28028e3 CHECKSUM(SHA256) upstream package : cc9d5a221e583fecea43f327294f02f77a9764dd6bd7955253f0a8baf28028e3 Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30 Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -n AudioCuesheetEditor Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api Disabled plugins: Java, C/C++, Python, SugarActivity, Perl, R, PHP, Ruby Disabled flags: EPEL5, EXARCH, DISTTAG ===== Additional comments ===== - BuildRequires: gtk-sharp2-devel,mono-devel,desktop-file-utils ---> It usually improves the readability of a spec-file to have the BRs split into one per line and ordered by alphabet. BuildRequires: desktop-file-utils BuildRequires: gtk-sharp2-devel BuildRequires: mono-devel - Summary is somehow useless. ---> I'd change it to: `Write audio cuesheets fast and efficient` - LC_CTYPE=de_DE.UTF-8 xbuild ---> Builds usually shouldn't use any locale different from "C". If you really need some UTF-8 encoding during build, you should use `us_US.UTF-8` instead. - The description of the package is is somehow a bit to unexplainive. ---> Some better description would be: Annoyed of writing your audio cuesheets via text editor? Here comes the solution! Audio Cuesheet Editor helps you editing your audio cuesheet file. With Audio Cuesheet Editor you can import textfiles, edit the imported data and afterwards export to a working audio cuesheet. Features * Import Textfiles (Scheme can be changed in Options) * Import existing cuesheets * Edit Imported Data * Edit Cuesheet in GUI * Several logical test (starttime < endtime,etc) with warning for users * Export as Cuesheet * Export profiles can be configured (*.csv,*.txt, etc.) * Several Options * Automatic Update recognition * Drag & Drop That would -- from my pov -- give a lot more information and idea about what you can do with the app. - chmod a-x *.TXT bin/Release/resources/*.xml ... in %build ---> I'd move that to %prep and use a modified version: find . -depth -type f -print0 | xargs -0 chmod 0644 - You can drop the use of `%{_builddir}/%{name}-src-v%{version}/` in %install, because rpmbuild always makes sure you are in toplevel of the sources. ===== Solution ===== NOT APPROVED -- Please fix the present issues and think about my additional comments. I'll run another review on the updated packages. Thanks for the first report. I'll take my time over the weekend to do some stuff. Currently the next release is in testing, so what would you do? Wait for it, or package the current stable release?! I'd usually package the lastest stable. If there's a new release then, I'd isn't that hard to upgrade the package again... (In reply to Björn "besser82" Esser from comment #35) > - LC_CTYPE=de_DE.UTF-8 xbuild > > ---> Builds usually shouldn't use any locale different from "C". > If you really need some UTF-8 encoding during build, you should > use `us_US.UTF-8` instead. I was trying to build it with the locale us-US.UTF-8, but this fails. Also leaving the locale setting out, fails the build. You have any idea, why? Can you provide me links to scratch-builds on koji, please? To do such a scratch-build you can use `koji build --scratch --nowait rawhide $srpm`. Then you can paste the links inside here. You will need to have completed the cert-setup using `fedora-packager-setup` before you can use the koji-cli. btw. looking at comment 9: mschwendt said he got the build working using `export LANG="us_US.UTF-8"` before invoking the compiler-stage. Might be worth a try... (In reply to Björn "besser82" Esser from comment #40) > btw. looking at comment 9: mschwendt said he got the build working using > `export LANG="us_US.UTF-8"` before invoking the compiler-stage. Might be > worth a try... Thanks, that helped ;). SPEC: http://sbbaus.fedorapeople.org/AudioCuesheetEditor/SPECS/AudioCuesheetEditor.spec RPM: http://sbbaus.fedorapeople.org/AudioCuesheetEditor/RPMS/x86_64/AudioCuesheetEditor-1.0.3-1.fc19.x86_64.rpm SRPM: http://sbbaus.fedorapeople.org/AudioCuesheetEditor/SRPMS/AudioCuesheetEditor-1.0.3-1.fc19.src.rpm This is an automatic check from review-stats script. This review request ticket hasn't been updated for some time, but it seems that the review is still being working out by you. If this is right, please respond to this comment clearing the NEEDINFO flag and try to reach out the submitter to proceed with the review. If you're not interested in reviewing this ticket anymore, please clear the fedora-review flag and reset the assignee, so that a new reviewer can take this ticket. Without any reply, this request will shortly be resetted. This is an automatic action taken by review-stats script. The ticket reviewer failed to clear the NEEDINFO flag in a month. As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews we reset the status and the assignee of this ticket. This review request is very old. Do you still intend to complete it? If so, I can review. If not, please either close the bug, or do nothing, in which case automation will close it in one month. This is an automatic action taken by review-stats script. The ticket submitter failed to clear the NEEDINFO flag in a month. As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews we consider this ticket as DEADREVIEW and proceed to close it. |