Bug 222070

Summary: Review Request: prewikka - Prelude IDS Management Console
Product: [Fedora] Fedora Reporter: Thorsten Scherf <tscherf>
Component: Package ReviewAssignee: Mamoru TASAKA <mtasaka>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mtasaka
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-18 19:19:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 163779    

Description Thorsten Scherf 2007-01-09 23:50:46 UTC
%description
Prewikka is a graphical front-end analysis console for the Prelude
Hybrid IDS Framework. Providing numerous features, Prewikka facilitates
the work of users and analysts. It provides alert aggregation and sensor
and hearbeat views, and has user management and configurable filters. It
has access to external tools such as whois and traceroute.

http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.7.1-3.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec

I need a sponsor for this package.

Comment 1 Mamoru TASAKA 2007-01-11 19:09:39 UTC
I have not rebuilt this package, however..

* Requires:
-----------------------------------------
Requires:	python-abi = .....
-----------------------------------------
   - This is not needed any more because rpmbuild automatically
     adds python requirement as "Requires: python(abi) = ..."
* Bytecompiled python objects .pyc and .pyo files should have 0644
  permission.

* At %install stage:
------------------------------------------
rm -rf %{buildroot}/%{python_sitearch}/%{name}/templates/__init__.py
------------------------------------------
  Why is this needed?

* Documentation:
-----------------------------------------
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}/apache
cp -p  AUTHORS README NEWS HACKING.README  \
%{buildroot}%{_defaultdocdir}/%{name}-%{version}
cp -p doc/apache.conf %{buildroot}%{_defaultdocdir}/%{name}-%{version}/apache/
-----------------------------------------
   These can be done by:
-----------------------------------------
%install
......
   mkdir apache
   cp -p doc/apache.conf apache/

......

%files
%doc AUTHORS README NEWS HACKING.README
%doc apache/
......
-----------------------------------------
    By the way, is it really needed to move apache.conf documentation
    to apache directory (by creating apache directory)?

* Other dependency
  This package requires either libpreludedb-mysql/pgsql/sqlite
  package. Also, it seems that prewikka-httpd will not work
  only by installing one of them. To use prewikka-httpd some
  setting seems still needed.
  
  One solution is that you write a document "README.fedora" which
  explains that prewikka user needs to install either a package
  according to what database he/she will use and some settings are
  needed according to what installed (at this stage, you can
  say "the details of settings are on http://..., however,
  you must write to the document at least what package user should 
  install)

  By the way, if prewikka-httpd is used only by privileged user,
  it should  be installed under %{_sbindir}.

Comment 2 Thorsten Scherf 2007-01-12 00:06:33 UTC
* removed python-abi requirement

* rm -rf %{buildroot}/%{python_sitearch}/%{name}/templates/__init__.py 
this is an empty file, thus is removed it.

* moved apache.conf to %{buildroot}%{_defaultdocdir}/%{name}-%{version}

* created a README.fedora with setup instructions and put it in
%{buildroot}%{_defaultdocdir}/%{name}-%{version}

* moved prewikka-httpd from /usr/bin => /usr/sbin

new package is available here:
http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.7.1-4.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec

Comment 3 Mamoru TASAKA 2007-01-12 17:11:15 UTC
Well,

* For file entry
  - Please clean up file entry. For example, why don't you
    just write
----------------------------------------------------
%{python_sitearch}/%{name}/
----------------------------------------------------
    instead of the directory + all files/directories under there?
    Just writing the directory without %dir prefix is 
    interpretted as the directory and all files/directories
    under there.

* Documentation install
  As said in comment 1, please don't use:
----------------------------------------------------
cp -p  AUTHORS README NEWS HACKING.README  \
%{buildroot}%{_defaultdocdir}/%{name}-%{version}
cp -p doc/apache.conf %{buildroot}%{_defaultdocdir}/%{name}-%{version}/
cp README.fedora %{buildroot}%{_defaultdocdir}/%{name}-%{version}
----------------------------------------------------
  Just write like:
----------------------------------------------------
%doc AUTHORS README NEWS HACKING.README doc/apache.conf
----------------------------------------------------
  Using %doc without absolute path is interpretted as
  1. to create the default documentation directory 
     (%{_datadir}/doc/%{name}-%{version})
  2. Install the files/diretories listed into the directory.

* README.fedora
  Don't create a patch. Just write README.fedora and
  include in srpm as a source. i.e.
----------------------------------------------------
.......
%Source0:  <Please specify the URL>
%Source1:  README.fedora
........
%prep
%setup -q
cp -p %{SOURCE1} .
.........
.........
%files
.........
%doc AUTHORS ...
%doc README.fedora
...........
----------------------------------------------------

* empty __init__.py
  This file is imported first when to call python modules in the 
  directory, so this file is needed even this is empty. You can
  other empty __init__.py scripts in prewikka.

  And.. the existence of __init__.py means that the module scripts
  under this directory are imported from other binaries/scripts and
  not called directly by user. For this case the scripts should not 
  have shebang and should not have executable permission flags. So:

  1. Don't remove __init__.py under prewikka/templates/
  2. Set permission of all .py/.pyo/.pyc files under this directory
     as 0644
  3. Remove shebang from all .py scripts under this directory.
  4. And... check if prewikka works without problems if you do 1-3.


Comment 4 Thorsten Scherf 2007-01-12 19:55:05 UTC
ok, fixed the issues. one question remains:

when I use this:

%files
%{python_sitearch}/%{name}/
%doc AUTHORS README NEWS HACKING.README README.fedora doc/apache.conf

why is prewikka the owner of both dirs, although I did not use the %dir macro?

new package is available here:
http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.7.1-4.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec

Comment 5 Mamoru TASAKA 2007-01-13 18:39:17 UTC
And.. where is -5 srpm? -4 srpm does not have README.fedora
and I cannot create -5 srpm by "rpmbuild -bs prewikka.spec"

(In reply to comment #4)
> when I use this:
> 
> %files
> %{python_sitearch}/%{name}/

As commented in comment 3, Writing just
----------------------------------------
%files
<some_directory>
----------------------------------------
without marking as %dir is interpreted as the directory
<some_directory> and all files/directories under the
directory.

> %doc AUTHORS README NEWS HACKING.README README.fedora doc/apache.conf
  when written as this,
  * rpmbuild makes the directory 
    %{buildroot}/%{_datadir}/doc/%{name}-%{version}
  * rpmbuild just copies all the listed files/directories into
    the directory
  * rpmbuild automatically adds automatically the directory
   /%{_datadir}/doc/%{name}-%{version} and all files/directories
   under there into file list and mark all files as %doc.

--------------------------------------------------------------
sed -i -e '/^#!\/usr\/bin\/env python$/d'
%{buildroot}/%{python_sitearch}/%{name}/templates/*
---------------------------------------------------------------
   * After these, please make sure that all files under
     %{python_sitearch}/%{name}/templates/ do _not_ have
     executable permission.

Comment 6 Thorsten Scherf 2007-01-13 21:33:27 UTC
sorry, it agree it would be helpful to upload the package I talk about. :)

find it here:
http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.7.1-5.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec

Comment 7 Mamoru TASAKA 2007-01-14 17:22:15 UTC
Well, 

* Now README.fedora seems good (although I don't know
  at all about mysql...)
  So, please add to %description the sentence like:
-----------------------------------------------------
Please read README.fedora for fedora specific issues.
-----------------------------------------------------

* Please check if the directory to be installed is
  whether python_sitelib or python_sitearch.
  On 64bit arch, these directories differ.

  If this package is arch-independent, the directory
  must be python_sitelib. Otherwise, this srpm must
  not be marked as noarch rpm.

* It seems that the current prewikka is 0.9.8 .

Comment 8 Thorsten Scherf 2007-01-14 18:51:34 UTC
* added a note to README.fedora 

* this package is arch-independent, so I switch to python_sitelib

* used new upstream version 0.9.8

find it here:
http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.8.1.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec



Comment 9 Thorsten Scherf 2007-01-14 18:52:08 UTC
* added a note to README.fedora 

* this package is arch-independent, so I switch to python_sitelib

* used new upstream version 0.9.8

find it here:
http://people.redhat.com/tscherf/fedora-extra/prewikka-0.9.8-1.src.rpm
http://people.redhat.com/tscherf/fedora-extra/prewikka.spec

Comment 10 Mamoru TASAKA 2007-01-15 18:24:32 UTC
Well, now:
--------------------------------------------------
   This package (prewikka) is APPROVED by me
--------------------------------------------------

Two notes:
* It seems that this is licensed under GPL, so please
  ask upstream to include the copy of GPL license in
  tarball.
* I don't think the Group "Development/Languages" is
  good. This group is usually used by gcc, python,
  perl, etc.

  rpmlint requires to choose Group from
------------------------------------------------------
"Amusements/Games", "Amusements/Graphics", "Applications/Archiving",
"Applications/Communications", "Applications/Databases",
"Applications/Editors", "Applications/Emulators", "Applications/Engineering",
"Applications/File", "Applications/Internet", "Applications/Multimedia",
"Applications/Productivity", "Applications/Publishing", "Applications/System",
"Applications/Text", "Development/Debug", "Development/Debuggers",
"Development/Languages", "Development/Libraries", "Development/System",
"Development/Tools", "Documentation", "System Environment/Base", "System
Environment/Daemons", "System Environment/Kernel", "System
Environment/Libraries", "System Environment/Shells", "User
Interface/Desktops", "User Interface/X", "User Interface/X Hardware Support".
------------------------------------------------------
   Maybe "Applications/System"?

Comment 11 Mamoru TASAKA 2007-01-18 18:00:45 UTC
Please close this bug as CLOSED NEXTRELEASE when importing
is done.