Spec URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm.spec SRPM URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm-1.04-1.src.rpm Description: yadm is a dotfile management tool with 3 main features: Manages files across systems using a single Git repository. Provides a way to use alternate files on a specific OS or host. Supplies a method of encrypting confidential data so it can safely be stored in your repository. Fedora Account System Username: thelocehiliosan
Hello, Although I've constructed many RPMs professionally this is my first fedora package, and I require sponsorship. I am the upstream author/maintainer of this software, yadm. Koji build example: http://koji.fedoraproject.org/koji/taskinfo?taskID=13820734 rpmlint (I do not agree with the spelling warning): yadm.src: W: spelling-error %description -l en_US dotfile -> dot file, dot-file, docile 1 packages and 0 specfiles checked; 0 errors, 1 warnings.
Hello, This is an INFORMAL review as I am NOT an official fedora packager. * The licence is included in the source tarball but not in the files section of the spec file. * It's not necessary to use %defattr in the files section anymore * If the source code of the package provides a test suite, it should be executed in the %check section, whenever it is practical to do so. * Do you need to list bats as a build dependency for the testsuite? * Do you need to list gnupg2 as a dependency? * You should add the dist tag to your release version i.e. 1%{?dist} * In the changelog you MAY want to indicate that this is the initial fedora packaged version * Is Yadm only for managing dot files or is it for any type of file? * In your man page the description is.. Yadm is a tool for managing a collection of files across multiple computers using a shared Git repository. In addition, yadm provides a feature to select alternate versions of files based on the operation system or host name. Lastly, yadm supplies the ability to manage a subset of secure files, which are encrypted before they are included in the repository. I think this is better than the description listed in the spec file. Try to make it clear to the user why they would *need* this package i.e. what problem can it solve. * The Group tag is deprecated. RPM since Fedora 18 does not require the presence of the Group tag in the spec file. If the tag is defined, it will be ignored. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - Dist tag is present. ===== 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. [!]: 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 %license. [X]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "GPL (v3)", "Unknown or generated". 6 files have unknown license. Detailed output of licensecheck in /home/worralph/fedora- review/yadm/licensecheck.txt [-]: Package contains no bundled libraries without FPC exception. [X]: Changelog in prescribed format. [X]: Sources contain only permissible code or content. [-]: Each %files section contains %defattr if rpm < 4.4 Note: %defattr present but not needed [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [-]: Package uses nothing in %doc for runtime. [X]: Package consistently uses macros (instead of hard-coded directory names). [X]: Package is named according to the Package Naming Guidelines. [ ]: 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. [ ]: Requires correct, justified where necessary. [X]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [X]: Package is not known to require an ExcludeArch tag. [ ]: Package complies to the Packaging Guidelines [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]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [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]: Macros in Summary, %description expandable at SRPM build time. [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 does not use a name that already exists. [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]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [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). [ ]: 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. [ ]: Packages should try to preserve timestamps of original installed files. [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]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [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). Rpmlint ------- Checking: yadm-1.04-1.noarch.rpm yadm-1.04-1.src.rpm yadm.noarch: W: spelling-error %description -l en_US dotfile -> dot file, dot-file, docile yadm.noarch: W: manual-page-warning /usr/share/man/man1/yadm.1.gz 1: warning: macro `"' not defined yadm.src: W: spelling-error %description -l en_US dotfile -> dot file, dot-file, docile 2 packages and 0 specfiles checked; 0 errors, 3 warnings. Rpmlint (installed packages) ---------------------------- yadm.noarch: W: spelling-error %description -l en_US dotfile -> dot file, dot-file, docile yadm.noarch: W: manual-page-warning /usr/share/man/man1/yadm.1.gz 1: warning: macro `"' not defined 1 packages and 0 specfiles checked; 0 errors, 2 warnings. Requires -------- yadm (rpmlib, GLIBC filtered): /bin/bash bash git Provides -------- yadm: yadm Source checksums ---------------- https://github.com/TheLocehiliosan/yadm/archive/1.04.tar.gz#/yadm-1.04.tar.gz : CHECKSUM(SHA256) this package : a73aa51245866ce67aeb4322a62995ebbb13f29dc35508f486819dceb534968a CHECKSUM(SHA256) upstream package : a73aa51245866ce67aeb4322a62995ebbb13f29dc35508f486819dceb534968a Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -rn yadm-1.04-1.src.rpm Buildroot used: fedora-22-x86_64 Active plugins: Generic, Shell-api Disabled plugins: Java, C/C++, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6 rpmls ~/rpmbuild/SRPMS/yadm-1.04-1.src.rpm -rw-r--r-- yadm-1.04.tar.gz -rw-r--r-- yadm.spec rpmls ~/rpmbuild/RPMS/noarch/yadm-1.04-1.noarch.rpm -rwxr-xr-x /usr/bin/yadm -rw-r--r-- /usr/share/man/man1/yadm.1.gz
Thanks for the feedback. I've made an effort to resolve all discrepancies noted. Updated Spec URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm.spec Updated SRPM URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm-1.04-2.fc23.src.rpm * License and docs are properly included * `%defattr` has been removed * `%check` has been implemented * `%{?dist}` macro has been added to the `Release` * All new build dependencies have been added * Updated changelog to indicate this as the initial fedora package * Made RPM description and man page description match. * Removed `Group` tag * `gnupg` is *not* currently listed as a dependency. yadm gracefully limits it's functionality if `gnupg` is not installed. It isn't required. Updated Koji build example: http://koji.fedoraproject.org/koji/taskinfo?taskID=14132096 Updated rpmlint: 1 packages and 1 specfiles checked; 0 errors, 0 warnings. Cheers -Tim
Looks better. * You dont need to set permissions on the doc or licence section. * When you make changes add a new entry to you changelog and document what is different about the new version. This helps us understand what has changed. * There is some additional documentation in the source tarball, for example README.md, CONTRIBUTORS file, that you might want to include Can you paste the output of rpmls on your *.rpm files
Thanks for your continued feedback. Updated Spec URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm.spec Updated SRPM URL: https://raw.githubusercontent.com/TheLocehiliosan/yadm-rpm/master/yadm-1.04-3.fc23.src.rpm Changes: - Add missing docs - Fix changelog format - Remove file attribute for docs and license rpmls yadm-1.04-3.fc23.src.rpm: -rw-rw-r-- yadm-1.04.tar.gz -rw-r--r-- yadm.spec rpmls yadm-1.04-3.fc23.noarch.rpm -rwxr-xr-x /usr/bin/yadm drwxr-xr-x /usr/share/doc/yadm -rw-r--r-- /usr/share/doc/yadm/CHANGES -rw-r--r-- /usr/share/doc/yadm/CONTRIBUTORS -rw-r--r-- /usr/share/doc/yadm/README.md drwxr-xr-x /usr/share/licenses/yadm -rw-r--r-- /usr/share/licenses/yadm/LICENSE -rw-r--r-- /usr/share/man/man1/yadm.1.gz Updated Koji build example: http://koji.fedoraproject.org/koji/taskinfo?taskID=14141918 Updated rpmlint: 1 packages and 1 specfiles checked; 0 errors, 0 warnings.
Looks like its almost there and ready for a formal review for inclusion in fedora. I suggest you follow the tips listed on https://fedoraproject.org/wiki/Package_Review_Process to find a sponsor for your package. A good place to start is by asking on IRC #fedora-devel or by posting a message to fedora-devel.
> install -m 755 yadm ${RPM_BUILD_ROOT}%{_bindir} > install -m 644 yadm.1 ${RPM_BUILD_ROOT}%{_mandir}/man1 add "-p" to "install" execution to preserve timestamps. > %attr(755,root,root) %{_bindir}/yadm > %attr(644,root,root) %{_mandir}/man1/* drop %attr from here as you already install file with such attributes
This is an automatic check from review-stats script. This review request ticket hasn't been updated for some time. We're sorry it is taking so long. If you're still interested in packaging this software into Fedora repositories, please respond to this comment clearing the NEEDINFO flag. You may want to update the specfile and the src.rpm to the latest version available and to propose a review swap on Fedora devel mailing list to increase chances to have your package reviewed. If this is your first package and you need a sponsor, you may want to post some informal reviews. Read more at https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group. Without any reply, this request will shortly be considered abandoned and will be closed. Thank you for your patience.
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.