Adam Tkac 6549321
%global		releasenum 2014-09-29b
Adam Tkac 6549321
%global		releasetag 20140929b
88d46a9
b1c0532
Name:		dokuwiki
b1c0532
Version:	0
Adam Tkac 6549321
Release:	0.23.%{releasetag}%{?dist}
b1c0532
Summary:	Standards compliant simple to use wiki
b1c0532
Group:		Applications/Internet
b1c0532
License:	GPLv2
b1c0532
URL:		http://www.dokuwiki.org/dokuwiki
88d46a9
Source0:	http://download.dokuwiki.org/src/%{name}/%{name}-%{releasenum}.tgz
b1c0532
#Fedora specific patches to use fedora packaged libraries
b2edf8a
Patch1:		dokuwiki-rm-bundled-libs.patch
b1c0532
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
b1c0532
BuildArch:	noarch
b1c0532
Requires:	php-gd
b1c0532
Requires:	php-geshi
b1c0532
#Requires:	php-simplepie
b1c0532
Requires:	php-email-address-validation
Adam Tkac 6549321
Requires:	php-xml
b1c0532
b1c0532
%description
b1c0532
DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating 
b1c0532
documentation of any kind. It has a simple but powerful syntax which makes sure 
b1c0532
the datafiles remain readable outside the Wiki and eases the creation of 
b1c0532
structured texts. 
b1c0532
b1c0532
All data is stored in plain text files no database is required. 
b1c0532
b2edf8a
%package selinux
b2edf8a
Summary:	SElinux support for dokuwiki
b2edf8a
Requires:	%name = %version-%release
Adam Tkac bf610a2
Requires:	policycoreutils
Adam Tkac bf610a2
%if 0%{?rhel} > 5 || 0%{?fedora} 
Adam Tkac bf610a2
Requires:	policycoreutils-python
Adam Tkac bf610a2
%endif
Adam Tkac bf610a2
Group:		Applications/Internet
b2edf8a
BuildArch:	noarch
b2edf8a
b2edf8a
%description selinux
b2edf8a
Configures DokuWiki to run in SELinux enabled environments.
b2edf8a
b1c0532
%prep
88d46a9
%setup -q -n %{name}-%{releasenum}
Adam Tkac 4a2b630
Adam Tkac 4a2b630
# Remove bundled code
Adam Tkac 4a2b630
rm inc/EmailAddressValidator.php
Adam Tkac 4a2b630
rm -r inc/geshi
Adam Tkac 4a2b630
b1c0532
%patch1 -p1 
b2edf8a
b2edf8a
chmod a-x inc/lang/az/*.{txt,html}
b1c0532
b1c0532
mv -f conf/mysql.conf.php.example .
b1c0532
b1c0532
sed -i "s:'./data':'%{_localstatedir}/lib/%{name}/data':" conf/%{name}.php
b1c0532
sed -i "s:ALL        8:ALL        1:" conf/acl.auth.php.dist
b1c0532
b1c0532
cat <<EOF >%{name}.httpd
b1c0532
# %{name}
b1c0532
# %{summary}
b1c0532
# %{version}
b1c0532
#
b1c0532
b1c0532
Alias /%{name} %{_datadir}/%{name}
b1c0532
b1c0532
<Directory %{_datadir}/%{name}>
Johan Cwiklinski d0a14ce
	<IfModule mod_authz_core.c>
Johan Cwiklinski d0a14ce
		# Apache 2.4
Johan Cwiklinski d0a14ce
		Require local
Johan Cwiklinski d0a14ce
	</IfModule>
Johan Cwiklinski d0a14ce
	<IfModule !mod_authz_core.c>
Johan Cwiklinski d0a14ce
		# Apache 2.2
Johan Cwiklinski d0a14ce
		Options +FollowSymLinks
Johan Cwiklinski d0a14ce
		Order Allow,Deny
Johan Cwiklinski d0a14ce
		Allow from 127.0.0.1 ::1
Johan Cwiklinski d0a14ce
	</IfModule>
b1c0532
</Directory>
b1c0532
b1c0532
<Directory %{_datadir}/%{name}/inc>
b1c0532
	Order Deny,Allow
b1c0532
	Deny from all
b1c0532
</Directory>
b1c0532
b1c0532
<Directory %{_datadir}/%{name}/inc/lang>
b1c0532
	Order Deny,Allow
b1c0532
	Deny from all
b1c0532
</Directory>
b1c0532
ad46a98
<Directory %{_datadir}/%{name}/lib/_fla>
ad46a98
	## no access to the fla directory
ad46a98
	Order allow,deny
ad46a98
	Deny from all
ad46a98
</Directory>
ad46a98
b1c0532
<Directory %{_sysconfdir}/%{name}>
b1c0532
	Order Deny,Allow
b1c0532
	Deny from all
b1c0532
</Directory>
b1c0532
b1c0532
EOF
b1c0532
b2edf8a
cat <<EOF >DOKUWIKI-SELINUX.README
b2edf8a
%{name}-selinux
b2edf8a
====================
b2edf8a
b2edf8a
This package configures dokuwiki to run in
b2edf8a
SELinux enabled environments
b2edf8a
b2edf8a
EOF
b2edf8a
b1c0532
%build
b1c0532
# nothing to do here
b1c0532
b1c0532
%install
b1c0532
rm -rf $RPM_BUILD_ROOT
b1c0532
install -d -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
b1c0532
install -d -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
b1c0532
install -d -p $RPM_BUILD_ROOT%{_datadir}/%{name}
b1c0532
install -d -p $RPM_BUILD_ROOT%{_datadir}/%{name}/bin
b1c0532
install -d -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
76baa02
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/data/{index,tmp,media,attic,pages,cache,meta,locks,media_attic,media_meta}
b1c0532
rm -f install.php
b1c0532
rm -rf inc/geshi*
b1c0532
rm -f inc/EmailAddressValidator.php
b1c0532
rm -f inc/.htaccess
b1c0532
rm -f inc/lang/.htaccess
ad46a98
rm -f lib/_fla/{.htaccess,README}
b1c0532
rm -f lib/plugins/revert/lang/sk/intro.txt
b1c0532
cp -rp data/pages/* $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/data/pages/
b1c0532
cp -rp conf/* $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
b1c0532
cp -rp bin/*  $RPM_BUILD_ROOT%{_datadir}/%{name}/bin
b1c0532
cp -rp lib  $RPM_BUILD_ROOT%{_datadir}/%{name}/
b1c0532
cp -rp inc  $RPM_BUILD_ROOT%{_datadir}/%{name}/
b1c0532
install -p -m0644 *.php $RPM_BUILD_ROOT%{_datadir}/%{name}
b1c0532
install -p -m0644 %{name}.httpd $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{name}.conf
b1c0532
b1c0532
pushd $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
b1c0532
for d in *.dist; do
b1c0532
	d0=`basename $d .dist`
b1c0532
	if [ ! -f "$d0" ]; then
b1c0532
		mv -f $d $d0
b1c0532
	fi
b1c0532
done
b1c0532
popd
b1c0532
b1c0532
pushd $RPM_BUILD_ROOT%{_datadir}/%{name}
b1c0532
	ln -sf ../../../etc/%name conf
b1c0532
popd
b1c0532
b1c0532
%clean
b1c0532
rm -rf $RPM_BUILD_ROOT
b1c0532
b2edf8a
%post selinux
Adam Tkac 6549321
semanage fcontext -a -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}(/.*)?' 2>/dev/null || :
b2edf8a
semanage fcontext -a -t httpd_sys_content_t '%{_datadir}/%{name}(/.*)?' 2>/dev/null || :
Adam Tkac 6549321
semanage fcontext -a -t httpd_sys_rw_content_t '%{_datadir}/%{name}/lib/plugins(/.*)?' 2>/dev/null || :
b2edf8a
restorecon -R '%{_sysconfdir}/%{name}' || :
b2edf8a
restorecon -R '%{_datadir}/%{name}' || :
b2edf8a
b2edf8a
%postun selinux
b2edf8a
if [ $1 -eq 0 ] ; then
Adam Tkac 6549321
semanage fcontext -d -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}(/.*)?' 2>/dev/null || :
b2edf8a
semanage fcontext -d -t httpd_sys_content_t '%{_datadir}/%{name}(/.*)?' 2>/dev/null || :
Adam Tkac 6549321
semanage fcontext -d -t httpd_sys_rw_content_t '%{_datadir}/%{name}/lib/plugins(/.*)?' 2>/dev/null || :
b2edf8a
fi
b2edf8a
b2edf8a
b1c0532
%files
b1c0532
%defattr(-,root,root,-)
b1c0532
%doc COPYING README VERSION mysql.conf.php.example
b1c0532
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
b1c0532
%config(noreplace) %attr(0644,apache,apache) %{_sysconfdir}/%{name}/*
b1c0532
%dir %attr(0755,apache,apache) %{_sysconfdir}/%{name}
b1c0532
%attr(0755,apache,apache) %{_datadir}/%{name}/bin/*.php
b1c0532
%dir %{_datadir}/%{name}
b1c0532
%{_datadir}/%{name}/conf
b1c0532
%{_datadir}/%{name}/*.php
b1c0532
%dir %{_datadir}/%{name}/lib
b1c0532
%{_datadir}/%{name}/lib/exe
b1c0532
%{_datadir}/%{name}/lib/images
b1c0532
%{_datadir}/%{name}/lib/index.html
b1c0532
%{_datadir}/%{name}/lib/scripts
b1c0532
%{_datadir}/%{name}/lib/styles
b1c0532
%{_datadir}/%{name}/lib/tpl
37b2762
#%{_datadir}/%{name}/lib/_fla
b1c0532
%attr(0755,apache,apache) %dir %{_datadir}/%{name}/lib/plugins
b1c0532
%{_datadir}/%{name}/lib/plugins/*
b1c0532
%{_datadir}/%{name}/inc
b1c0532
%dir %{_localstatedir}/lib/%{name}
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/media
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/attic
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/cache
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/meta
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/locks
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/tmp
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/index
76baa02
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/media_attic
76baa02
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/media_meta
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/pages
b1c0532
%attr(0755,apache,apache) %dir %{_localstatedir}/lib/%{name}/data/pages/wiki
b1c0532
%{_localstatedir}/lib/%{name}/data/pages/*/*
b1c0532
b2edf8a
%files selinux
b2edf8a
%defattr(-,root,root,-)
b2edf8a
%doc DOKUWIKI-SELINUX.README
b2edf8a
b1c0532
%changelog
Adam Tkac 6549321
* Fri Dec 26 2014 Adam Tkac <vonsch@gmail.com> - 0.0.23.20140929b
Adam Tkac 6549321
- update to the latest upstream
Adam Tkac 6549321
- drop requirement of httpd (#1164396)
Adam Tkac 6549321
- fix SELinux file contexts (#1064524)
Adam Tkac 6549321
- require php-xml (#1061477)
Adam Tkac 6549321
34fae1c
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.22.20131208
34fae1c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
34fae1c
eb2c099
* Thu Dec 12 2013 Adam Tkac <vonsch@gmail.com> - 0-0.21.20131208
18fdb21
- fix upstream source link
88d46a9
- use macros for dokuwiki release numbers
eb2c099
- update to the latest upstream
18fdb21
Adam Tkac bf610a2
* Tue Sep 03 2013 Adam Tkac <vonsch@gmail.com> - 0-0.20.20130510a
Adam Tkac bf610a2
- fix Requires for EL5, #967975 (patch by Charles R. Anderson)
Adam Tkac bf610a2
Adam Tkac 823bdc3
* Tue Sep 03 2013 Adam Tkac <vonsch@gmail.com> - 0-0.19.20121013
Adam Tkac 823bdc3
- update to the latest upstream
Adam Tkac 823bdc3
Adam Tkac 823bdc3
* Tue Sep 03 2013 Adam Tkac <vonsch@gmail.com> - 0-0.18.20121013
Adam Tkac 4a2b630
- remove bundled code in specfile instead of via patch
Adam Tkac 4a2b630
926c8f2
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.17.20121013
926c8f2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
926c8f2
7605600
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.16.20121013
7605600
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
7605600
87ba3f5
* Sun Dec 02 2012 Johan Cwiklinski <johan AT x-tnd DOT be> - 0-0.15.20121013
87ba3f5
- Fix apache config file for httpd 2.4, #871388
Johan Cwiklinski d0a14ce
76baa02
* Sat Oct 20 2012 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.14.20121013
76baa02
- Latest upstream
76baa02
- Fix Bugzilla bugs #844726, #840255, #795487, #741384, #840686, #835145
76baa02
37b2762
* Thu Aug 02 2012 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.13.20120125.b
37b2762
- Latest upstream
37b2762
- Fix Bugzilla bugs #844726, #840255, #795487, #741384, #840686, #835145
37b2762
 
7b8eb2e
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.12.20110525.a
7b8eb2e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
7b8eb2e
645bf20
* Tue Apr 24 2012 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.11.20110525.a
645bf20
- Fix CVE-2012-2129
645bf20
- Fix Bugzilla bugs #815123
645bf20
4fa3d3c
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.10.20110525.a
4fa3d3c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
4fa3d3c
a8a42ab
* Tue Jun 28 2011 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.9.20110525.a
873802b
- Upgrade to latest upstream
873802b
- Fix Bugzilla bugs #717146, #717149, #717148, #715569
4aeb10a
a8a42ab
* Sun Mar 13 2011 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.8.20101107.a
a8a42ab
- Fix genshi path
a8a42ab
a8a42ab
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.7.20101107.a
a8a42ab
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
a8a42ab
a8a42ab
* Mon Jan 17 2011 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.6.20101107.a
a8a42ab
- Fix selinux sub package
a8a42ab
b2edf8a
* Mon Jan 17 2011 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.5.20101107.a
b2edf8a
- Upgrade to latest upstream
b2edf8a
- Split package to create selinux package
b2edf8a
- Fix Bugzilla bug #668386
b2edf8a
610a188
* Tue Jan 19 2010 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.4.20091225.c
610a188
- Fix CSRF bug Secunia advisory SA38205, dokuwiki bug #1853
610a188
- Fix Security ACL bypass bug Secunia advisory SA38183, dokuwiki bug #1847
610a188
- Upgrade to the latest upstream
610a188
- Fix bugzilla bug #556494
610a188
dca4bbf
* Tue Dec 15 2009 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.3.20091202.rc
dca4bbf
- Fix versioning
dca4bbf
ad46a98
* Fri Dec 04 2009 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.1.20091202.rc
ad46a98
- Upgrade to new upstream
dca4bbf
- Fix bugzilla bug #544257
ad46a98
b1c0532
* Fri Aug 07 2009 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.2.20090214.b
b1c0532
- Fixes requested by reviewer
b1c0532
b1c0532
* Thu Aug 06 2009 Andrew Colin Kissa <andrew@topdog.za.net> - 0-0.1.20090214.b
b1c0532
- Initial package