Bug 208113

Summary: Review Request: freepops - a tool to get html mail through a pop daemon
Product: [Fedora] Fedora Reporter: Thibaud Mouton <thibaud.mouton>
Component: Package ReviewAssignee: Mamoru TASAKA <mtasaka>
Status: CLOSED DUPLICATE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-01-08 10:34:23 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 201449    
Attachments:
Description Flags
freepops spec with proposed fixes applied
none
Patch to remove windows-like encodings.
none
freepops spec with proposed fixes (more) applied none

Description Thibaud Mouton 2006-09-26 10:42:54 EDT
Spec URL: http://perso.orange.fr/gollum-on-the-web/freepops.spec
SRPM URL: http://perso.orange.fr/gollum-on-the-web/freepops-0.0.99-1.src.rpm
Description: 

FreePOPsd is a daemon that acts as a local pop3 server, translating local pop3 requests to remote http requests to supported webmails.

This version contains last plugins updates in a tar.gz separated archive and a script that allows to perform this update during %configure step.
An init script is also provided in order to be more suitable to the FC5 distro.

Here are the output of the last rpmlint version:
W: freepops strange-permission update.sh 0775
A file that you listed to include in your package has strange
permissions. Usually, a file should have 0644 permissions.

E: freepops configure-without-libdir-spec
A configure script is run without specifying the libdir. configure
options must be augmented with something like --libdir=%{_libdir}.

This package also build without any problem in Mock.
Comment 1 Thibaud Mouton 2006-09-26 10:47:29 EDT
The rpmlint error is due to a configure script which is not generated by
autoconf but by the author himself.
Comment 2 Thibaud Mouton 2006-09-26 14:18:43 EDT
This is my first package, and I am looking for a sponsor.
Thank.
Comment 3 Kevin Fenzi 2006-10-01 17:24:37 EDT
Thibaud: You may want to take a look at: 
http://fedoraproject.org/wiki/Extras/HowToGetSponsored

If you have additional packages to submit or would like to add comments to 
packages that are in the review/new queue that would help sponsors see you 
understand the guidelines. 

I'm also adding the FE-NEEDSPONSOR blocker on this, so sponsors will know to 
look at it. 
Comment 4 Mamoru TASAKA 2006-11-15 11:31:35 EST
Well, I only checked this package (freepops) by
packaging issue and not fully checked yet, however
it seems not a few issues to be fixed.
Please fix the following before I can check this
fully.

Please make yourself familiar with the following URLs.
http://fedoraproject.org/wiki/Packaging/Guidelines
http://fedoraproject.org/wiki/Packaging/ReviewGuidelines
Then;

0. For spec file:
0-1 On Description stage:
* Version:
  - Use %{?dist} tag. i.e. use 1%{?dist}
  - Note: every time use fix spec files, please increment
      release number.
* Source2:
  - Executable flags on source is forbidden.
  - Please specify the URL (same for other sources).
* BuildRoot:
  - The recommended BuildRoot are described on
    http://fedoraproject.org/wiki/Packaging/Guidelines
* BuildRequires:
  - openssl-devel
    This is redundant because curl-devel requires this.
* Requires:
  - All the requires written are not necessary because libraries'
    dependency automatically pulls them.
* Patch:
  - Please rename the name of the patch to something like:
    'freepops-0.0.99-configure.patch' so that it can again renamed
    when the content of the patch has to be updated when 
    the original source changes.

0-2 On %prep stage:
* %{update} %SOURCE3
  - Well, doing some work (like expanding some files) 
    except under $RPM_BUILD_DIR or $RPM_BUILD_ROOT is not allowed.
* ./configure.sh
  - This should be in %build section

0-3 On %build section
  - make all
    Fedora specific compilation flags (can be checked by
    'rpm --eval %optflags') are not used.
    * NOTE: Please use the option 'H=""' so that what 'make' process
     is actually doing.
  - WHERE=/usr/
    Please use macros (i.e. WHERE=%{_prefix})
  - FORCE_LINK="-L /tmp/freepops-expat/expat/.libs/"
    This is not allowed because the path /tmp/freepops-expat/expat/.libs/
    is never used.

0-4 On %install stage:
   - install -m755 (and extra)
     Use "install -p" to keep timestamps.

0-5 On %post %postun %preun stage:
    %post: /sbin/chkconfig --add freepopsd
    This means that spec file should have the entry:
    Requires(post): /sbin/chkconfig (and same for other).
    Please check:
    http://fedoraproject.org/wiki/Packaging/ScriptletSnippets

0-6 On %files stage:
   - /etc/rc.d/init.d/freepopsd
   - %{_sysconfdir}/sysconfig/freepopsd
     Please use %{_sysconfdir} BOTH.
   - %{_datadir}/%{name}
     %{_datadir}/%{name}/lua
     %{_sysconfdir}/freepops/
     All the directories aboveare not owned by any packages.

0-6 For debuginfo package:
--------------------------------------------------
E: freepops-debuginfo script-without-shebang
/usr/src/debug/freepops-0.0.99/modules/src/luacompat/compat-5.1r4/compat-5.1.h
E: freepops-debuginfo wrong-script-end-of-line-encoding
/usr/src/debug/freepops-0.0.99/modules/src/luacompat/compat-5.1r4/compat-5.1.h
E: freepops-debuginfo script-without-shebang
/usr/src/debug/freepops-0.0.99/modules/src/luacompat/compat-5.1r4/compat-5.1.c
E: freepops-debuginfo wrong-script-end-of-line-encoding
/usr/src/debug/freepops-0.0.99/modules/src/luacompat/compat-5.1r4/compat-5.1.c
--------------------------------------------------
   - For this case:
   * 'script-without-shebang' means that this file has incorrect
     permission. Change the permission to 0644.
   * 'wrong-script-end-of-line-encoding' means this file has
     Windows-like (CRLF) end-of-line encoding. Fix this by using
     dos2unix or use: 
     sed -i -e 's|\r||' <file> .
   - Build log says:
---------------------------------------------------
+ /usr/lib/rpm/find-debuginfo.sh /home/tasaka1/rpmbuild/BUILD/freepops-0.0.99
extracting debug info from
/var/tmp/freepops-0.0.99-1.tmp1-buildroot/usr/bin/freepopsd
cpio: freepops-0.0.99/modules/src/getdate/getdate-curl-7.11.0/getdate.c: No such
file or directory
1479 blocks
---------------------------------------------------
     This means that getdate.c should be installed into 
     debuginfo rpm, however, it is missing. Then build log
     (with debugging with 'H=""') says:
---------------------------------------------------
echo " linking libgetdate.a"
 linking libgetdate.a
ar r libgetdate.a getdate.o 1>/dev/null 2>/dev/null
cp libgetdate.a /home/tasaka1/rpmbuild/BUILD/freepops-0.0.99/modules/lib
cp getdate.h /home/tasaka1/rpmbuild/BUILD/freepops-0.0.99/modules/include
rm getdate.c <- here
echo -n 
echo -n
--------------------------------------------------
     This is incorrect and should be fixed.

Well, then
1. From http://fedoraproject.org/wiki/Packaging/Guidelines :
* Use rpmlint
  - rpmlint is not silent
    (for srpm) E: freepops configure-without-libdir-spec
    This means that configure doesn't specify libdir. For this
    package this may be ignored, however, you can suppress
    this error by explicitly using '--libdir=%{_libdir}'.

2. From http://fedoraproject.org/wiki/Packaging/ReviewGuidelines :
   = Seems okay but for the issues above.

3. Other things I have noticed :
* %doc
  - I think 'TODO' should be added.
Comment 5 Mamoru TASAKA 2006-11-26 03:44:54 EST
ping?
Comment 6 Thibaud Mouton 2006-11-27 16:59:34 EST
Spec URL: http://perso.orange.fr/gollum-on-the-web/freepops.spec
SRPM URL: http://perso.orange.fr/gollum-on-the-web/freepops-0.0.99-3.src.rpm

Sorry for being so long but I didn't have internet access.

So, I take care about your comments and tried to fix them.
But:
- I dismiss debuginfo package because it is not really necessary
- I still have problems with update, a personnal script which allow to update
plugins conveniently from an archive that I provide in the source package.
Rpmlint considers it as a simple file so it warns about strange permissions.
How could I do if I cannot use this kind of process?

I will now faster to answer

Thanks

 
Comment 7 Paul Howarth 2006-11-28 06:48:59 EST
(In reply to comment #6)
> Spec URL: http://perso.orange.fr/gollum-on-the-web/freepops.spec
> SRPM URL: http://perso.orange.fr/gollum-on-the-web/freepops-0.0.99-3.src.rpm
> 
> Sorry for being so long but I didn't have internet access.
> 
> So, I take care about your comments and tried to fix them.
> But:
> - I dismiss debuginfo package because it is not really necessary

Why do you say that? Is this software completely bug-free, has it always been
so, and will it always be so in the future?

> - I still have problems with update, a personnal script which allow to update
> plugins conveniently from an archive that I provide in the source package.
> Rpmlint considers it as a simple file so it warns about strange permissions.
> How could I do if I cannot use this kind of process?

It would be better just to dispense with the script and reproduce its contents
directly into the spot in %prep where you are calling it, since all it is doing
is unpacking and placing updates into position. However, as noted in Comment #4,
the unpacking should not happen in the SOURCES directory (it may clobber some
other files there); you should use a temporary directory within the unpacked
source area (i.e. in the build directory) for this purpose.
Comment 8 Mamoru TASAKA 2006-11-28 08:35:30 EST
Created attachment 142284 [details]
freepops spec with proposed fixes applied

Well, there are still not a few issues to be fixed,
including debuginfo rpm issue and the issue of expanding
source in unwilling directory.

I attached a spec file which will hopely fix all 
issues I have mentioned. Please check what I have changed
(because it is not me who want to maintain this package.....)
and please feel free to ask me if you have some questions.

Then:
* as I have said in comment #4, please specify the URLs of
  sources so that the viewer of this spec file (including me)
  can verify if the sources are correct.

I will re-check your spec file when you update it again.
Comment 9 Mamoru TASAKA 2006-11-28 08:38:53 EST
Created attachment 142285 [details]
Patch to remove windows-like encodings.

Patch2 in my spec file (freepops-0.0.99-3.1)
Comment 10 Mamoru TASAKA 2006-11-28 11:23:59 EST
Oops...

Please change 'install -m???' to 'install -p -m???' to keep timestamps.
Comment 11 Mamoru TASAKA 2006-11-28 11:41:14 EST
Created attachment 142304 [details]
freepops spec with proposed fixes (more) applied

Umm.. by checking build log,
WHERE=%{_prefix} was found to be incorrect, which should be
WHERE=%{_prefix}/ .
Comment 12 Mamoru TASAKA 2006-12-12 07:48:39 EST
ping?
Comment 13 Mamoru TASAKA 2006-12-22 02:00:33 EST
Again ping?
Comment 14 Mamoru TASAKA 2007-01-01 02:32:53 EST
NOTE:

One month has passed since my comment #11.
Unless I can receive some response from Thibaud within one
week, I will close this bug as NOTABUG.
Comment 15 Mamoru TASAKA 2007-01-08 10:34:23 EST
Closing as NOTABUG, blocking FE-DEADREVIEW.
Comment 16 Mamoru TASAKA 2007-03-25 09:49:16 EDT

*** This bug has been marked as a duplicate of 233850 ***