Spec URL: https://copr-be.cloud.fedoraproject.org/results/luya/svgo-inkscape/fedora-rawhide-x86_64/00716947-svgo-inkscape/svgo-inkscape.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/luya/svgo-inkscape/fedora-rawhide-x86_64/00716947-svgo-inkscape/svgo-inkscape-0.1.0-1.fc28.src.rpm Description: An extension to save and optimize SVG files with SVGO at Inkscape. Fedora Account System Username: luya
Hello. - Source0 is wrong, it should be: Source0: https://github.com/juanfran/svgo-inkscape/archive/v%{version}/%{name}-%{version}.tar.gz - You should ask upstream first to include a license file, not do it yourself. If upstream is unresponsive, then you might include it. « Packagers who choose to do this [include text of the license] should ensure that they have exhausted all attempts to work with upstream to include the license text as part of the source code, or at least, to confirm the full license text explicitly with the upstream, as this minimizes the risk on the packager. Packagers should also take copies of license texts from reliable and canonical sources (such as the Fedora Software Licenses page, the FSF licenses page, or the OSI license list), whenever possible. » https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#License_Text - This does not replace shebangs, this change line encoding of the file! #Replace shebangs line #!/usr/bin/env python sed -i 's/\r//' %{name}-%{version}/%{name}/svgo.inkscape.py Just mark the file as executable and brp-mangle-shebangs will automatically do the rest: chmod 0755 %{name}/svgo.inkscape.py - -c %{name} is not necessary in %autosetup - Then %install should be simplified to: %install install -Dpm 0644 %{name}.inx -t %{buildroot}%{_datadir}/inkscape/extensions/ cp -pr %{name} -t %{buildroot}%{_datadir}/inkscape/extensions/ And %doc in %changelog: %files %license LICENSE.txt %doc README.md - There's a mix of tabs and spaces used for indentation, use one or another not both. - This package won't work as intended: first if you read the Python source you see that it is expecting "node" in a subdirectory: def effect(self): command = "./node/bin/node svgo.js --file=" + self.args[0] This should be patched to depend on the system-wide node ( and you should thus add a Requires for it). - Second svgo.js depends on svgo itself, which is a node module. That's why there is a package.json provided. You should thus run "npm install" in the svgo-inkscape directory to install the required modules.
(In reply to Robert-André Mauchin from comment #1) > Hello. > > - Source0 is wrong, it should be: > > Source0: > https://github.com/juanfran/svgo-inkscape/archive/v%{version}/%{name}- > %{version}.tar.gz Fixed > - You should ask upstream first to include a license file, not do it > yourself. If upstream is unresponsive, then you might include it. Already filed the request: https://github.com/juanfran/svgo-inkscape/issues/6 > - This does not replace shebangs, this change line encoding of the file! > > #Replace shebangs line #!/usr/bin/env python > sed -i 's/\r//' %{name}-%{version}/%{name}/svgo.inkscape.py > > Just mark the file as executable and brp-mangle-shebangs will > automatically do the rest: > > chmod 0755 %{name}/svgo.inkscape.py Fixed > > - -c %{name} is not necessary in %autosetup > > - Then %install should be simplified to: > > %install > install -Dpm 0644 %{name}.inx -t %{buildroot}%{_datadir}/inkscape/extensions/ > cp -pr %{name} -t %{buildroot}%{_datadir}/inkscape/extensions/ > > And %doc in %changelog: > > %files > %license LICENSE.txt > %doc README.md > > - There's a mix of tabs and spaces used for indentation, use one or another > not both. Fixed. > > - This package won't work as intended: first if you read the Python source > you see that it is expecting "node" in a subdirectory: > > def effect(self): > command = "./node/bin/node svgo.js --file=" + self.args[0] > > This should be patched to depend on the system-wide node ( and you should > thus add a Requires for it). BuildRequires: nodejs-packaging seems the suggestion according to the guideline. > > - Second svgo.js depends on svgo itself, which is a node module. That's why > there is a package.json provided. You should thus run "npm install" in the > svgo-inkscape directory to install the required modules. Looking at the nodejs guideline https://fedoraproject.org/wiki/Packaging:Node.js?rd=Node.js/Packagers#Installing_Modules, it looks like using "npm install" is discouraged. Is there a better method instead?
(In reply to Luya Tshimbalanga from comment #2) > > > > - Second svgo.js depends on svgo itself, which is a node module. That's why > > there is a package.json provided. You should thus run "npm install" in the > > svgo-inkscape directory to install the required modules. > > Looking at the nodejs guideline > https://fedoraproject.org/wiki/Packaging:Node.js?rd=Node.js/ > Packagers#Installing_Modules, it looks like using "npm install" is > discouraged. Is there a better method instead? Yes my bad, internet is not available in Koji so this wouldn't work anyway. What you need to do instead is to package the bundled modules: - nodejs-svgo Use npm2rpm as a startup point. Look at other nodejs SPEC files to help you (https://src.fedoraproject.org/group/nodejs-sig). I,ve checked and all the dependencies are already packaged. nodejs-minimist is already packaged too, just add npm(minimist) as a RR.
Sorr for the delay. I realize npm-svgo is already package. What will be the right way to symlink on this package?
- Patch command = "./node/bin/node svgo.js --file=" + self.args[0] to point to /usr/bin/svgo
Here is the updated SPEC: https://copr-be.cloud.fedoraproject.org/results/luya/svgo-inkscape/fedora-rawhide-x86_64/00822442-svgo-inkscape/svgo-inkscape.spec SRPM: https://copr-be.cloud.fedoraproject.org/results/luya/svgo-inkscape/fedora-rawhide-x86_64/00822442-svgo-inkscape/svgo-inkscape-0.1.1-1.fc30.src.rpm Note the depend package node-svgo failed to install due to conflict.
File a bug against https://apps.fedoraproject.org/packages/nodejs-csso/bugs and make it block this one. Try to bother jsmith on IRC or mail him about it. FYI you just need to relax the dep in %prep: %nodejs_fixdep css-tree You could send a PR.
Bug filed.
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.