Spec URL: https://copr-be.cloud.fedoraproject.org/results/osoukup/ctrlp.vim/fedora-rawhide-x86_64/00906845-vim-ctrlp/vim-ctrlp.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/osoukup/ctrlp.vim/fedora-rawhide-x86_64/00906845-vim-ctrlp/vim-ctrlp-1.8.0-1.fc31.src.rpm Description: Hi anyone! I am enthusiastic VIM user and I really like vim.ctrlp plugin which adds awesome easy-to-use but powerful search capabilities. You can find upstream repo at https://github.com/ctrlpvim/ctrlp.vim After some time of using it I think that it might be nice to have it as official Fedora package the same way as some other great VIM plugins are. I prepared everything I found out is necessary and now would be very glad for some review. I am new to Fedora packaging so I appreciate any advice or help. For the sake of completeness here are the links to COPR project and KOJI scratch build https://copr.fedorainfracloud.org/coprs/osoukup/ctrlp.vim/ https://koji.fedoraproject.org/koji/taskinfo?taskID=34834617 For the testing purposes I have created personal public repo where anyone can find scripts to easily test the RPM build and install in Vagrant with libvirt VM https://github.com/osoukup/ctrlp.vim Fedora Account System Username: osoukup
Adding also rpmlint reports: --------------------- $ rpmlint -i SRPMS/vim-ctrlp-1.8.0-1.fc30.src.rpm vim-ctrlp.src: W: spelling-error Summary(en_US) mru -> mu, rum The value of this tag appears to be misspelled. Please double-check. vim-ctrlp.src: W: spelling-error %description -l en_US mru -> mu, rum The value of this tag appears to be misspelled. Please double-check. vim-ctrlp.src: W: spelling-error %description -l en_US gVim -> g Vim, grim, vim The value of this tag appears to be misspelled. Please double-check. vim-ctrlp.src: W: invalid-url Source0: vim-ctrlp-1.8.0.tar.gz The value should be a valid, public HTTP, HTTPS, or FTP URL. 1 packages and 0 specfiles checked; 0 errors, 4 warnings. --------------------- $ rpmlint -i RPMS/noarch/vim-ctrlp-1.8.0-1.fc30.noarch.rpm vim-ctrlp.noarch: W: spelling-error Summary(en_US) mru -> mu, rum The value of this tag appears to be misspelled. Please double-check. vim-ctrlp.noarch: W: spelling-error %description -l en_US mru -> mu, rum The value of this tag appears to be misspelled. Please double-check. vim-ctrlp.noarch: W: spelling-error %description -l en_US gVim -> g Vim, grim, vim The value of this tag appears to be misspelled. Please double-check. 1 packages and 0 specfiles checked; 0 errors, 3 warnings. --------------------- That mru spelling error in the description should IMO refer to most recently used which is correct abbreviation. The description was however taken unchanged from the upstream: http://ctrlpvim.github.io/ctrlp.vim/
- Source0 must be a url pointing to the archive Source0: https://github.com/ctrlpvim/ctrlp.vim/archive/%{version}/%{name}-%{version}.tar.gz - Version is 1.80, not 1.8.0 - Appdata dir is the obsolete location, Appdata files now go in %{_metainfodir} - Add vim-filesystem as a RR too Requires: vim-filesystem
Thank you very much for the review! (In reply to Robert-André Mauchin from comment #2) > - Source0 must be a url pointing to the archive > > Source0: > https://github.com/ctrlpvim/ctrlp.vim/archive/%{version}/%{name}-%{version}. > tar.gz I updated Source0 and also Source1 (hope I am not too eager) to URLs instead of file system paths. > - Version is 1.80, not 1.8.0 I corrected the version number. I have to admit that I was confused by the upstream since they use to use X.Y.Z versions but switched to X.YZ for some reason. You are right that I should respect their version notation. > - Appdata dir is the obsolete location, Appdata files now go in > %{_metainfodir} Directory for appdata files was also corrected according to your suggestion. > - Add vim-filesystem as a RR too > > Requires: vim-filesystem The requirements were updated also. The complete list of changes is at https://copr-dist-git.fedorainfracloud.org/cgit/osoukup/ctrlp.vim/vim-ctrlp.git/diff/vim-ctrlp.spec Additionally follows the links to updated COPR and KOJI builds https://copr.fedorainfracloud.org/coprs/osoukup/ctrlp.vim/build/929280/ https://koji.fedoraproject.org/koji/taskinfo?taskID=35450870
Additionally the following warning is no more produced by rpmlint: vim-ctrlp.src: W: invalid-url Source0: vim-ctrlp-1.8.0.tar.gz The value should be a valid, public HTTP, HTTPS, or FTP URL.
- Why -c? This break the build %setup -cq Use: %autosetup -n ctrlp.vim-%{version} - There's no LICENSE file in the archive. + cp -pr LICENSE /builddir/build/BUILDROOT/vim-ctrlp-1.80-1.fc31.x86_64/usr/share/licenses/vim-ctrlp BUILDSTDERR: cp: cannot stat 'LICENSE': No such file or directory + : + exit 0 BUILDSTDERR: error: File not found: /builddir/build/BUILDROOT/vim-ctrlp-1.80-1.fc31.x86_64/usr/share/licenses/vim-ctrlp/LICENSE Add it as another source from GH or consider packaging a snapshot version of the master branch. %global commit 2e773fd8c7548526853fff6ee2e642eafbbe3d04 %global shortcommit %(c=%%{commit}; echo ${c:0:7}) %global snapshotdate 20190610 Name: vim-ctrlp Version: 1.80 Release: 1.%{snapshotdate}git%{shortcommit}%{?dist} Summary: Full path fuzzy file, buffer, mru, tag, ... finder for Vim License: Vim URL: https://github.com/ctrlpvim/ctrlp.vim Source0: https://github.com/ctrlpvim/ctrlp.vim/archive/%{commit}/%{name}-%{shortcommit}.tar.gz […] %autosetup -n ctrlp.vim-%{commit} […] * Tue Feb 26 2019 Ondřej Soukup <osoukup> - 1.80-1.20190610git2e773fd
Hey Ondrej, I sponsored you to the packagers group. Let me know if you need any assistance with review made by eclipseo.
(In reply to Igor Gnatenko from comment #6) > Hey Ondrej, > > I sponsored you to the packagers group. > > Let me know if you need any assistance with review made by eclipseo. Thank you very much Igor! I am also thankful to Robert-André for his reviews. After his last comment I tried to incorporate his suggestions in various ways but I am still just struggling with it without any success. I at least understood some of my previous mistakes like building from my own modified archive instead of the upstream one. I was first trying to stick with version-directed approach which I was using previously. The farthest I got was to various LICENSE install errors and got stuck with it. I am not sure how to install it. I was not able to find some example or documentation which would work for me. Now I am investigating the second suggested commit-oriented approach. Simple copy-pasting ended up with invalid spec file so now I am learning it and trying to solve what is the correct working way of using it. I am doing this my little packaging adventure in my free time and cannot find more than couple of hours for it every week so I am proceeding quite slowly. Moreover, I feel most of my last tries ended up as a waste of time investigating blind ways.
So as soon as I wrote down all these despair here things finally moved forward! I used commit-based approach as suggested by Robert-André - thank you - which works like a charm. I just had to first find out an unrelated typo of mine which made me think it does not work so straightforward... Here are the changes https://github.com/osoukup/ctrlp.vim/commit/2afc0feca05dbf86d4fc233b34951056b42b1163 and here are the new builds https://copr.fedorainfracloud.org/coprs/osoukup/ctrlp.vim/build/944205/ https://koji.fedoraproject.org/koji/taskinfo?taskID=35793933 Thank you both once again!
LGTM, package approved.
(In reply to Robert-André Mauchin from comment #9) > LGTM, package approved. Thank you for the detailed review and lot of advice!
(fedscm-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/vim-ctrlp
FEDORA-2019-11d543f05f has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-11d543f05f
vim-ctrlp-1.80-1.20190610git2e773fd.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-11d543f05f
vim-ctrlp-1.80-1.20190610git2e773fd.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.