Spec URL: http://www.nntpgrab.nl/fedora/nntpgrab.spec SRPM URL: http://nntpgrab.nl/fedora/nntpgrab-0.2.1-2.src.rpm Description: NNTPGrab is a usenet download program. This program is developed by me and I would like to propose this package for inclusion in Fedora. This is my first try, so I'm in need for a sponsor. While this project is still in early development it already has a great set of features. It is possible to import NZB files in the program and the program can download the contents mentioned in these NZB files to your local computer using a nice graphical interface. Due to it's architecture, the frontend and backend are completely split from each other. This means that later in the development, new frontends (like a DBUS- or a web-based one) can be created. In the past I've already maintained this package for Fedora users in a seperate yum repository. This is also the reason why there are some Obsoletes/Provides tags in the spec file. When the package is approved for inclusion in Fedora, users of my own yum repository can have a seamless upgrade. I've already run rpmlint on the spec file and all the RPM's and the only issues which remain are : $ rpmlint nntpgrab-0.2.1-2.i386.rpm nntpgrab.i386: W: no-documentation nntpgrab.i386: E: no-binary $ rpmlint nntpgrab-core-0.2.1-2.i386.rpm nntpgrab-core.i386: E: zero-length /usr/share/doc/nntpgrab-core-0.2.1/README $ rpmlint nntpgrab-devel-0.2.1-2.i386.rpm nntpgrab-devel.i386: W: no-documentation $ rpmlint nntpgrab-gui-0.2.1-2.i386.rpm nntpgrab-gui.i386: W: no-documentation $ rpmlint nntpgrab-plugins-0.2.1-2.i386.rpm nntpgrab-plugins.i386: W: no-documentation nntpgrab-plugins.i386: W: devel-file-in-non-devel-package /usr/lib/libnntpgrab_plugin_decoder.so nntpgrab-plugins.i386: W: devel-file-in-non-devel-package /usr/lib/libnntpgrab_plugin_schedular.so nntpgrab-plugins.i386: W: devel-file-in-non-devel-package /usr/lib/libnntpgrab_plugin_nntp.so I assume the warnings about the missing documentation can be ignored, in the 'nntpgrab-core' package there are some documentation files placed and as you can see, it's just the README file which doesn't have any contents yet. The error from the 'nntpgrab' package which says there are no binaries can also be ignored as that package is just a meta package to pull in 'nntpgrab-core', 'nntpgrab-plugins' and 'nntpgrab-gui'. The final warnings, from the 'nntpgrab-plugins' package about the devel-file-in-non-devel-package needs to be ignored. This is because these plugins are dynamically loaded using g_module_open() which needs those .so files (not just the symlinks).
For general packaging guidelines, please refer to http://fedoraproject.org/wiki/Packaging/Guidelines http://fedoraproject.org/wiki/Packaging/ReviewGuidelines For 0.2.1-2: * disttag - Please consider to use %{?dist} tag. http://fedoraproject.org/wiki/Packaging/DistTag * URL - Perhaps URL contains some typo :) * Seemingly unneeded Provides - Why do you want to make -plugins subpackage have "Provides: nntpgrab-plugin-nntp" or so? - Also, "Obsoletes: nntpgrab-plugin-nntp" seems unneeded as perhaps Fedora has never had nntpgrab-plugin-nntp rpm. * Dependency between subpackage - -devel subpackage should have "Requires: %{name}-core = %{version}-%{release}" * %configure - %configure should be moved to %build. * Vendor name of desktop file - Usually the vendor id of desktop file should be "fedora". Do you want to have desktop file named "NNTPGrab-nntpgrab.desktop"? * libtool .la file <-> .so symlink - libtool .la file should be removed unless needed. Instead the symlink %{_libdir}/libnntpgrab.so should _not_ be removed and this symlink should be included in -devel subpackage. * defattr - We now recommend %defattr(-,root,root,-) * Directory ownership issue - %{_includedir}/nntpgrab is not owned by any packages. * Dependency for -devel pacakage - %_libdir/pkgconfig/nntpgrab.pc contains the line: -------------------------------------------------------- 9 Requires: glib-2.0 -------------------------------------------------------- Also %_includedir/nntpgrab/nntpgrab.h contains -------------------------------------------------------- 22 #include <glib.h> -------------------------------------------------------- This means that -devel subpackage should have "Requires: glib2-devel". ? plugins - By the way, if all files in -plugins package under %_libdir directory are only used as plugins called by only dlopen, is it possible - to move all plugins to some unique directory only used by nntpgrab, for example %_libdir/nntpgrab - and "rename" (not symlink) libnntpgrab_plugin_nntp.so.0.0.0 to libnntpgrab_plugin_nntp.so, for example (as dlopen'ed file name is libnntpgrab_plugin_nntp.so) (not a blocker) ?
Created attachment 291414 [details] spec file for NNTPGrab, with feedback from comment #1 New srpm can be found at http://www.nntpgrab.nl/fedora/nntpgrab-0.2.1-3.fc9.src.rpm (In reply to comment #1) > * disttag > - Please consider to use %{?dist} tag. > http://fedoraproject.org/wiki/Packaging/DistTag Added in the Release field > * URL > - Perhaps URL contains some typo :) Fixed > * Seemingly unneeded Provides > - Why do you want to make -plugins subpackage have > "Provides: nntpgrab-plugin-nntp" or so? > > - Also, "Obsoletes: nntpgrab-plugin-nntp" seems unneeded > as perhaps Fedora has never had nntpgrab-plugin-nntp > rpm. This is because in a previous version of the .spec file, there were sub-packages for each individual plugin. There already are several users which have installed this previous version. Before proposing this package into Fedora, I decided to merge those sub-packages to one -plugins sub-package. So to provide the old users a seamless upgrade once this package hits Fedora, I had to use the provides/obsoletes trick. > * Dependency between subpackage > - -devel subpackage should have > "Requires: %{name}-core = %{version}-%{release}" Fixed > * %configure > - %configure should be moved to %build. Fixed > * Vendor name of desktop file > - Usually the vendor id of desktop file should be "fedora". > Do you want to have desktop file named "NNTPGrab-nntpgrab.desktop"? Vendor for the desktop file changed to 'fedora' > * libtool .la file <-> .so symlink > - libtool .la file should be removed unless needed. Instead > the symlink %{_libdir}/libnntpgrab.so should _not_ be removed > and this symlink should be included in -devel subpackage. Added the file %{_libdir}/libnntpgrab.so to the -devel subpackage. > * defattr > - We now recommend %defattr(-,root,root,-) Fixed > * Directory ownership issue > - %{_includedir}/nntpgrab is not owned by any packages. Fixed (I hope, couldn't find any good documentation about directory ownerships) > * Dependency for -devel pacakage > - %_libdir/pkgconfig/nntpgrab.pc contains the line: > -------------------------------------------------------- > 9 Requires: glib-2.0 > -------------------------------------------------------- > Also %_includedir/nntpgrab/nntpgrab.h contains > -------------------------------------------------------- > 22 #include <glib.h> > -------------------------------------------------------- > This means that -devel subpackage should have > "Requires: glib2-devel". Fixed > ? plugins > - By the way, if all files in -plugins package under %_libdir > directory are only used as plugins called by only dlopen, is > it possible > - to move all plugins to some unique directory only used > by nntpgrab, for example %_libdir/nntpgrab > - and "rename" (not symlink) libnntpgrab_plugin_nntp.so.0.0.0 to > libnntpgrab_plugin_nntp.so, for example (as dlopen'ed > file name is libnntpgrab_plugin_nntp.so) > (not a blocker) ? For now, I've removed all the symlinks for the plugins and renamed them to name_of_plugin.so. For the next version of NNTPGrab I will put the plugins in a seperate directory (/usr/lib/nntpgrab)
For 0.2.1-3: - If all plugins in -plugins subpackage are only dlopened, calling /sbin/ldconfig in %post(un) scriptlets (in -plugins subpackage) should not be needed. - README file has 0 size, which should usually be removed. - Would you have any reason to ship libtool .la file? (please check the section "Exclusion of Static Libraries" of http://fedoraproject.org/wiki/Packaging/Guidelines) Anyway, almost okay. Then: ------------------------------------------------------------- NOTE: Before being sponsored: This package will be accepted with another few work. But before I accept this package, someone (I am a candidate) must sponsor you. Once you are sponsored, you have the right to review other submitters' review requests and approve the packages formally. For this reason, the person who want to be sponsored (like you) are required to "show that you have an understanding of the process and of the packaging guidelines" as is described on : http://fedoraproject.org/wiki/PackageMaintainers/HowToGetSponsored Usually there are two ways to show this. A. submit other review requests with enough quality. B. Do a "pre-review" of other person's review request (at the time you are not sponsored, you cannot do a formal review) When you have submitted a new review request or have pre-reviewed other person's review request, please write the bug number on this bug report so that I can check your comments or review request. Fedora package collection review requests which are waiting for someone to review can be checked on: http://fedoraproject.org/PackageReviewStatus/NEW.html (NOTE: please don't choose "Merge Review") Review guidelines are described mainly on: http://fedoraproject.org/wiki/Packaging/ReviewGuidelines http://fedoraproject.org/wiki/Packaging/Guidelines http://fedoraproject.org/wiki/Packaging/ScriptletSnippets ------------------------------------------------------------
Created attachment 291466 [details] spec file for NNTPGrab, with feedback from comment #3 0.2.1-4: - Removed the %post{,un} scriptlets for the -plugins subpackage - Removed README file from %doc as it is a zero-byte file - Removed the .la file from the -devel subpackage New srpm at http://www.nntpgrab.nl/fedora/nntpgrab-0.2.1-4.fc9.src.rpm -- I've also just reviewed #427669, created a Fedora account (username 'epienbro'), signed the CLA and added myself to the roles 'cvsextras' and 'fedorabugs'. Is there anything else I need to do now or do I need to wait for your approval?
Okay. - This package itself is okay - Your pre-review seems good for initial comments -------------------------------------------------------------------- This package (nntpgrab) is APPROVED by me -------------------------------------------------------------------- Now I am sponsoring you. Please follow the procedure according to: http://fedoraproject.org/wiki/PackageMaintainers/Join If you want to import this package into Fedora 7/8, you also have to look at http://fedoraproject.org/wiki/Infrastructure/UpdatesSystem/Bodhi-info-DRAFT (after once you rebuilt this package on Fedora rebuilding system). If you have questions, please ask me.
New Package CVS Request ======================= Package Name: nntpgrab Short Description: Usenet download program Owners: epienbro Branches: F-7 F-8 InitialCC: epienbro Cvsextras Commits: no
cvs done. Any particular reason to disallow cvsextras commits? That will make it harder for people to assist you or fix your package in the event you are not available.
There isn't any particular reason to disallow cvsextras commits. This is just my first Fedora package, so I didn't know what the default value of that option is. Apparently you advise me to allow cvsextras commits. I don't have any problems with it being enabled, so here's a change request: Package Change Request ====================== Package Name: nntpgrab Cvsextras Commits: yes
Yeah, I think having cvsextras commits yes is the way to go... I have changed this package. Thanks for your understanding.
Closing as rebuilds are done on all branches and requests for F-8/7 are already done on bodhi.
Package Change Request ====================== Package Name: nntpgrab New Branches: EL-5
cvs done.