Bug 388981 - Review Request: libnss-mysql - NSS library for MySQL
Summary: Review Request: libnss-mysql - NSS library for MySQL
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Lubomir Rintel
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-11-17 22:55 UTC by Jan ONDREJ
Modified: 2009-01-07 18:09 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-12-01 07:06:53 UTC
Type: ---
Embargoed:
lkundrak: fedora-review+
kevin: fedora-cvs+


Attachments (Terms of Use)

Description Jan ONDREJ 2007-11-17 22:55:55 UTC
Spec URL: http://www.salstar.sk/pub/fedora/SPECS/libnss-mysql.spec
SRPM URL: http://www.salstar.sk/pub/fedora/SRPMS/8/libnss-mysql-1.5-3.fc8.src.rpm
Description: 
Store your UNIX user accounts in MySQL. "libnss-mysql" enables the following:

    * System-wide authentication and name service using a MySQL database.
      Applications do not need to be MySQL-aware or modified in any way.
    * Storing authentication information in a database instead of text files.
    * Creation of a single authentication database for multiple servers.
      This is often referred to as the "Single Sign-on" problem.
    * Writing data-modification routines (IE self-management web interface).

libnss-mysql is similar to NIS or LDAP. It provides the same centralized
authentication service through a database. What does this mean? Username,
uid, gid, password, etc comes from a MySQL database instead of
/etc/password, /etc/shadow, and /etc/group. A user configured in MySQL will
look and behave just like a user configured in /etc/passwd. Your
applications such as ls, finger, sendmail, qmail, exim, postfix, proftpd,
X, sshd, etc. will all 'see' these users!

Comment 1 manuel wolfshant 2007-11-18 00:49:27 UTC
BuildRoot should be %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u}
-n) (see Packaging/Guidelines#BuildRoot in the wiki)
Mock build fails with:
2007-11-18 02:36:14,268 - util.py:218:DEBUG: checking for MySQL headers...
/usr/include/mysql
2007-11-18 02:36:14,268 - util.py:218:DEBUG: checking for MySQL libraries...
configure: error: Cannot locat
e MySQL libraries.  Try using --with-mysql=DIR
2007-11-18 02:36:14,268 - util.py:218:DEBUG: error: Bad exit status from
/var/tmp/rpm-tmp.50035 (%build)
2007-11-18 02:36:14,268 - util.py:218:DEBUG:
2007-11-18 02:36:14,268 - util.py:218:DEBUG:
2007-11-18 02:36:14,268 - util.py:218:DEBUG: RPM build errors:
2007-11-18 02:36:14,268 - util.py:218:DEBUG:     Bad exit status from
/var/tmp/rpm-tmp.50035 (%build)
2007-11-18 02:36:14,269 - trace_decorator.py:27:DEBUG: EXCEPTION:
Command(rpmbuild -bb --target x86_64 --no
deps //builddir/build/SPECS/libnss-mysql.spec) failed. See logs for output.


Comment 2 Jan ONDREJ 2007-11-18 07:19:30 UTC
I am sorry, I forgotten to upload my latest src.rpm.
Buildroot fixed in 1.5-4 release.

New URL's:
Spec URL: http://www.salstar.sk/pub/fedora/SPECS/libnss-mysql.spec
SRPM URL: http://www.salstar.sk/pub/fedora/SRPMS/8/libnss-mysql-1.5-4.fc8.src.rpm

Comment 3 Jason Tibbitts 2007-11-18 07:30:13 UTC
This still fails to build for me.  The build problem comes from the configure
script only checking for /usr/lib/mysql/ibmysqlclient.*, when on x86_64 the
libraries are in /usr/lib64/mysql.

Unfortunately due to complete brokenness of the configure script, it is not
possible to pass anything which will make it look in the proper location.  It
will check the following directories:
  what you pass to --with-mysql
  /usr
  /usr/local
  /usr/local/mysql
  /opt/local
  /opt/local/mysql
for the following files:
  lib/mysqlclient.so
  lib/mysql/libmysqlclient.so
  lib/libmysqlclient.a
  lib/mysql/libmysqlclient.a
so no matter what you pass, it will never look in /usr/lib64/mysql.

Your only options are to patch the configure script, or to impress upon upstream
the need to fix this and wait for them to do so.

Comment 4 Lubomir Kundrak 2007-11-18 09:23:39 UTC
Taking this for the review.

Comment 5 Jan ONDREJ 2007-11-18 09:44:01 UTC
http://www.salstar.sk/pub/fedora/SRPMS/8/libnss-mysql-1.5-5.fc8.src.rpm

ChangeLog:
* Sun Nov 18 2007 Jan ONDREJ (SAL) <ondrejj(at)salstar.sk> - 1.5-5
- added a patch to build on x86_64 and may be other
- regenerated autoconf to use added patch
- provides cleanup


Comment 6 Lubomir Kundrak 2007-11-26 20:03:08 UTC
* Please fix your buildroot
http://fedoraproject.org/wiki/Packaging/Guidelines#head-b4fdd45fa76cbf54c885ef0836361319ab962473

* This comment makes little sense, please remove it:
# These are not required for package functionality, but it may be better
# to run ldconfig after modifying /usr/lib content and rpmlint is more
# quiet.

* Whis is this provide in place?
Provides:  libnss_mysql = %{version}-%{release}

* Just a tip; Isn't the same thing achieved with autoreconf?
aclocal && autoconf && automake && autoheader

* Please remove the bullets from %description, it might not necessarily look
well in GUI tools.

Comment 7 Jan ONDREJ 2007-11-27 11:14:19 UTC
Updated:
http://www.salstar.sk/pub/fedora/SPECS/libnss-mysql.spec
http://www.salstar.sk/pub/fedora/SRPMS/8/libnss-mysql-1.5-6.fc8.src.rpm

Is it ok with these modified "bullets"?
Or how to specify multiple features in description? I think they are very useful
for users who search for a package with these functions.

%changelog
* Tue Nov 27 2007 Jan ONDREJ (SAL) <ondrejj(at)salstar.sk> - 1.5-6
- updated buildroot according to packaging guidelines
- removed comment before ldconfig
- removed provides libnss_mysql (compatibility with my old packages)
- autoreconf used
- description bullets updated

Comment 8 Jan ONDREJ 2007-11-27 11:52:23 UTC
Spec file updated on URL above to fix formatting for dump text parsers.

Comment 9 Lubomir Kundrak 2007-11-27 12:23:26 UTC
All the outstanding issues have been fixed. The package builds fine in mock,
rpmlint only complains about the config file ont being world-readable, which is
sane, asi it could contain database password.

Therefore, the package is

APPROVED

Comment 10 Jan ONDREJ 2007-11-27 12:45:50 UTC
New Package CVS Request
=======================
Package Name: libnss-mysql
Short Description: NSS library for MySQL
Owners: ondrejj
Branches: FC-6 F-7 F-8 EL-4 EL-5
InitialCC: 
Cvsextras Commits: yes

Comment 11 Kevin Fenzi 2007-11-27 19:46:23 UTC
cvs done (except for the FC-6 branch. We no longer allow FC-6 branches). 

Comment 12 Jan ONDREJ 2007-12-01 07:06:53 UTC
Packages built and releases as testing.
Closing this bug.


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