Spec URL: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap.spec SRPM URL: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap-0.10.0-1.fc8.src.rpm Description: LDAP APIs for Ruby
SRPM url is a 404, please check your files (I don't see any SRPMs in that directory).
My bad. The web server was rebuilt over the weekend and the SRPMs weren't restored. They're there now.
Looking through this one now, but I already see one missing item: The Ruby Guidelines (http://fedoraproject.org/wiki/Packaging/Ruby) say: Each Ruby package must indicate the Ruby ABI version it depends on with a line like Requires: ruby(abi) = 1.8 Ruby packages must require ruby at build time with a BuildRequires: ruby, and may indicate the minimal ruby version they need for building.
... and: The Source of the package must be the full URL to the released Gem archive; the version of the package must be the Gem's version. Perhaps you should look through Packaging/Ruby and put up another SRPM? :)
I've redone the spec file and believe it's now comforming to the Fedora guide. I've done this across all three ruby gems I've submitted.
In general, it is good form to bump the release and add a changelog entry when making changes, even during the review process. This way, reviewers can more easily track progress. :) No worries on this one, but you might want to update the other pending packages appropriately with new SRPMs and bugzilla mentions.
I've updated the release for each of them, and added an entry in the change log for each mentioning that they were updated to comply with the packaging guidelines. Do I need to also update the URLs in the review requests as well?
Yes, it is generally accepted that when spec/srpm changes, you should add a bz post of the format: Fixed issue foo, bar, baz. New SRPM: http://foo.bar.com/baz.src.rpm New SPEC: http://foo.bar.com/baz.spec
rpmlint says: rubygem-activeldap.src: W: mixed-use-of-spaces-and-tabs (spaces: line 39, tab: line 7) rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/about 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/process/inspector 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/plugin 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.cgi 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/groupls 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/usermod-binary-add 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/usermod-binary-add-time 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/groupdel 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/process/spawner 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/useradd-binary 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/usermod-lang-add 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/process/reaper 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/usermod 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/ouadd 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/groupmod 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/performance/benchmarker 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/lib/active_ldap.rb 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/console 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/performance/request 0644 rubygem-activeldap.noarch: E: zero-length /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/favicon.ico rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/lpasswd 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/server 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/usermod-binary-del 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/destroy 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/test/run-test.rb 0644 rubygem-activeldap.noarch: E: htaccess-file /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/.htaccess rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/test/run-test.sh 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.fcgi 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/groupadd 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/generate 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.rb 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/userdel 0644 rubygem-activeldap.noarch: E: zero-length /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/stylesheets/welcome.css rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/performance/profiler 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/useradd 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/script/runner 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/userls 0644 Can you take a shot at resolving those errors? Should be as easy as deleting the 0 length files (and the .htaccess file) and running chmod +x on the scripts. I'm less concerned about the spaces vs tabs, but while you're in there...
I've modified the spec to set executable all scripts and to delete the 0-length files.
You can simplify that %define installroot like this: %define installroot %{buildroot}%{geminstdir} Also, please move those macro defines to the top. It helps the spec stay clean for others, who may not be expecting new macro defines in the middle of the spec.
Done. I've updated the spec to move all macros to the top, and simplified the installroot definition.
I've fixed another issue in this RPM where an implied dependency on /usr/bin/ruby1.8 was created by some scripts. The spec file now replaces the shebang with /usr/bin/ruby as the dependency. This is in rev. 6 of the SRPM.
(In reply to comment #13) > This is in rev. 6 of the SRPM. It is very useful to post a new URL for the updated SRPM. :)
Sorry. The URLs are: Spec: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap.spec SRPM: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap-0.10.0-6.fc8.src.rpm
rpmlint is down to: rubygem-activeldap.src: W: mixed-use-of-spaces-and-tabs (spaces: line 43, tab: line 10) rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.cgi 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/test/run-test.sh 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.fcgi 0644 rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/public/dispatch.rb 0644 Can you resolve those?
Updated to take care of everything except the space/tab issue (that I'm passing upstream to fix, along with the scripting issues): Spec: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap.spec SRPM: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap-0.10.0-7.fc8.src.rpm
You missed one: rubygem-activeldap.noarch: E: non-executable-script /usr/lib/ruby/gems/1.8/gems/activeldap-0.10.0/examples/al-admin/test/run-test.sh 0644
Fixed the last script. Ran rpmlint to make sure no other scripts were missed. Spec: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap.spec SRPM: http://mcpierce.dyndns.org/~mcpierce/rubygem-activeldap-0.10.0-8.fc8.src.rpm
Good: - rpmlint checks return: rubygem-activeldap.src: W: mixed-use-of-spaces-and-tabs (spaces: line 42, tab: line 10) Safe to ignore, since you're working with upstream to fix the generation script. - package meets naming guidelines - package meets packaging guidelines (general and ruby) - license (GPLv2+) OK, text in %doc, matches source - spec file legible, in am. english - source matches upstream (7aeaf58a819357bdf2044fd664db420d40aa15dd) - package builds on devel (x86_64) - no missing BR - no unnecessary BR - no locales - not relocatable - owns all directories that it creates - no duplicate files - permissions ok - %clean ok - macro use consistent - code, not content - no need for -docs - nothing in %doc affects runtime - no need for .desktop file APPROVED.
New Package CVS Request ======================= Package Name: rubygem-activeldap Short Description: LDAP APIs for Ruby Owners: mcpierce Branches: F-8 F-9 InitialCC: none Cvsextras Commits: Yes
cvs done.
This now builds fine in koji.