]> git.pld-linux.org Git - packages/drupal.git/blobdiff - drupal.spec
- sample for granting mysql access permissions
[packages/drupal.git] / drupal.spec
index 498f7056543423ce248ccd7ad9bf7ca74f230760..0f7da2fad1160ec0b29ce78b21d34dc9585213d6 100644 (file)
@@ -1,25 +1,21 @@
 Summary:       Open source content management platform
 Summary(pl):   Platforma do zarz±dzania tre¶ci± o otwartych ¼ród³ach
 Name:          drupal
-Version:       4.6.2
-Release:       0.7
-Epoch:         0
+Version:       4.6.3
+Release:       0.32
 License:       GPL
 Group:         Applications/WWW
 Source0:       http://drupal.org/files/projects/%{name}-%{version}.tar.gz
-# Source0-md5: 7bbee605d6b57052e27adb1a61685ec1
+# Source0-md5: f436973f02aa2cea15ef1ca90223082b
 Source1:       %{name}.conf
 Source2:       %{name}.cron
-Source3:       http://www.drupal.org/misc/favicon.ico
-# Source3-md5: f0ee98b4394dfdab17c16245dd799204
-Patch0:                %{name}-config.patch
-Patch1:                %{name}-includedir.patch
-Patch2:                %{name}-module-themedir.patch
-Patch3:                %{name}-emptypass.patch
-Patch4:                %{name}-themedir.patch
-Patch5:                %{name}-sitesdir.patch
-Patch6:                %{name}-topdir.patch
-Patch7:                %{name}-themedir2.patch
+Source3:       %{name}.PLD
+Patch0:                %{name}-replication.patch
+Patch1:                %{name}-sitesdir.patch
+Patch2:                %{name}-topdir.patch
+Patch3:                %{name}-themedir2.patch
+Patch4:                %{name}-emptypass.patch
+Patch5:                %{name}-cron.patch
 URL:           http://drupal.org/
 BuildRequires: rpmbuild(macros) >= 1.194
 BuildRequires: sed >= 4.0
@@ -32,41 +28,8 @@ Requires:    apache(mod_alias)
 Requires:      php >= 3:4.3.3
 Requires:      php-mysql
 Requires:      php-pcre
-#Requires:     php-pgsql
+Requires:      %{name}(DB_Driver) = %{version}-%{release}
 Requires:      php-xml
-# rpm -ql drupal | awk -F/ '/\.module$/{gsub("\.module", ""); printf("Provides:\tdrupal-mod-%s\n", $NF)}' >> drupal.spec
-Provides:      drupal-mod-aggregator
-Provides:      drupal-mod-archive
-Provides:      drupal-mod-block
-Provides:      drupal-mod-blog
-Provides:      drupal-mod-blogapi
-Provides:      drupal-mod-book
-Provides:      drupal-mod-comment
-Provides:      drupal-mod-contact
-Provides:      drupal-mod-drupal
-Provides:      drupal-mod-filter
-Provides:      drupal-mod-forum
-Provides:      drupal-mod-help
-Provides:      drupal-mod-legacy
-Provides:      drupal-mod-locale
-Provides:      drupal-mod-menu
-Provides:      drupal-mod-node
-Provides:      drupal-mod-page
-Provides:      drupal-mod-path
-Provides:      drupal-mod-ping
-Provides:      drupal-mod-poll
-Provides:      drupal-mod-profile
-Provides:      drupal-mod-queue
-Provides:      drupal-mod-search
-Provides:      drupal-mod-statistics
-Provides:      drupal-mod-story
-Provides:      drupal-mod-system
-Provides:      drupal-mod-taxonomy
-Provides:      drupal-mod-throttle
-Provides:      drupal-mod-tracker
-Provides:      drupal-mod-upload
-Provides:      drupal-mod-user
-Provides:      drupal-mod-watchdog
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -126,6 +89,7 @@ Group:               Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 Requires:      crondaemon
 Requires:      php-cli >= 3:4.3.3
+Requires:      /usr/bin/php
 
 %description cron
 This package contains script which invokes cron hooks for Drupal.
@@ -133,43 +97,103 @@ This package contains script which invokes cron hooks for Drupal.
 %description cron -l pl
 Ten pakiet zawiera skrypt wywo³uj±cy uchwyty crona dla Drupala.
 
+%package db-mysql
+Summary:       Drupal DB Driver for MySQL
+Summary(pl):   Sterownik bazy danych MySQL dla Drupala
+Group:         Applications/WWW
+Requires:      php-mysql
+Provides:      %{name}(DB_Driver) = %{version}-%{release}
+
+%description db-mysql
+This virtual package provides MySQL database backend for Drupal.
+
+%description db-mysql -l pl
+Ten wirtualny pakiet dostarcza backend bazy danych MySQL dla
+Drupala.
+
+%package db-pgsql
+Summary:       Drupal DB Driver for PostgreSQL
+Summary(pl):   Sterownik bazy danych PostgreSQL dla Drupala
+Group:         Applications/WWW
+Requires:      php-pgsql
+Provides:      %{name}(DB_Driver) = %{version}-%{release}
+
+%description db-pgsql
+This virtual package provides PostgreSQL database backend for
+Drupal.
+
+NOTE: This driver is not tested in PLD, and not all modules have
+database schema for PostgreSQL. Use this driver at your own risk!
+
+%description db-pgsql -l pl
+Ten wirtualny pakiet dostarcza backend bazy danych PostgreSQL dla
+Drupala.
+
+UWAGA: Ten sterownik nie by³ testowany w PLD i nie wszystkie modu³y
+maj± schematy bazy danych dla PostgreSQL-a. Mo¿na go u¿ywaæ na w³asne
+ryzyko.
+
+%package xmlrpc
+Summary:       XMLRPC server for Drupal
+Summary(pl):   Serwer XMLRPC dla Drupala
+Group:         Applications/WWW
+Requires:      %{name} = %{version}-%{release}
+
+%description xmlrpc
+XMLRPC server for Drupal allows other Drupals authorize with your
+Drupal's user creditentials, this is called Distributed Authentication
+in Drupal world.
+
+%description xmlrpc -l pl
+Serwer XMLRPC dla Drupala pozwala innym Drupalom autoryzowaæ siê z
+danymi uwierzytelniaj±cymi u¿ytkownika danego Drupala - jest to
+nazywane rozproszonym uwierzytelnianiem.
+
 %prep
 %setup -q
 %patch0 -p1
-#%patch1 -p1
-#%patch2 -p1
+%patch1 -p1
+%patch2 -p1
 %patch3 -p1
-#%patch4 -p1
+%patch4 -p1
 %patch5 -p1
-%patch6 -p1
-%patch7 -p1
-
-#grep -rl 'include_once .includes/' . | xargs sed -i -e '
-#      s,include_once \(.\)includes/,include_once \1%{_appdir}/includes/,g
-#'
 
 find -name '*~' | xargs -r rm -v
+cp -p %{SOURCE3} README.PLD
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_appdir}/htdocs/files,%{_sysconfdir},/etc/cron.d}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/cron.d,/var/{cache,lib}/%{name}} \
+       $RPM_BUILD_ROOT%{_appdir}/{po,modules/po,htdocs/modules}
 
 cp -a *.ico index.php $RPM_BUILD_ROOT%{_appdir}/htdocs
 cp -a misc $RPM_BUILD_ROOT%{_appdir}/htdocs
+cp -a xmlrpc.php $RPM_BUILD_ROOT%{_appdir}/htdocs
 
 cp -a cron.php $RPM_BUILD_ROOT%{_appdir}
-cp -a includes modules scripts $RPM_BUILD_ROOT%{_appdir}
+cp -a modules/* $RPM_BUILD_ROOT%{_appdir}/modules
+cp -a includes scripts $RPM_BUILD_ROOT%{_appdir}
 cp -a sites $RPM_BUILD_ROOT%{_sysconfdir}
 
-cp -a themes $RPM_BUILD_ROOT%{_appdir}/htdocs
+ln -s /var/lib/%{name} $RPM_BUILD_ROOT%{_appdir}/files
 
+# install themes
+cp -a themes $RPM_BUILD_ROOT%{_appdir}/htdocs
 # move .xtmpl/.theme out of htdocs
 (cd $RPM_BUILD_ROOT%{_appdir}/htdocs && tar cf - --remove-files themes/*/*.{xtmpl,theme}) | tar -xf - -C $RPM_BUILD_ROOT%{_appdir}
 mv $RPM_BUILD_ROOT%{_appdir}/{htdocs/,}themes/engines
+# make screenshot.png available in appdir
+for a in $RPM_BUILD_ROOT%{_appdir}/htdocs/themes/*; do
+       t=$(basename $a)
+       ln -s ../../htdocs/themes/$t/screenshot.png $RPM_BUILD_ROOT%{_appdir}/themes/$t
+done
+
+# a hack
+s=themes/chameleon/marvin
+ln -s ../../htdocs/$s $RPM_BUILD_ROOT%{_appdir}/$s
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache-%{name}.conf
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}
-install %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/htdocs
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -178,34 +202,38 @@ rm -rf $RPM_BUILD_ROOT
 if [ "$1" = 1 ]; then
 %banner -e %{name} <<EOF
 If this is your first install of Drupal, you need to create drupal database:
-shell$ mysqladmin create drupal
+mysqladmin create drupal
 
 and import initial schema:
-shell$ zcat %{_docdir}/%{name}-%{version}/database/database.mysql.gz | mysql drupal
+zcat %{_docdir}/%{name}-%{version}/database/database.mysql.gz | mysql drupal
+
+and grant permissions:
+mysql -e "GRANT SELECT, INSERT, UPDATE, DELETE ON drupal.* TO 'drupal'@'localhost' IDENTIFIED BY 'PASSWORD'"
+mysql -e "GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON *.* TO 'drupal'@'localhost"
 
-(anyway, read INSTALL file from documentation).
+Be sure to read INSTALL.txt from documentation!
 
 EOF
 fi
 
 %triggerin -- apache1 >= 1.3.33-2
-%apache_config_install -v 1 -c %{_sysconfdir}/apache-%{name}.conf
+%apache_config_install -v 1 -c %{_sysconfdir}/apache.conf
 
 %triggerun -- apache1 >= 1.3.33-2
 %apache_config_uninstall -v 1
 
 %triggerin -- apache >= 2.0.0
-%apache_config_install -v 2 -c %{_sysconfdir}/apache-%{name}.conf
+%apache_config_install -v 2 -c %{_sysconfdir}/apache.conf
 
 %triggerun -- apache >= 2.0.0
 %apache_config_uninstall -v 2
 
 %files
 %defattr(644,root,root,755)
-%doc *.txt database
+%doc *.txt database README.replication README.PLD
 
 %attr(750,root,http) %dir %{_sysconfdir}
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache-%{name}.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
 
 %attr(750,root,http) %dir %{_sysconfdir}/sites
 %attr(750,root,http) %dir %{_sysconfdir}/sites/default
@@ -216,14 +244,31 @@ fi
 %{_appdir}/modules
 %{_appdir}/scripts
 %{_appdir}/themes
+%{_appdir}/po
+# symlink
+%{_appdir}/files
 
 %dir %{_appdir}/htdocs
-%{_appdir}/htdocs/*.*
+%{_appdir}/htdocs/*.ico
+%{_appdir}/htdocs/index.php
 %{_appdir}/htdocs/misc
 %{_appdir}/htdocs/themes
-%dir %attr(775,root,http) %{_appdir}/htdocs/files
+%{_appdir}/htdocs/modules
+
+%dir %attr(775,root,http) /var/lib/%{name}
+%dir %attr(775,root,http) /var/cache/%{name}
 
 %files cron
 %defattr(644,root,root,755)
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}
 %{_appdir}/cron.php
+
+%files db-mysql
+%defattr(644,root,root,755)
+
+%files db-pgsql
+%defattr(644,root,root,755)
+
+%files xmlrpc
+%defattr(644,root,root,755)
+%{_appdir}/htdocs/xmlrpc.php
This page took 0.132071 seconds and 4 git commands to generate.