atheme/atheme.spec

129 lines
4.0 KiB
RPMSpec

#
# spec file for package atheme
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: atheme
Version: 6.0.9
Release: 0
%define pkg_name atheme-services
#
#
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: libmowgli-devel >= 0.7.0
BuildRequires: libopenssl-devel
BuildRequires: openldap2-devel
BuildRequires: pcre-devel
BuildRequires: pkgconfig
BuildRequires: xz
%define atheme_home /var/lib/atheme
%define atheme_log /var/log/atheme
%define atheme_run /var/run/atheme
#
Url: http://www.atheme.net/
#Git-Clone: git://git.atheme.org/atheme
#DL-URL: http://atheme.net/downloads/atheme-services-6.0.9.tar.bz2
Source: %name-services-%version.tar.xz
Source1: atheme.init
Patch1: atheme-lockmodes.diff
Patch2: atheme-config.diff
#
Summary: A portable, secure set of open source, modular IRC services
License: BSD-3-Clause
Group: Productivity/Networking/IRC
Requires(pre): pwdutils
%description
Atheme is a portable, secure set of open source, modular IRC services released
under the BSD license, designed to run on many IRCds.
Unlike alternative packages, Atheme's core is minimalistic, providing only core
functionality. Atheme is a complete services set, excluding features designed
for oper abuse.
%prep
%setup -qn %name-services-%version
%patch -P 1 -P 2 -p1
# use system libmowgli
rm -Rf libmowgli;
%build
%if 0%{?suse_version} > 1000 && 0%{?suse_version} < 1030
export CFLAGS="%{optflags} -fstack-protector"
%endif
%configure \
--sysconfdir=%{_sysconfdir}/%{name} \
--bindir=%{_sbindir} \
--docdir=%{_docdir}/%name \
--enable-fhs-paths \
--enable-warnings \
--enable-large-net \
--with-pcre \
--enable-contrib
make %{?_smp_mflags}
%install
%makeinstall DOCDIR=%{_docdir}/%{name}
# additional documentation
%{__install} -m 0644 contrib/*.php contrib/*.pl TODO %{buildroot}%{_docdir}/%{name}
#%{__mv} -v %{buildroot}%{_sysconfdir}/%{name}/atheme.chk.sample %{buildroot}%{_docdir}/%{name}
# init scripts
%{__install} -D -m 0755 %{S:1} %{buildroot}%{_sysconfdir}/init.d/%{name}
%{__ln_s} -f %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
# config files
# TODO: check if we should change any defaults and patch it.
%{__cp} -v %{buildroot}%{_sysconfdir}/%{name}/atheme.conf{.example,}
%{__cp} -v %{buildroot}%{_sysconfdir}/%{name}/atheme.motd{.example,}
%find_lang %name
%pre
/usr/bin/getent group atheme >/dev/null 2>/dev/null || \
/usr/sbin/groupadd -r atheme >/dev/null || :;
/usr/bin/getent passwd atheme >/dev/null 2>/dev/null || \
/usr/sbin/useradd -r -o -g atheme -s /bin/false \
-c "%{name} daemon" -d %{atheme_home} atheme >/dev/null || :;
%preun
%stop_on_removal %{name}
%post
%fillup_and_insserv %{name}
%postun
%restart_on_update %{name}
%insserv_cleanup
%files -f %{name}.lang
%defattr(-,root,root,-)
%{_sysconfdir}/init.d/%{name}
%{_sbindir}/rc%{name}
%dir %attr(750,root,atheme) %{_sysconfdir}/%{name}
%config(noreplace) %attr(640,root,atheme) %{_sysconfdir}/%{name}/atheme.conf
%config(noreplace) %attr(640,root,atheme) %{_sysconfdir}/%{name}/atheme.motd
%{_sysconfdir}/%{name}/*example
%{_sbindir}/atheme-services
%{_libdir}/%{name}
%{_datadir}/%{name}
%doc %{_docdir}/%{name}
%dir %attr(750,atheme,atheme) %{atheme_home}
%dir %attr(750,atheme,atheme) %{atheme_run}
%dir %attr(750,atheme,atheme) %{atheme_log}
%changelog