BLOG
Feb 07 2010
Posted by chl @ 8:59pm UTC
I’ve built RPM packages for MongoDB 1.2.2 that are native to RHEL5 / CentOS5 systems. They’re in my Yum repository now. Note that I’ve also built newer packages for the Boost libraries because Mongo likes newer versions than the ones bundled with the distro. Packages are available for i386 as well as x86_64, and there are source packages of course as well. Enjoy.


[...] systems (which provide structured schemas and powerful queries).This guide uses EPEL-repository and Chris Lea’s Yum Repository where you can find MongoDB RPM packages for CentOS and Red Hat (RHE….Install MongoDB on Fedora, CentOS and Red Hat (RHEL) LinuxChange to root Usersu – ## OR ## sudo [...]
Are you going to send it up to Fedora/CentOS proper? I could see this being very helpful!
Updated spec for 1.2.4. If you can get this work into Fedora/EPEL then I’ll be able to submit my pymongo spec.
========
Name: mongo
Version: 1.2.4
Release: 1%{?dist}
Summary: mongo client shell and tools
License: AGPL 3.0
URL: http://www.mongodb.org
Group: Applications/Databases
Source0: %{name}db-src-r%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: js-devel, readline-devel, boost-devel >= 1.35, pcre-devel
BuildRequires: gcc-c++, scons
Requires: boost >= 1.35
%description
Mongo (from “huMONGOus”) is a schema-free document-oriented database.
It features dynamic profileable queries, full indexing, replication
and fail-over support, efficient storage of large binary data objects,
and auto-sharding.
This package provides the mongo shell, import/export tools, and other
client utilities.
%package server
Summary: mongo server, sharding server, and support scripts
Group: Applications/Databases
%description server
Mongo (from “huMONGOus”) is a schema-free document-oriented database.
This package provides the mongo server software, mongo sharding server
softwware, default configuration files, and init.d scripts.
%package devel
Summary: Headers and libraries for mongo development.
Group: Applications/Databases
%description devel
Mongo (from “huMONGOus”) is a schema-free document-oriented database.
This package provides the mongo static library and header files needed
to develop mongo client software.
%prep
%setup -n %{name}db-src-r%{version}
%build
scons –prefix=$RPM_BUILD_ROOT/usr all
# XXX really should have shared library here
%install
scons –prefix=$RPM_BUILD_ROOT/usr install
mkdir -p $RPM_BUILD_ROOT/usr/share/man/man1
cp debian/*.1 $RPM_BUILD_ROOT/usr/share/man/man1/
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
cp rpm/init.d-mongod $RPM_BUILD_ROOT/etc/rc.d/init.d/mongod
chmod a+x $RPM_BUILD_ROOT/etc/rc.d/init.d/mongod
mkdir -p $RPM_BUILD_ROOT/etc
cp rpm/mongod.conf $RPM_BUILD_ROOT/etc/mongod.conf
mkdir -p $RPM_BUILD_ROOT/var/lib/mongo
mkdir -p $RPM_BUILD_ROOT/var/log
touch $RPM_BUILD_ROOT/var/log/mongo
%clean
scons -c
rm -rf $RPM_BUILD_ROOT
%pre server
#/usr/sbin/useradd -M -o -r -d /var/mongo -s /bin/bash \
# -c “mongod” mongod > /dev/null 2>&1 || :
%post server
if test $1 = 1
then
/sbin/chkconfig –add mongod
fi
%preun server
if test $1 = 0
then
/sbin/chkconfig –del mongod
fi
%postun server
if test $1 -ge 1
then
/sbin/service mongod stop >/dev/null 2>&1 || :
fi
%files
%defattr(-,root,root,-)
%doc README GNU-AGPL-3.0.txt
%{_bindir}/mongo
%{_bindir}/mongodump
%{_bindir}/mongoexport
%{_bindir}/mongofiles
%{_bindir}/mongoimport
%{_bindir}/mongorestore
%{_mandir}/man1/mongo.1*
%{_mandir}/man1/mongodump.1*
%{_mandir}/man1/mongoexport.1*
%{_mandir}/man1/mongofiles.1*
%{_mandir}/man1/mongoimport.1*
%{_mandir}/man1/mongorestore.1*
%{_mandir}/man1/mongos.1*
%files server
%defattr(-,root,root,-)
%config(noreplace) /etc/mongod.conf
%{_bindir}/mongod
%{_bindir}/mongos
%{_mandir}/man1/mongod.1*
%{_mandir}/man1/mongos.1*
%{_mandir}/man1/mongosniff.1.gz
/etc/rc.d/init.d/mongod
#/etc/sysconfig/mongod
#/etc/rc.d/init.d/mongos
%attr(0755,root,root) %dir /var/lib/mongo
%attr(0640,root,root) %config(noreplace) %verify(not md5 size mtime) /var/log/mongo
%files devel
/usr/include/mongo
%{_libdir}/libmongoclient.a
#%{_libdir}/libmongotestfiles.a
%changelog
* Sat Mar 13 2010 Steve ‘Ashcrow’ Milner – 1.2.4-1
- Upgrade for upstream release.
* Tue Feb 02 2010 Chris Lea – 1.2.2
- Depend on boost >= 1.35
* Thu Jan 28 2010 Chris Lea – 1.2.2
- Bump to 1.2.2
* Sat Jan 02 2010 Chris Lea – 1.2.1
- Bump to 1.2.1
* Sat Oct 24 2009 Joe Miklojcik -
- Wrote mongo.spec.