[Bug 525786] Review Request: popfile - Automatic Email Classification

bugzilla at redhat.com bugzilla at redhat.com
Sun Sep 27 17:15:20 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=525786





--- Comment #2 from Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp>  2009-09-27 13:15:19 EDT ---
Some random commends:

* License statement of the spec file itself
  - It is not forbidden, however ususally spec files in Fedora
    packages don't contain license statements on the spec files
    themselves.
    Moreover:
--------------------------------------------------------
# Copyright (c) 2001-2009 John Graham-Cumming
#   This file is part of POPFile
--------------------------------------------------------
    - Why is the copyright holder of your spec file not you?
    - Is this spec file really "a part of POPFile"?

* Naming/EVR (Epoch-Version-Release)
  - The release number of the spec file should have integer
    value except for the cases written in
    https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Package_Release

  - And usually adding %{?dist} tag is preferred.
    https://fedoraproject.org/wiki/Packaging/DistTag

* Vendor
  - Vendor tag must be removed on Fedora. This tag is automatically imported
    on Fedora build server.

* Exclusiveos
  - I don't think you have to write this explicitly.

* Perl related packaging treatment
  https://fedoraproject.org/wiki/Packaging/Perl
  Some notes:
  - "Requires: perl >= 5.8.1" does almost nothing because Fedora's perl
    rpm has epoch:
------------------------------------------------------
$ rpm -q --qf '%{epoch}:%{name}-%{version}-%{release}\n' perl
4:perl-5.10.0-82.fc12
------------------------------------------------------
  - And anyway I don't think this is needed because even Fedora 10
    (the oldest branch currently supported on Fedora) uses perl 5.10.

  - For perl module dependency, please write virtual Provides names
    instead of rpm names directly:
    https://fedoraproject.org/wiki/Packaging/Perl#Perl_Requires_and_Provides

* rpmlint issue
------------------------------------------------------
popfile.src: W: strange-permission popfile 0775
popfile.src: W: strange-permission start_popfile.sh 0775
------------------------------------------------------
  - All files in srpm should have 0644 permission.

* %setup/%build/%install
  - Umm... I think your current spec file is unneededly verbose
    and redundant. While listing %files section verbosely can be
    accepted, is there any reason you don't prefer to write like
    below? (all commentes removed for now)
------------------------------------------------------
%prep
%setup -q -c
find . -type f | xargs chmod 0644
%{__cp} -p %{SOURCE1} .
%{__cp} -p %{SOURCE2} .

%build

%install
%{__rm} -rf $RPM_BUILD_ROOT

%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/%{name}

%{__cp} -a * $RPM_BUILD_ROOT%{_datadir}/%{name}/
%{__rm} -f $RPM_BUILD_ROOT%{_datadir}/%{name}/popfile

%{__mkdir_p} $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
%{__install} -p -m 644 stopwords $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}

%{__mkdir_p} $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}

%{__mkdir_p} $RPM_BUILD_ROOT%{_initrddir}
%{__install} -p -m 755 popfile $RPM_BUILD_ROOT%{_initrddir}/popfile

%{__install} -p -m 755 start_popfile.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/
------------------------------------------------------
  Some notes:
    - %setup recognizes zip file. "-c" option on setup creates
      the diretory beforehand when unpacking source. Also "-q" option
      is preferred to suppress messages when unpacking source.

    - When using "install" or "cp" commands, add "-p" option (or
      "-a" for "cp") to keep timestamps on installed files:
      https://fedoraproject.org/wiki/Packaging/Guidelines#Timestamps

    - If you want to close macros with {}, please do so consistently
      (i.e. please use %{name})

* Initscripts treatment

  Please refer to:
 
https://fedoraproject.org/wiki/Packaging/SysVInitScript#Initscripts_in_spec_file_scriptlets

  Some notes:
  - Some Requires(post) or so are missing
  - Why your spec file stopps daemon every time this package is
    upgraded (on %pre)?
    https://fedoraproject.org/wiki/Packaging/ScriptletSnippets#Syntax
    ! Also please check %postun scriptlet example (and the usage of
      condrestart)
  - Please use either "/sbin/service popfile" style or "%{_initrddir}/popfile"
    style consistently
  - Currently using %{_initddir} macro instead of %{_initrddir} is preferred:
   
https://fedoraproject.org/wiki/Packaging/SysVInitScript#Initscripts_on_the_filesystem
  - rpmlint warns:
-----------------------------------------------------------------------------
popfile.noarch: W: service-default-enabled /etc/rc.d/init.d/popfile
-----------------------------------------------------------------------------
    Usually service should be enabled by admin manually afterwards
    and should not be enabled by default.
    So popfile initscript should have
-----------------------------------------------------------------------------
# chkconfig: - 80 20
-----------------------------------------------------------------------------
    And "Default-Start", "Default-Stop" lines should be removed
    https://fedoraproject.org/wiki/Packaging/SysVInitScript#.23_chkconfig:_line
   
https://fedoraproject.org/wiki/Packaging/SysVInitScript#.23_Default-Start:_line

* %files
  - Now %defattr(-,root,root,-) is preferred on Fedora.
  - By the way
-----------------------------------------------------------------------------
%files
%dir %{_datadir}/%{name}/Classifier
%{_datadir}/%{name}/Classifier/*
-----------------------------------------------------------------------------
    can be unified as
-----------------------------------------------------------------------------
%files
%{_datadir}/%{name}/Classifier/
-----------------------------------------------------------------------------
    The latter %files entry contains both the directory 
    %{_datadir}/%{name}/Classifier itself and all files/directories/etc
    under the directory.

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.




More information about the Fedora-package-review mailing list