diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4407796 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +Zikula-1.2.3.zip diff --git a/dead.package b/dead.package deleted file mode 100644 index cca5b8f..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -Retired on 2014-07-06 in preparation to branch Fedora 21 because it failed to build for two releases (FTBFS Cleanup) diff --git a/sources b/sources new file mode 100644 index 0000000..2499d06 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +7641cfd362c8cf9e1ca5f4ecdd9ce44c Zikula-1.2.3.zip diff --git a/zikula-1.2.3-config.patch b/zikula-1.2.3-config.patch new file mode 100644 index 0000000..c320a35 --- /dev/null +++ b/zikula-1.2.3-config.patch @@ -0,0 +1,12 @@ +--- config/config.php.diff 2009-10-12 09:14:24.000000000 -0400 ++++ config/config.php 2009-12-06 00:33:45.060521101 -0500 +@@ -37,7 +37,7 @@ + global $PNConfig; + $PNConfig['System']['installed'] = 0; // installer will change this during installation + $PNConfig['System']['tabletype'] = 'myisam'; // installer will change this during installation +-$PNConfig['System']['temp'] = 'pnTemp'; // installer will change this during installation ++$PNConfig['System']['temp'] = '/var/lib/zikula/pnTemp'; // installer will change this during installation + $PNConfig['System']['prefix'] = 'z'; // installer will change this during installation + $PNConfig['System']['development'] = 0; // should be set to 0/false when cutting a release for production use + $PNConfig['System']['default_timezone'] = 'GMT'; // TZ timezone + diff --git a/zikula.conf b/zikula.conf new file mode 100644 index 0000000..516376b --- /dev/null +++ b/zikula.conf @@ -0,0 +1,148 @@ +#conf file for dedicated server installs of Zikula. +# v0.1 David Nalley - Initial consolidation of .htaccess files from Zikulasource +# v0.2 Remi Collet - httpd 2.2/2.4 compatibility +# +Alias /zikula /usr/share/zikula + + php_flag display_errors Off + + + # Apache 2.4 + Require all granted + + + order deny,allow + allow from all + + + + + Options -Indexes + SetEnvIf Request_URI "\.css$" object_is_css=css + SetEnvIf Request_URI "\.js$" object_is_js=js + SetEnvIf Request_URI "\.jpg$" object_is_jpg=jpg + SetEnvIf Request_URI "\.gif$" object_is_gif=gif + SetEnvIf Request_URI "\.png$" object_is_png=png + SetEnvIf Request_URI "\.tif$" object_is_tif=tif + + # Apache 2.4 + Require env object_is_css object_is_js object_is_jpg object_is_gif object_is_png object_is_tif + + + Order deny,allow + Deny from all + Allow from env=object_is_css + Allow from env=object_is_js + Allow from env=object_is_jpg + Allow from env=object_is_gif + Allow from env=object_is_png + Allow from env=object_is_tif + + + + + Options -Indexes + SetEnvIf Request_URI "\.css$" object_is_css=css + SetEnvIf Request_URI "\.js$" object_is_js=js + SetEnvIf Request_URI "\.jpg$" object_is_jpg=jpg + SetEnvIf Request_URI "\.gif$" object_is_gif=gif + SetEnvIf Request_URI "\.png$" object_is_png=png + SetEnvIf Request_URI "\.tif$" object_is_tif=tif + SetEnvIf Request_URI "\.swf$" object_is_swf=swf + + # Apache 2.4 + Require env object_is_css object_is_js object_is_jpg object_is_gif object_is_png object_is_tif object_is_swf + + + Order deny,allow + Deny from all + Allow from env=object_is_css + Allow from env=object_is_js + Allow from env=object_is_jpg + Allow from env=object_is_gif + Allow from env=object_is_png + Allow from env=object_is_tif + Allow from env=object_is_swf + + + + + Options -Indexes + SetEnvIf Request_URI "\.css$" object_is_css=css + SetEnvIf Request_URI "\.js$" object_is_js=js + SetEnvIf Request_URI "\.jpg$" object_is_jpg=jpg + SetEnvIf Request_URI "\.gif$" object_is_gif=gif + SetEnvIf Request_URI "\.png$" object_is_png=png + SetEnvIf Request_URI "\.tif$" object_is_tif=tif + SetEnvIf Request_URI "\.swf$" object_is_swf=swf + SetEnvIf Request_URI "\.flv$" object_is_flv=flv + SetEnvIf Request_URI "\.ico$" object_is_ico=ico + + # Apache 2.4 + Require env object_is_css object_is_js object_is_jpg object_is_gif object_is_png object_is_tif object_is_swf object_is_flv object_is_ico + + + Order deny,allow + Deny from all + Allow from env=object_is_css + Allow from env=object_is_js + Allow from env=object_is_jpg + Allow from env=object_is_gif + Allow from env=object_is_png + Allow from env=object_is_tif + Allow from env=object_is_swf + Allow from env=object_is_flv + Allow from env=object_is_ico + + + + + Options -Indexes + SetEnvIf Request_URI "\.css$" object_is_css=css + SetEnvIf Request_URI "\.js$" object_is_js=js + + # Apache 2.4 + Require env object_is_css object_is_js + + + Order deny,allow + Deny from all + Allow from env=object_is_css + Allow from env=object_is_js + + + + + Options -Indexes + Order deny,allow + # Works with Apache 2.2 or 2.4 (mod_access_compat) + Deny from all + + + + Options -Indexes + SetEnvIf Request_URI "\.html$" object_is_html=html + + # Apache 2.4 + Require env object_is_html + + + Allow from env=object_is_html + + + + + Options -Indexes + SetEnvIf Request_URI "\.css$" object_is_css=css + SetEnvIf Request_URI "\.js$" object_is_js=js + + # Apache 2.4 + Require env object_is_css object_is_js + + + Order deny,allow + Deny from all + Allow from env=object_is_css + Allow from env=object_is_js + + diff --git a/zikula.spec b/zikula.spec new file mode 100644 index 0000000..d5df888 --- /dev/null +++ b/zikula.spec @@ -0,0 +1,216 @@ +Name: zikula +Version: 1.2.3 +Release: 6%{?dist} +Summary: Zikula is a free open source Web Application Framework +Group: Applications/Publishing +License: GPLv2+ +# There is some content in this package that is LGPL with the bulk +# GPLv2+ thus overall package should be GPLv2+ +URL: http://www.zikula.org/ +Source0: Zikula-%{version}.zip +#URL for source is http://zikula.org/CMS/Download/ +Source1: zikula.conf +#this is being discussed upstream - for the moment it is a fedora only file +#see http://groups.google.com/group/zikula-discussions/browse_thread/thread/2f44d45a975d1515/ +Patch0: %{name}-%{version}-config.patch +#Patch is recorded in ticket 901 on the zikula trac instance +Patch1: %{name}hash.patch +#Patch changes the sha256 hash function that's called to use php5's implementation. +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch +Requires: httpd +Requires: php >= 5.1.2 +Requires: php-mysql >= 5.1.2 +Requires: php-pgsql >= 5.1.2 +Requires: php-Smarty +Requires: php-mcrypt +Requires: php-adodb +Requires: php-simplepie +Requires: php-IDNA_Convert +Requires: php-mbstring +Requires: symlinks +BuildRequires: dos2unix +Requires(post): symlinks +Requires(pre): policycoreutils + +%description +A free open source Web Application Framework. +It can be used to develop robust, secure, interactive and +editable websites and web based applications. Zikula is written +in PHP, object oriented, and fully modular. It requires a database + and may use all leading database platforms like MySQL, +PostgreSQL and Microsoft SQL Server. +Zikula is the successor to the PostNuke project. + +%pre +semanage fcontext -a -t httpd_var_run_t %{_sysconfdir}/%{name}/config.php > /dev/null 2>&1 || : +semanage fcontext -m -t httpd_var_run_t %{_sysconfdir}/%{name}/config.php > /dev/null 2>&1 || : + +%prep +%setup -qn Zikula-%{version} +%patch0 -p0 +%patch1 -p0 +find . -type f -perm 755 -exec chmod 0644 '{}' \; +#find . \( -name "*.php" -o -name "*.txt" -o -name "*htm*" -o -name "*.css" -o -name "*.js" -o -name "*.ini" \) -exec chmod 0644 '{}' \; +chmod -x docs/COPYING +%build +#nothing really for this section but rpmbuild complains if build is empty + +%install +rm -rf %{buildroot} +%{__mkdir} -p %{buildroot}/%{_datadir}/%{name} +%{__mkdir} -p %{buildroot}/%{_localstatedir}/lib/%{name} +%{__mkdir} -p %{buildroot}/%{_sysconfdir}/%{name} +%{__mkdir} -p %{buildroot}/%{_sysconfdir}/httpd/conf.d/ + +# Following are deleted as Zikula checks the internal system looking for these libs +# before using the 'bundled' versions. +rm -rf includes/classes/encryption +rm -rf includes/classes/hashes +rm -rf includes/classes/JSON + +# Following are deleted and symlinks will be created below to link to the +# appropriate site packages. +rm -rf includes/classes/Smarty +rm -rf includes/classes/adodb +rm -rf includes/classes/SimplePie +cp -pr config images includes install javascript locale language modules system themes -t %{buildroot}/%{_datadir}/%{name} +install -m 0644 *php robots.txt %{buildroot}/%{_datadir}/%{name} + + +cp -pr pnTemp -t %{buildroot}/%{_localstatedir}/lib/%{name} +install -m 0664 ./config/config.php %{buildroot}/%{_sysconfdir}/%{name}/config.php +ln -sf %{_sysconfdir}/%{name}/config.php %{buildroot}/%{_datadir}/%{name}/config/config.php +install -m 0644 -D -p %{SOURCE1} %{buildroot}/%{_sysconfdir}/httpd/conf.d/zikula.conf +#ln -sf %{_datadir}/php/adodb/ %{buildroot}/%{_datadir}/%{name}/includes/classes/adodb || : +#ln -sf %{_datadir}/php/Smarty/ %{buildroot}/%{_datadir}/%{name}/includes/classes/Smarty || : +#ln -sf %{_datadir}/php/php-simplepie/ %{buildroot}/%{_datadir}/%{name}/includes/classes/SimplePie || : +#ln -sf %{_datadir}/php/IDNA_Convert/ %{buildroot}/%{_datadir}/%{name}/includes/classes/idna || : +#symlinks -crs %{buildroot}/%{_datadir}/%{name}/includes/ +rm -f %{buildroot}/%{datadir}/%{name}/includes/.htaccess + +#changinng encoding +iconv -f ISO-8859-1 -t UTF-8 --output %{_builddir}/Zikula-%{version}/docs/previouscredits.txt %{_builddir}/Zikula-%{version}/docs/previouscredits.txt + +cd %{buildroot} +cd - +#Making script executable to stop rpmlint from complaining +chmod 0755 %{buildroot}/%{_datadir}/%{name}/javascript/phplayersmenu/CHANGE_TEMPLATE_CLASS_NAME.sh +#Getting rid of zerolength files +find ${RPM_BUILD_ROOT} -empty -exec rm -f {} \; + +#Purging .htaccess files +find ${RPM_BUILD_ROOT} -name .htaccess -exec rm -f {} \; +%clean +rm -rf %{buildroot} + +%files + +%defattr(-,root,root,-) +%doc docs/* +%{_datadir}/%{name} +%attr(-,apache,apache) %{_localstatedir}/lib/%{name} +%config(noreplace) %{_sysconfdir}/httpd/conf.d/zikula.conf +%attr(664,root,apache) %config(noreplace) %{_sysconfdir}/%{name}/config.php + + +%post +ln -sf /usr/share/php/php-gettext /usr/share/zikula/includes/classes/php-gettext 2>&1 || : +ln -sf /usr/share/doc/zikula-1.1.2 /usr/share/zikula/docs > /dev/null 2>&1 || : +ln -sf /usr/share/php/adodb /usr/share/zikula/includes/classes/adodb > /dev/null 2>&1 || : +ln -sf /usr/share/php/Smarty /usr/share/zikula/includes/classes/Smarty > /dev/null 2>&1 || : +ln -sf /usr/share/php/php-simplepie /usr/share/zikula/includes/classes/SimplePie > /dev/null 2>&1 || : +symlinks -crs /usr/share/zikula/includes/ > /dev/null 2>&1 || : +symlinks -crs /usr/share/zikula > /dev/null 2>&1 || : + +%changelog +* Fri Feb 15 2013 Fedora Release Engineering - 1.2.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Fri Dec 4 2013 Remi Collet - 1.2.3-5 +- fix configuration file for httpd 2.4, #871501 + +* Sun Jul 22 2012 Fedora Release Engineering - 1.2.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sat Jan 14 2012 Fedora Release Engineering - 1.2.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Feb 08 2011 Fedora Release Engineering - 1.2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed May 12 2010 David Nalley 1.2.3-1 +- upgrading to 1.2.3 +- removed jsminify patch, and thus requirement for custom tarball +- fixes XSS and CSRF security problems. +* Sun Dec 06 2009 David Nalley 1.2.0-1 +- upgrading to 1.2.0 +- added require for php-gettext and symlinked it to includes/classes +- added patch to strip jsminify support +- build custom tarball because upstream ships non-free libs +* Sun Aug 24 2009 David Nalley 1.1.2-3 +- changed requirement for dos2unix to build requirement + +* Sun Aug 23 2009 David Nalley 1.1.2-2 +- added requirement for dos2unix + +* Sun Aug 23 2009 David Nalley 1.1.2-1 +- upgraded to 1.1.2 to match upstream bug 514301 +- changed php version requirements to 5.1.2 to remove bundling of sha256 library +- added symlinks silencing per ian wellers bug 511137 +- silenced selinux problems +- Added requires for php-Smarty, php-adodb, php-mcrypt +- Deleted unused JSON, encrypytion, and hashes libraries which were bundled for 493237 + +* Wed Aug 12 2009 Paul W. Frields - 1.1.1-13 +- Upstream docs advise that PHP >= 4.3 is correct requirement + +* Sat Mar 14 2009 David Nalley 1.1.1-12 +- appended zero exit snippet to all pre and post lines + +* Fri Mar 13 2009 Clint Savage 1.1.1-11 +- added an additional selinux call to modify the context when the +- selinux context already exists + +* Sun Mar 8 2009 David Nalley 1.1.1-10 +- moved selinux stuff to pre rather than post + +* Sun Mar 1 2009 David Nalley 1.1.1-9 +- reverted earlier SElinux issues and used semanage to make it persistent +- added symlink to /usr/share/docs for license and contributors to show up +- changed symlinks command to recurse over enter _datadir + +* Sun Mar 1 2009 David Nalley 1.1.1-8 +- fixed another SELinux issues pointed out by herlo + +* Sun Mar 1 2009 David Nalley 1.1.1-7 +- fixed SElinux context problem pointed out by herlo + +* Sat Feb 28 2009 David Nalley 1.1.1-6 +- removed most install lines, replaced with cp -r +- fixed permissions on config file +- fixed permissions on pntemp dir + +* Sat Feb 21 2009 David Nalley 1.1.1-5 +- fixed install issues. + +* Sat Feb 21 2009 David Nalley 1.1.1-4 +- changed perms + +* Sat Feb 21 2009 David Nalley 1.1.1-3 +- Fixing dangling symlink + +* Tue Feb 17 2009 David Nalley 1.1.1-2 +- Fixed iconv issues and symlinks + +* Sun Feb 09 2009 Clint Savage 1.1.1-1 +- Fixed some minor packaging issues. + +* Wed Jan 28 2009 David Nalley 1.1.0-4 +- Changed license to GPLv2+ + +* Mon Jan 26 2009 Lukas Hetzenecker 1.1.0-3 +- Move the pnTemp directory to /var/lib/zikula/pnTemp + +* Mon Jan 26 2009 Lukas Hetzenecker 1.1.0-1 +- Initial Spec file creation for Fedora diff --git a/zikulahash.patch b/zikulahash.patch new file mode 100644 index 0000000..fb9bc0b --- /dev/null +++ b/zikulahash.patch @@ -0,0 +1,14 @@ +--- includes/DataUtil.class.php.orig 2009-12-06 00:50:32.903788349 -0500 ++++ includes/DataUtil.class.php 2009-12-06 00:51:11.467520804 -0500 +@@ -441,9 +441,9 @@ + return bin2hex(mhash(MHASH_SHA256, $string)); + } else { + if (!class_exists('SHA256')) { +- Loader::requireOnce('includes/classes/hashes/sha256.class.php'); ++# Loader::requireOnce('includes/classes/hashes/sha256.class.php'); + } +- return SHA256::hash($string); ++ return hash('sha256', $string); + } + } else if ($type == 'md5') { + return md5($string);