Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 217497 (dbmail) - Review Request: dbmail - The DBMail mail storage system
Summary: Review Request: dbmail - The DBMail mail storage system
Keywords:
Status: CLOSED NEXTRELEASE
Alias: dbmail
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mamoru TASAKA
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On: libsieve
Blocks: FE-ACCEPT
TreeView+ depends on / blocked
 
Reported: 2006-11-28 08:45 UTC by Bernard Johnson
Modified: 2014-08-22 12:05 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-02-21 07:11:00 UTC
Type: ---
Embargoed:
mtasaka: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Bernard Johnson 2006-11-28 08:45:02 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.1-2.fc6.src.rpm
Description: 
Dbmail is the name of a group of programs that enable the possiblilty of
storing and retrieving mail messages from a database. Currently MySQL and
PostgreSQL can be used as database backends.

Comment 1 Bernard Johnson 2006-12-05 11:50:19 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bj/projects/Fedora-Extras/dbmail-2.2.1-3.fc6.src.rpm

Was a little too agressive at getting rid of .so files.  Allow the ones that are
modules loaded at runtime.


Index: dbmail.spec
===================================================================
--- dbmail.spec (revision 123)
+++ dbmail.spec (working copy)
@@ -1,6 +1,6 @@
 Name:           dbmail
 Version:        2.2.1
-Release:        2%{?dist}%{?repotag:.%{repotag}}
+Release:        3%{?dist}%{?repotag:.%{repotag}}
 Summary:        The DBMail mail storage system
 
 Group:          System Environment/Daemons
@@ -64,8 +64,9 @@
 install man/*1 %{buildroot}%{_mandir}/man1/
 install man/*5 %{buildroot}%{_mandir}/man5/
 install man/*8 %{buildroot}%{_mandir}/man8/
-# remove libtool archives and -devel type stuff
-find $RPM_BUILD_ROOT -name \*\.la -print -o -name \*\.so -print | xargs rm -f
+# remove libtool archives and -devel type stuff (but leave loadable modules)
+find $RPM_BUILD_ROOT -name \*\.la -print -o -name \*\.so -print | \
+    egrep -v "libauth.*so|libmysql.*so|libpgsql.*so|libsqlite.*so" | xargs rm -f
 
 # create dynamic linker/loader configuration file
 echo "/usr/lib/dbmail" >
$RPM_BUILD_ROOT/%{_sysconfdir}/ld.so.conf.d/dbmail-`uname -i`.conf
@@ -125,6 +126,9 @@
 
 
 %changelog
+* Tue Dec 05 2006 Bernard Johnson <bjohnson> 2.2.1-3
+- leave the right .so files for modules
+
 * Mon Nov 27 2006 Bernard Johnson <bjohnson> 2.2.1-2
 - update with Fedora Extras style spec file


Comment 2 Bernard Johnson 2006-12-14 11:35:25 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.1-4.fc6.src.rpm

* Thu Dec 14 2006 Bernard Johnson <bjohnson> 2.2.1-4
- cleanup of spec file
- use fedora-usermgmt hooks
- split and build all database libraries
- kill modules/.libs from the module load path


Comment 3 Bernard Johnson 2006-12-15 02:18:51 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.1-5.fc6.src.rpm

* Thu Dec 14 2006 Bernard Johnson <bjohnson> 2.2.1-5
- fix my local svn that caused x bit on init files to sneak in


My local svn caused the init files to be executable, in the srpm, which they
shouldn't have been.  Other than that, everything is the same as the previous
release.

Comment 4 Bernard Johnson 2007-01-12 19:04:51 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.1-6.fc6.src.rpm

* Fri Jan 12 2007 Bernard Johnson <bjohnson> 2.2.1-6
- add patch to fix errno race condition
- don't delete libsort_sieve.so, it's a module


Comment 5 Mamoru TASAKA 2007-01-29 18:15:17 UTC
(Removing NEEDSPONSOR as bug 216723)

Comment 6 Bernard Johnson 2007-02-01 02:20:08 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-1.fc6.src.rpm

* Sat Jan 31 2007 Bernard Johnson <bjohnson> 2.2.2-1
- add logrotate for dbmail.err
- sub packages depend on %%{version}-%%{release}
- update to 2.2.2
- remove mailbox2dbmail patch
- translate tabs to space in dbmail.conf
- remove errno race patch


Comment 7 Bernard Johnson 2007-02-01 07:21:21 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-2.fc6.src.rpm

* Sat Jan 31 2007 Bernard Johnson <bjohnson> 2.2.2-2
- add some conditionals for not building sqlite on some product releases
- substitude \t for tab in sed so that rpmlint doesn't complain about mixing
  tabs and spaces


Comment 8 Bernard Johnson 2007-02-05 19:06:14 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-3.fc6.src.rpm

%changelog
* Mon Feb 05 2007 Bernard Johnson <bjohnson> 2.2.2-3
- fix typo in logrotate script
- patch umask for log files to be something more reasonable


Comment 9 Bernard Johnson 2007-02-18 10:27:15 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-4.fc6.src.rpm


* Sat Feb 17 2007 Bernard Johnson <bjohnson> 2.2.2-4
- fix a few things in scriptlets for consistency
- send error output from logrotate HUP to /dev/null
- explicitly require initscripts since they all use the daemon function
- use explicit %%{version}-%%{release} for provides

Comment 10 Bernard Johnson 2007-02-18 12:13:43 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-5.fc6.src.rpm


* Sun Feb 18 2007 Bernard Johnson <bjohnson> 2.2.2-5
- fix perms on man pages


Comment 11 Mamoru TASAKA 2007-02-18 16:53:56 UTC
Well, I hope I can review this package first time 
till Tuesday (in Japan)...

Comment 12 Mamoru TASAKA 2007-02-18 16:55:17 UTC
No, by Tuesday..

Comment 13 Bernard Johnson 2007-02-19 05:41:40 UTC
(In reply to comment #12)
> No, by Tuesday..

Thanks for your dedication in getting packages reviewed.  It's really appreciated.

Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-5.fc6.src.rpm

* Sun Feb 18 2007 Bernard Johnson <bjohnson> 2.2.2-6
- remove bogus require for main package on mysql
- virtual depend with exact %%{version}-%%{release}
- remove extra mysql-devel BR
- update description to include sqlite if built with sqlite
- for mysql, 4.1.3 is required, not just 4.1
- add requires for vixie-cron
- move database specific docs to database subpackages



Comment 14 Bernard Johnson 2007-02-20 08:45:05 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-7.fc6.src.rpm

* Tue Feb 20 2007 Bernard Johnson <bjohnson> 2.2.2-7
- make macro tests a little more readable
- change dbmail-database to dbmail-database-driver; more descriptive
- reduce gmime reqs to 2.1.19
- specify sqlite req at 3 or greater


Comment 15 Mamoru TASAKA 2007-02-20 12:06:42 UTC
Note: I don't understand how to use this at all!!

* Parallel provides v.s. Requirement
  - Well, generally I don't know how other people try to
    resolve this.

    Main package requires one "-database-driver" package
    and there are 3 package which provides this package
    (BTW "dbmail-database-driver-driver" on -mysql package
     is a typo, isn't it?). Then:
-------------------------------------------------------
[root@localhost ~]# yum install dbmail
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
<snip>
Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 dbmail                  i386       2.2.2-7.1.fc7    LOCAL             325 k
Installing for dependencies:
 dbmail-mysql            i386       2.2.2-7.1.fc7    LOCAL              16 k
 mysql-server            i386       5.0.33-1.fc7     development        10 M

Transaction Summary
=============================================================================
Install      3 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         
-------------------------------------------------------
    i.e. "yum install dbmail" always try to install
    "dbmail-mysql" because on using yum the shorter name
    package, and the alphabetically prior package (if name
    length is same) wins yum game.

   Well, for people who want to use postgresql-based dbmail, he/she
   can do this by explicitly directing -pgsql package, i.e.
------------------------------------------------------
[root@localhost ~]# yum install dbmail dbmail-pgsql
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
<snip>
Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 dbmail                  i386       2.2.2-7.1.fc7    LOCAL             325 k
 dbmail-pgsql            i386       2.2.2-7.1.fc7    LOCAL              16 k
Installing for dependencies:
 postgresql-server       i386       8.2.3-2.fc7      development       4.1 M

Transaction Summary
=============================================================================
Install      3 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         
-----------------------------------------------------------
    Anyway main package requires -pgsql or -mysql or -sqlite package and I think
    this must explicitly selected by the sysadmin who want to use this.

    So:
    I think it is better that 
    * -pgsql or -mysql or -sqlite package does not provide -database-driver package
    * main package does not require -database-driver package
      If do so, "yum install dbmail" only installs dbmail package
    * You write "README.fedora" which explains that to use dbmail on Fedora
      sysadmin has to install -pgsql or -mysql or -sqlite package by himself
according
      to what database he wants to use. I think this is no problem
      because dbmail cannot be used only by just installing your
      binary rpms and needs some settings anyway.

   For two packages I reviewed, this situation occurred, and in both cases
   submitters added README.fedora to explain this.

* Permission
-------------------------------------------
E: dbmail non-readable /etc/dbmail.conf 0660
-------------------------------------------
   - Just explain why 
     * others should not able to read this file
     * and group should have write permission

* Documentation
  - README.solaris should perhaps be removed (because we are not on solaris).

Comment 16 Bernard Johnson 2007-02-20 14:11:56 UTC
(In reply to comment #15)
> Note: I don't understand how to use this at all!!
> 
> * Parallel provides v.s. Requirement
>   - Well, generally I don't know how other people try to
>     resolve this.

Let me tell you what little I know and maybe we can figure it out enough to make
a usable package :)

>     Main package requires one "-database-driver" package
>     and there are 3 package which provides this package

Yes, in order to be functional, at least one of them must be installed.

>     (BTW "dbmail-database-driver-driver" on -mysql package
>      is a typo, isn't it?). Then:

yes!

>     i.e. "yum install dbmail" always try to install
>     "dbmail-mysql" because on using yum the shorter name
>     package, and the alphabetically prior package (if name
>     length is same) wins yum game.

Yes, there's a big "discussion" on FE mailing list regarding this very issue. 
Take for example, "yum deplist redhat-lsb":
<cut>
  dependency: /usr/sbin/sendmail
   provider: sendmail.i386 8.13.8-2
   provider: postfix.i386 2:2.3.3-2
   provider: esmtp.i386 0.5.1-13.fc6
   provider: exim.i386 4.63-5.fc6
   provider: ssmtp.i386 2.61-10.fc6
   provider: ssmtp.i386 2.61-11.1.fc6
<cut>
So now the Core and Extras are the same, guess what gets installed to replace
sendmail by providing a dependency for /usr/sbin/sendmail..?  EXIM!

Now, I don't agree with changing sendmail by sheer chance, but other seem to
think it's ok.  But no one is suggesting taking the dependency out and having a
sysadmin install whichever mta they want by hand.

>    Well, for people who want to use postgresql-based dbmail, he/she
>    can do this by explicitly directing -pgsql package, i.e.

Exactly.

>     Anyway main package requires -pgsql or -mysql or -sqlite package and I think
>     this must explicitly selected by the sysadmin who want to use this.

Yes, and here is where my example with sendmail is different.  With sendmail, no
matter which mta gets installed, it's expected that it will accept mail locally
and attampt to deliver it - ie. it's functional out of the box.

Dbmail can never be that because it requires a) database backend selection and
b) configuration file setup, and c) database installation.

These are not trivial things to do, and if you understand that, then package
selection will not be a problem for you.

However, I do see one added benefit of the requires/provides - and that is if
you try to install just dbmail, it will force a driver to install, which may
wake up a sysadmin to realize "oh, i have to select the driver for the
database".  Otherwise, if you just install dbmail and set the driver in the
config file, when you start you just get a message like
"/usr/lib/dbmail/libfoo.so was not found" and it dies, which doesn't tell you much.

But then again, on the other hand it's possible to set the driver to mysql when
pgsql is installed and get the same type message.

<shrug>

>     So:
>     I think it is better that 
>     * -pgsql or -mysql or -sqlite package does not provide -database-driver
package
>     * main package does not require -database-driver package
>       If do so, "yum install dbmail" only installs dbmail package

So after reading my explanation if you still feel this is the right way, I'll go
ahead and make that update.

I don't feel strongly one way or another, I'm just trying to make sure we
understand the consequences of either approach.

>     * You write "README.fedora" which explains that to use dbmail on Fedora
>       sysadmin has to install -pgsql or -mysql or -sqlite package by himself
> according
>       to what database he wants to use. I think this is no problem
>       because dbmail cannot be used only by just installing your
>       binary rpms and needs some settings anyway.
>
>    For two packages I reviewed, this situation occurred, and in both cases
>    submitters added README.fedora to explain this.

This is a good idea reagardless of the approach.  I'll do that.
 
> * Permission
> -------------------------------------------
> E: dbmail non-readable /etc/dbmail.conf 0660
> -------------------------------------------
>    - Just explain why 
>      * others should not able to read this file
>      * and group should have write permission

it must be unreadable to others because it contains the database password and
login, however it can be 640 or even 600 (it's owner=root, group=root).

> * Documentation
>   - README.solaris should perhaps be removed (because we are not on solaris).

I will remove that.


Comment 17 Bernard Johnson 2007-02-20 14:16:10 UTC
(In reply to comment #16)
> > * Permission
> > -------------------------------------------
> > E: dbmail non-readable /etc/dbmail.conf 0660
> > -------------------------------------------
> >    - Just explain why 
> >      * others should not able to read this file
> >      * and group should have write permission
> 
> it must be unreadable to others because it contains the database password and
> login, however it can be 640 or even 600 (it's owner=root, group=root).

I'm just going to make it 0600 in the next rel.



Comment 18 Mamoru TASAKA 2007-02-20 15:17:22 UTC
Well, then if you want to have 3 packages provide -database-driver
package, then
* Please write "README.fedora" including the following contents:
  - main package requires a package which provides "-database-driver"
    package
  - currently 3 package provide it.
  - sysadmin has to select which package to install according to
    what database he/she want to use
  - and anyway another settings are required (and the place where
    the instruction can be seen should be written)
* Add to the description of main package like:
  "Please README.fedora for fedora specific issue"

Comment 19 Mamoru TASAKA 2007-02-20 15:18:30 UTC
One more comment
- Please include your name in README.fedora.

Comment 20 Bernard Johnson 2007-02-20 17:20:58 UTC
Spec URL: http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail.spec
SRPM URL:
http://www.symetrix.com/~bjohnson/projects/Fedora-Extras/dbmail-2.2.2-8.fc6.src.rpm

* Tue Feb 20 2007 Bernard Johnson <bjohnson> 2.2.2-8
- change /etc/dbmail.conf to mode 0600
- remove README.solaris, create README.fedora
- add ref to README.fedora in %%desc

Comment 21 Mamoru TASAKA 2007-02-20 18:09:00 UTC
One issue.
* Source
  URL should be: http://www.dbmail.org/download/2.2/dbmail-2.2.2.tar.gz

------------------------------------------
  This package (dbmail) is APPROVED by me.
------------------------------------------

  Well, the process of importing new packages changed.
  Please recheck
  http://fedoraproject.org/wiki/CVSAdminProcedure
  from step 8.
  

Comment 22 Mamoru TASAKA 2007-02-20 18:09:47 UTC
Oops.. I meant
http://fedoraproject.org/wiki/Extras/NewPackageProcess

Comment 23 Bernard Johnson 2007-02-21 01:28:34 UTC
New Package CVS Request
=======================
Package Name: dbmail
Short Description: The DBMail mail storage system
Owners: bjohnson
Branches: FC-5, FC-6, devel
InitialCC:

Comment 24 Bernard Johnson 2007-03-07 18:56:24 UTC
Additional Branches: EL-5

Comment 25 Bernard Johnson 2014-08-22 02:17:15 UTC
Package Change Request
======================
Package Name: dbmail
New Branches: epel7
Owners: bjohnson

Comment 26 Gwyn Ciesla 2014-08-22 12:05:01 UTC
Git done (by process-git-requests).


Note You need to log in before you can comment on or make changes to this bug.