%define pkgname jabberd %define conference_version 0.6.0 %define jud_version 0.5 %define icq_version 0.2.9.5 # this is a "stable" snapshot from 2003-03-14 (version > 0.9.24c) %define aim_version 20030314 %define msn_version 20031112 %define yahoo_version 2.2.0 Summary: Jabber is an instant messaging System. Name: jabber Version: 1.4.3 Release: 5mdk Source0: http://jabberd.jabberstudio.org/1.4/dist/%{pkgname}-%{version}.tar.bz2 Source2: jabber.initrd Source3: jabber.cfg.bz2 Source4: jabber-icq.xml.bz2 Source5: jabber-icq.initrd Source6: jabber-aim.xml.bz2 Source7: jabber-aim.initrd Source8: jabber-gentestcrt.sh Source10: mu-conference-%{conference_version}.tar.bz2 Source11: jud-%{jud_version}.tar.bz2 Source12: jabber-1.4.2-manpage.bz2 Source13: jabber-conference.xml.bz2 Source14: jabber-conference.initrd Source15: jabber-msn.xml.bz2 Source16: jabber-msn.initrd # transports sources Source20: http://aim-transport.jabberstudio.org/aim-transport-stable-%{aim_version}.tar.bz2 Source21: http://prdownloads.sourceforge.net/icqv7-t/icqv7-t-%{icq_version}.tar.bz2 Source22: http://msn-transport.jabberstudio.org/msn-transport-%{msn_version}.tar.bz2 Source23: http://yahoo-transport-2.jabberstudio.org/yahoo-t-%{yahoo_version}.tar.bz2 # default configuration Patch0: jabber-1.4.3-xmlconfig.patch.bz2 Patch1: libjabber-fix-includes.patch.bz2 # (fc) 1.4.2-1mdk fix registration in icq transport Patch3: icqv7-t-0.2.9.5-fixregistration.patch.bz2 # (fcà 1.4.3-1mdk fix pth detection Patch4: jabber-1.4.3-pth.patch.bz2 # (fc) 1.4.2a-1mdk fix compilation with gcc 3 # patch configure directly, generated one don't work :( Patch5: icqv7-t-0.2.9.5-gcc3.patch.bz2 Patch6: jabber-1.4.2-lib64.patch.bz2 Patch7: jabber-1.4.3-pic.patch.bz2 License: Jabber Open Source License/GPL URL: http://jabberd.jabberstudio.org/ Group: System/Servers PreReq: rpm-helper # used in initscripts but that should be implicit nowadays Requires: file BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildRequires: pth-devel BuildRequires: curl-devel >= 7.10.4 BuildRequires: openssl-devel BuildRequires: libsigc++-devel BuildRequires: glib2-devel BuildRequires: glib-devel %description Jabber is an instant messaging System, similar to ICQ or AIM, yet far different. It is open source, absolutely free, simple, fast, extensible, modularized, cross platform, and created with the future in mind. Jabber has been designed from the ground up to serve the needs of the end user, satisfy business demands, and maintain compatibility with other messaging systems. %package conference Summary: Conferencing service for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} PreReq: rpm-helper %description conference This package contains conference servicing for Jabber server. WARNING : to enable support for this transport, you must : - uncomment conference part in /etc/jabber/jabber.xml - edit /etc/jabber/jabber.xml and /etc/jabber/jabber-conference.xml to replace conference.localhost with conference.your_computer_full_domain_name - configure our DNS server to resolve conference.your_computer_full_domain_name %package jud Summary: Jabber User Directory service for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} %description jud This package contains service directory servicing for Jabber server. Read the documentation for install this service. %package aim Summary: Aim Transport for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} PreReq: rpm-helper %description aim This package contains aim transport for Jabber server. Read the documentation for install this transport. WARNING : to enable support for this transport, you must : - uncomment aim part in /etc/jabber/jabber.xml - edit /etc/jabber/jabber.xml and /etc/jabber/jabber-aim.xml to replace aim.localhost with aim.your_computer_full_domain_name - configure our DNS server to resolve aim.your_computer_full_domain_name - modify /etc/jabber/jabber-aim.xml to get <aimbinarydir> to point to AIM Windows binaries. %package icq Summary: ICQ Transport for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} PreReq: rpm-helper %description icq This package contains icq transport for Jabber server. WARNING : to enable support for this transport, you must : - uncomment icq part in /etc/jabber/jabber.xml - edit /etc/jabber/jabber.xml and /etc/jabber/jabber-icq.xml to replace icq.localhost with icq.your_computer_full_domain_name ans sms.localhost with sms.your_computer_full_domain_name - configure our DNS server to resolve icq.your_computer_full_domain_name and sms.your_computer_full_domain_name %package msn Summary: Msn Transport for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} PreReq: rpm-helper %description msn This package contains msn transport for Jabber server. Read the documentation for install this transport. %package yahoo Summary: Yahoo Transport for Jabber server Group: System/Servers Requires: %{name} = %{version}-%{release} %description yahoo This package contains yahoo transport for Jabber server. Read the documentation for install this transport. %prep %setup -q -a 10 -a 11 -a 20 -a 21 -a 22 -a 23 -n %{pkgname}-%{version} %patch0 -p 1 -b .xmlconfig %patch1 -p 1 -b .fixinclude %patch3 -p 1 -b .fixregistration %patch4 -p 1 -b .pth %patch5 -p 1 -b .gcc3 %patch6 -p 1 -b .lib64 %patch7 -p 1 -b .pic #needed by patch7 cd aim-transport-stable-%{aim_version} automake-1.4 -a cd .. cd msn-transport-1.2.8rc-cvs automake-1.4 -a cd .. #needed by patch7 cd icqv7-t-%{icq_version} automake cd .. %build %serverbuild export JHOME=%{_libdir}/jabber %configure --enable-ssl %make cd jud-ansi-c make cd .. cd mu-conference-%{conference_version} make cd .. cd aim-transport-stable-%{aim_version} %configure2_5x make cd .. cd icqv7-t-%{icq_version} CXXFLAGS="" %configure2_5x --with-jabberd=$RPM_BUILD_DIR/%{pkgname}-%{version} --with-pth-includes=%{_includedir} make cd .. cd msn-transport-1.2.8rc-cvs %configure2_5x --with-jabberd=$RPM_BUILD_DIR/%{pkgname}-%{version}/jabberd --with-pth=%{_includedir} make cd .. cd yahoo-transport-2 make cd .. %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/var/log/jabber $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_initrddir} $RPM_BUILD_ROOT%{_localstatedir}/jabber mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/jabber $RPM_BUILD_ROOT%{_libdir}/jabber $RPM_BUILD_ROOT/var/run/jabber mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/{pthsock,dnsrv,xdb_file,jsm,dialback} install -m 755 jabberd/jabberd $RPM_BUILD_ROOT%{_sbindir} install -m 755 pthsock/pthsock_client.so $RPM_BUILD_ROOT%{_libdir}/jabber/pthsock/pthsock_client.so install -m 755 dnsrv/dnsrv.so $RPM_BUILD_ROOT%{_libdir}/jabber/dnsrv/dnsrv.so install -m 755 xdb_file/xdb_file.so $RPM_BUILD_ROOT%{_libdir}/jabber/xdb_file/xdb_file.so install -m 755 jsm/jsm.so $RPM_BUILD_ROOT%{_libdir}/jabber/jsm/jsm.so install -m 755 dialback/dialback.so $RPM_BUILD_ROOT%{_libdir}/jabber/dialback/dialback.so install -m 744 jabber.xml $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber.xml bzcat %{SOURCE3} > $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber.cfg install -m 755 %{SOURCE8} $RPM_BUILD_ROOT%{_libdir}/jabber/jabber-gentestcrt.sh mkdir -p $RPM_BUILD_ROOT%{_mandir}/man8 bzcat %{SOURCE12} > $RPM_BUILD_ROOT%{_mandir}/man8/jabberd.8 mkdir -p $RPM_BUILD_ROOT/%{_initrddir} $RPM_BUILD_ROOT%{_sysconfdir}/ssl/jabber install -m 755 %{SOURCE2} $RPM_BUILD_ROOT/%{_initrddir}/jabber touch $RPM_BUILD_ROOT/%{_sysconfdir}/ssl/jabber/key.pem cat << EOF > README.ssl A SSL test key has been generated as /etc/ssl/jabber/key.pem To enable SSL support in Jabber, you must modify /etc/jabber/jabber.xml : -uncomment one of the lines <ssl port='5223'>127.0.0.1</ssl> by adding your server IP address (Be sure to include an IP address otherwise, you'll get nothing but a 1Gb error logfile -uncomment one of the lines <key ip='127.0.0.1'>/etc/ssl/jabber/key.pem</key> and replace 127.0.0.1 with your server IP address EOF #jabber service mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/mu-conference install -m 755 mu-conference-%{conference_version}/src/mu-conference.so $RPM_BUILD_ROOT%{_libdir}/jabber/mu-conference bzcat %{SOURCE13} > $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber-conference.xml install -m 755 %{SOURCE14} $RPM_BUILD_ROOT/%{_initrddir}/jabber-conference mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/jud install -m 755 jud-ansi-c/jud.so $RPM_BUILD_ROOT%{_libdir}/jabber/jud # transports # aim-transport mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/aim-transport install -m 755 aim-transport-stable-%{aim_version}/src/aimtrans.so $RPM_BUILD_ROOT%{_libdir}/jabber/aim-transport bzcat %{SOURCE6} > $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber-aim.xml install -m 755 %{SOURCE7} $RPM_BUILD_ROOT/%{_initrddir}/jabber-aim # icq-transport mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/icq-transport install -m 755 icqv7-t-%{icq_version}/jabberd/icqv7t.so $RPM_BUILD_ROOT%{_libdir}/jabber/icq-transport/ install -m 755 icqv7-t-%{icq_version}/icqv7ext $RPM_BUILD_ROOT%{_libdir}/jabber/icq-transport/ bzcat %{SOURCE4} > $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber-icq.xml install -m 755 %{SOURCE5} $RPM_BUILD_ROOT/%{_initrddir}/jabber-icq # msn-transport mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/msn-transport install -m 755 msn-transport-1.2.8rc-cvs/src/msntrans.so $RPM_BUILD_ROOT%{_libdir}/jabber/msn-transport bzcat %{SOURCE15} > $RPM_BUILD_ROOT%{_sysconfdir}/jabber/jabber-msn.xml install -m 755 %{SOURCE16} $RPM_BUILD_ROOT/%{_initrddir}/jabber-msn # yahoo-transport mkdir -p $RPM_BUILD_ROOT%{_libdir}/jabber/yahoo-transport install -m 755 yahoo-transport-2/yahoo-transport.so $RPM_BUILD_ROOT%{_libdir}/jabber/yahoo-transport mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/jabber /var/log/jabber/record.log { monthly rotate 4 notifempty missingok } /var/log/jabber/error.log { size=1M rotate 4 notifempty missingok } EOF %clean rm -rf $RPM_BUILD_ROOT %post if [ ! -f %{_sysconfdir}/ssl/jabber/key.pem ]; then pushd %{_sysconfdir}/ssl/jabber/ > /dev/null yes "" | %{_libdir}/jabber/jabber-gentestcrt.sh > /dev/null 2> /dev/null cat %{_sysconfdir}/ssl/jabber/server.crt %{_sysconfdir}/ssl/jabber/server.key > %{_sysconfdir}/ssl/jabber/key.pem rm -f %{_sysconfdir}/ssl/jabber/server.* chmod 500 %{_sysconfdir}/ssl/jabber/key.pem chown daemon.daemon %{_sysconfdir}/ssl/jabber/key.pem popd > /dev/null fi %_post_service jabber %preun %_preun_service jabber %post icq %_post_service jabber-icq %preun icq %_preun_service jabber-icq %post aim %_post_service jabber-aim %preun aim %_preun_service jabber-aim %post conference %_post_service jabber-conference %preun conference %_preun_service jabber-conference %post msn %_post_service jabber-msn %preun msn %_preun_service jabber-msn %files %defattr(-,root,root) %doc README README.ssl %dir %{_sysconfdir}/jabber %dir %{_sysconfdir}/ssl/jabber %attr(644,daemon,daemon) %config(noreplace) %{_sysconfdir}/jabber/jabber.xml %attr(755,daemon,daemon) %config(noreplace) %{_sysconfdir}/jabber/jabber.cfg %attr(500,daemon,daemon) %ghost %{_sysconfdir}/ssl/jabber/key.pem %config(noreplace) %{_initrddir}/jabber %config(noreplace) %{_sysconfdir}/logrotate.d/jabber %dir %{_libdir}/jabber %attr(755,root,root) %{_libdir}/jabber/jabber-gentestcrt.sh %{_libdir}/jabber/dialback %{_libdir}/jabber/dnsrv %{_libdir}/jabber/jsm %{_libdir}/jabber/pthsock %{_libdir}/jabber/xdb_file %{_sbindir}/* %{_mandir}/man8/* %attr(700,daemon,daemon) %dir %{_localstatedir}/jabber %attr(750,daemon,daemon) %dir /var/log/jabber %attr(700,daemon,daemon) %dir /var/run/jabber %files conference %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc mu-conference-%{conference_version}/README %config(noreplace) %{_initrddir}/jabber-conference %config(noreplace) %{_sysconfdir}/jabber/jabber-conference.xml %{_libdir}/jabber/mu-conference %files jud %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc jud-ansi-c/README %{_libdir}/jabber/jud %files aim %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc aim-transport-stable-%{aim_version}/README %config(noreplace) %{_sysconfdir}/jabber/jabber-aim.xml %config(noreplace) %{_initrddir}/jabber-aim %{_libdir}/jabber/aim-transport %files icq %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc icqv7-t-%{icq_version}/README %{_libdir}/jabber/icq-transport %config(noreplace) %{_initrddir}/jabber-icq %config(noreplace) %{_sysconfdir}/jabber/jabber-icq.xml %files msn %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc msn-transport-1.2.8rc-cvs/README %{_libdir}/jabber/msn-transport %config(noreplace) %{_initrddir}/jabber-msn %config(noreplace) %{_sysconfdir}/jabber/jabber-msn.xml %files yahoo %defattr(-,root,root) %docdir %{_docdir}/%{name} %doc yahoo-transport-2/*.xml yahoo-transport-2/INSTALL %{_libdir}/jabber/yahoo-transport %changelog * Mon Mar 22 2004 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.3-5mdk - Update source 5 : fix Mdk bug #9123 - Update source 14 : fix Mdk bugs #9092 & #9094 - Update source 13 : fix typo in default configuration file - Update patch0 : fix typo in default configuration file * Wed Dec 10 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.3-4mdk - Generate SSL key in the correct directory (bug #6533) * Wed Nov 26 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.3-3mdk - Improve curl buildrequires (Richard Houser) * Fri Nov 21 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.3-2mdk - Fix buildrequires - Fix name of logrotate.d file (rpmlint) - Add rpm-helper prereq (rpmlint) * Tue Nov 18 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.3-1mdk - Release 1.4.3 - Mu-Conference 0.6.0 - Yahoo transport 2.2.0 - MSN transport new CVS snapshot (20031112). - Regenerate patch0 - Remove patches 2 & 7 (merged upstream) - Add logrotate support (Fabrice FACORAT Fabrice, Mdk bug 6258) * Fri Oct 24 2003 Stefan van der Eijk <stefan@eijk.nu> 1.4.2a-11mdk - BuildRequires * Fri Sep 26 2003 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 1.4.2a-10mdk - Correctly build more DSO with PIC * Fri Sep 19 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2a-9mdk - Update msn transport to 1.2.8pre8 to support MSN protocol v8 - Add sources 15/16 : msn configuration file to get running in its own process - Update patch0 : Force binding to localhost to inter-transport communication - Update patch 4 & 7 to not patch Makefile.in anymore * Thu Apr 24 2003 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 1.4.2a-8mdk - Update Patch4 (pth140) to add appropriate -I to builtin pth library in INCLUDES. It does not make sense to override CFLAGS in build since we are losing some extra important flags - Patch6: Make it lib64 aware - Patch7: Build DSO with PIC code * Wed Apr 23 2003 Frederic Crozat <fcrozat@mandrakesoft.com> - 1.4.2a-7mdk - switch conference to mu-conference 0.5.2 and provides a sample configuration file for it, running in its own process - bump AIM transport to "stable" snapshot 2003-03-14 (warning, XDB format has changed, you can't go back to older version of AIM transport once upgraded) - Bump yahoo transport to 2.1.1 (yahoo2 codebase) - Update patch0 to use separate process for conference. * Fri Jan 17 2003 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2a-6mdk - Rebuild against latest openssl * Wed Sep 11 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2a-5mdk - Fix jabber-icq init script to really start icqv7ext process * Wed Aug 14 2002 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 1.4.2-4mdk - Automated rebuild with gcc 3.2-0.3mdk * Fri Aug 9 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2a-3mdk - Remove dependency on pth-devel (gwenole) * Sun Aug 4 2002 Stefan van der Eijk <stefan@eijk.nu> 1.4.2a-2mdk - BuildRequires & BuildConflicts * Fri Jul 19 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2a-1mdk - Release 1.4.2a - Update patch 0 to fix spool location (Debian) and reflect new location of SSL keys - don't set JABBER_SPOOL in jabber.cfg - Patch4 (Debian): use embedded libpth 1.4.0 (other versions cause problems in jabberd) - Patch5 : Fix compilation with gcc 3 - Add manpage (Debian) - Move SSL certificates to /etc/ssl/jabber - Update AIM transport snapshot (2002-07-11) * Thu May 2 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.2-1mdk - Release 1.4.2 - ICQ transport with back with ICQv7 protocol support (new implementation) - Update aim, yahoo and msn transports with "stable" snapshots - Update patch0: ship with plain text authentication enabled (otherwise some clients can't register new users) - Enable SSL (not enabled in config file yet) - Patch2 (CVS): fix invisible support - Patch3 : fix ICQ registration support * Wed Mar 13 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.1-5mdk - aim transport obsoletes icq transport (since icq transport doesn't support ICQv7 and eats all memory :(( * Fri Jan 11 2002 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.1-4mdk - Add missing files (don't try to use ^ regex in file list :( - Update aim transport to 0.9.24c (now also support ICQ v7 protocol) - Add config file for aim transport - Fix initscripts * Wed Sep 19 2001 Vincent Saugey <vince@mandrakesoft.com> 1.4.1-3mdk - Change file list * Thu Sep 13 2001 Vincent Saugey <vince@mandrakesoft.com> 1.4.1-2mdk - New snapshot 200010913 for icq-transport - Add aim, conference, jud, msn and yahoo transport - Add buid pth-devel require * Thu May 3 2001 Frederic Crozat <fcrozat@mandrakesoft.com> 1.4.1-1mdk - Release 1.4.1 - Update patch 0 - Replace source 0 by icq-transport (CVS snapshot from 20010503) * Fri Mar 30 2001 Frederic Lepied <flepied@mandrakesoft.com> 1.2-6mdk - corrected server macros usage * Thu Mar 29 2001 Vincent Saugey <vince@mandrakesoft.com> 1.2-5mdk - Adding macro for buildserver (for libsafe) - Change post and pre * Wed Mar 14 2001 Guillaume Cottenceau <gc@mandrakesoft.com> 1.2-4mdk - fix compile (fix includes for glibc-2.2.2) * Mon Jan 15 2001 Frederic Crozat <fcrozat@mandrakesoft.com> 1.2-3mdk - Fix start script again for reload this time !! * Mon Jan 15 2001 Frederic Crozat <fcrozat@mandrakesoft.com> 1.2-2mdk - Fix starting script * Fri Dec 29 2000 Frederic Crozat <fcrozat@mandrakesoft.com> 1.2-1mdk - Release 1.2 - Merge initscript from Bernd Eckenfels <ecki@debian.org> * Tue Oct 3 2000 Vincent Saugey <vince@mandrakesoft.com> 1.0.1-3mdk - Add build requires * Fri Sep 8 2000 Vincent Saugey <vince@mandrakesoft.com> 1.0.1-2mdk - Correct init script - change default config file * Thu Sep 7 2000 Vincent Saugey <vince@mandrakesoft.com> 1.0.1-1mdk - Up to 1.0.1 * Thu Aug 31 2000 Vincent Saugey <vince@mandrakesoft.com> 1.0-1mdk - Fisrt mdk release