]> git.pld-linux.org Git - packages/drupal.git/blobdiff - drupal.spec
- restore r1.15
[packages/drupal.git] / drupal.spec
index 95c9b4c9d6fbc7fa1e0bf62450509884b1226f04..ed3ed43b343bde8b2c61df145ef5f2fd76cdee74 100644 (file)
@@ -1,75 +1,46 @@
+# TODO
+# - why not drupal 6.0?
 Summary:       Open source content management platform
 Summary:       Open source content management platform
-Summary(pl):   Platforma do zarz±dzania tre¶ci± o otwartych ¼ród³ach
+Summary(pl.UTF-8):     Platforma do zarządzania treścią o otwartych źródłach
 Name:          drupal
 Name:          drupal
-Version:       4.6.2
-Release:       0.18
-Epoch:         0
+Version:       5.7
+Release:       0.4
 License:       GPL
 Group:         Applications/WWW
 License:       GPL
 Group:         Applications/WWW
-Source0:       http://drupal.org/files/projects/%{name}-%{version}.tar.gz
-# Source0-md5: 7bbee605d6b57052e27adb1a61685ec1
+Source0:       http://ftp.osuosl.org/pub/drupal/files/projects/%{name}-%{version}.tar.gz
+# Source0-md5: c7d9911ad1001c790bbdfe6fd4cdfc89
 Source1:       %{name}.conf
 Source2:       %{name}.cron
 Source1:       %{name}.conf
 Source2:       %{name}.cron
-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
+Source4:       %{name}-apache1.conf
+Patch0:                %{name}-cron.patch
+Patch1:                %{name}-sitesdir.patch
+Patch2:                %{name}-topdir.patch
+Patch3:                %{name}-themedir2.patch
+#Patchx:       %{name}-replication.patch
+#Patchx:       %{name}-emptypass.patch
 URL:           http://drupal.org/
 URL:           http://drupal.org/
-BuildRequires: rpmbuild(macros) >= 1.194
+BuildRequires: rpmbuild(macros) >= 1.264
 BuildRequires: sed >= 4.0
 BuildRequires: sed >= 4.0
-Requires:      apache >= 1.3.33-3
-Requires:      apache(mod_dir)
+Requires:      %{name}(DB_Driver) = %{version}-%{release}
 Requires:      apache(mod_access)
 Requires:      apache(mod_access)
+Requires:      apache(mod_alias)
+Requires:      apache(mod_dir)
 Requires:      apache(mod_expires)
 Requires:      apache(mod_rewrite)
 Requires:      apache(mod_expires)
 Requires:      apache(mod_rewrite)
-Requires:      apache(mod_alias)
-Requires:      php >= 3:4.3.3
-Requires:      php-mysql
-Requires:      php-pcre
-#Requires:     php-pgsql
-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
+Requires:      php(mbstring)
+Requires:      php(pcre)
+Requires:      php(xml)
+Requires:      webapps
+Requires:      webserver = apache
+Requires:      webserver(php) >= 4.3.3
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _appdir         %{_datadir}/%{name}
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _appdir         %{_datadir}/%{name}
-%define                _sysconfdir     /etc/%{name}
+%define                _webapps        /etc/webapps
+%define                _webapp         %{name}
+%define                _sysconfdir     %{_webapps}/%{_webapp}
 
 %description
 Drupal is software that allows an individual or a community of users
 
 %description
 Drupal is software that allows an individual or a community of users
@@ -94,32 +65,32 @@ Drupal includes features to enable
 
 and much more.
 
 
 and much more.
 
-%description -l pl
-Drupal to oprogramowanie pozwalaj±ce osobie lub spo³eczno¶ci
-u¿ytkowników na ³atwe publikowanie, zarz±dzanie i organizowanie ró¿nej
-tre¶ci na stronie WWW. Dziesi±tki tysiêcy ludzi i organizacji u¿ywali
-Drupala do ustawiania wyników ró¿nych rodzajów stron WWW, w tym:
-- portale WWW i strony dyskusyjne spo³eczno¶ci
+%description -l pl.UTF-8
+Drupal to oprogramowanie pozwalające osobie lub społeczności
+użytkowników na łatwe publikowanie, zarządzanie i organizowanie różnej
+treści na stronie WWW. Dziesiątki tysięcy ludzi i organizacji używali
+Drupala do ustawiania wyników różnych rodzajów stron WWW, w tym:
+- portale WWW i strony dyskusyjne społeczności
 - korporacyjne strony WWW/portale intranetowe
 - osobiste strony WWW
 - korporacyjne strony WWW/portale intranetowe
 - osobiste strony WWW
-- strony mi³o¶ników
+- strony miłośników
 - aplikacje e-commerce
 - aplikacje e-commerce
-- s³owniki zasobów
+- słowniki zasobów
 
 
-Drupal zawiera zasoby umo¿liwiaj±ce tworzenie:
-- systemów zarz±dzania tre¶ci±
-- blogów
-- rodowisk pracy grupowej
-- forów
+Drupal zawiera zasoby umożliwiające tworzenie:
+- systemów zarządzania treścią
+- blogów
+- środowisk pracy grupowej
+- forów
 - nowin
 - nowin
-- galerii zdjêæ
-- wrzucania i ¶ci±gania plików
+- galerii zdjęć
+- wrzucania i ściągania plików
 
 
-i wiele wiêcej.
+i wiele więcej.
 
 %package cron
 Summary:       Drupal cron
 
 %package cron
 Summary:       Drupal cron
-Summary(pl):   Us³uga cron dla Drupala
+Summary(pl.UTF-8):     Usługa cron dla Drupala
 Group:         Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 Requires:      crondaemon
 Group:         Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 Requires:      crondaemon
@@ -128,12 +99,54 @@ Requires:  php-cli >= 3:4.3.3
 %description cron
 This package contains script which invokes cron hooks for Drupal.
 
 %description cron
 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.
+%description cron -l pl.UTF-8
+Ten pakiet zawiera skrypt wywołujący uchwyty crona dla Drupala.
+
+%package db-mysql
+Summary:       Drupal DB Driver for MySQL
+Summary(pl.UTF-8):     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.UTF-8
+Ten wirtualny pakiet dostarcza backend bazy danych MySQL dla Drupala.
+
+%package db-pgsql
+Summary:       Drupal DB Driver for PostgreSQL
+Summary(pl.UTF-8):     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.UTF-8
+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 update
+Summary:       Package to perform Drupal database updates
+Group:         Applications/WWW
+Requires:      %{name} = %{version}-%{release}
+
+%description update
+This package contains scripts needed to do database updates via web.
 
 %package xmlrpc
 Summary:       XMLRPC server for Drupal
 
 %package xmlrpc
 Summary:       XMLRPC server for Drupal
-Summary(pl):   Serwer XMLRPC dla Drupala
+Summary(pl.UTF-8):     Serwer XMLRPC dla Drupala
 Group:         Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 
 Group:         Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 
@@ -142,49 +155,55 @@ XMLRPC server for Drupal allows other Drupals authorize with your
 Drupal's user creditentials, this is called Distributed Authentication
 in Drupal world.
 
 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
+%description xmlrpc -l pl.UTF-8
+Serwer XMLRPC dla Drupala pozwala innym Drupalom autoryzować się z
+danymi uwierzytelniającymi użytkownika danego Drupala - jest to
 nazywane rozproszonym uwierzytelnianiem.
 
 %prep
 nazywane rozproszonym uwierzytelnianiem.
 
 %prep
-%setup -q
+%setup -q %{?_rc:-n %{name}-%{version}-%{_rc}}
 %patch0 -p1
 %patch0 -p1
-#%patch1 -p1
-#%patch2 -p1
+%patch1 -p1
+%patch2 -p1
 %patch3 -p1
 %patch3 -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
+# cleanup backups after patching
+find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+cp -p %{SOURCE3} README.PLD
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_appdir}/{po,modules/po,htdocs/{files,modules}},%{_sysconfdir},/etc/cron.d}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/cron.d,/var/{cache,lib}/%{name}} \
+       $RPM_BUILD_ROOT%{_appdir}/{po,database,modules/po,htdocs/modules,themes}
 
 
-cp -a *.ico index.php $RPM_BUILD_ROOT%{_appdir}/htdocs
+cp -a index.php $RPM_BUILD_ROOT%{_appdir}/htdocs
 cp -a misc $RPM_BUILD_ROOT%{_appdir}/htdocs
 cp -a misc $RPM_BUILD_ROOT%{_appdir}/htdocs
-cp -a xmlrpc.php $RPM_BUILD_ROOT%{_appdir}/htdocs
+cp -a install.php update.php xmlrpc.php $RPM_BUILD_ROOT%{_appdir}/htdocs
 
 cp -a cron.php $RPM_BUILD_ROOT%{_appdir}
 
 cp -a cron.php $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 includes scripts $RPM_BUILD_ROOT%{_appdir}
 cp -a sites $RPM_BUILD_ROOT%{_sysconfdir}
-
-cp -a themes $RPM_BUILD_ROOT%{_appdir}/htdocs
-ln -s htdocs/files $RPM_BUILD_ROOT%{_appdir}/files
-
-# 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
-
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
+cp -a modules/* $RPM_BUILD_ROOT%{_appdir}/modules
+cp -a themes/* $RPM_BUILD_ROOT%{_appdir}/themes
+cp -Rl $RPM_BUILD_ROOT%{_appdir}/modules $RPM_BUILD_ROOT%{_appdir}/htdocs
+cp -Rl $RPM_BUILD_ROOT%{_appdir}/themes $RPM_BUILD_ROOT%{_appdir}/htdocs
+
+find $RPM_BUILD_ROOT%{_appdir}/htdocs/themes/ $RPM_BUILD_ROOT%{_appdir}/htdocs/modules/ \
+  -type f -regextype posix-awk \
+  -regex '.*\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|php|xtmpl)$|.*/(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$' \
+  -print0 | xargs -0 -r -l512 rm -f
+find $RPM_BUILD_ROOT%{_appdir}/themes/ $RPM_BUILD_ROOT%{_appdir}/modules/ \
+  -type f -regextype posix-awk \
+  ! -regex '.*\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|php|xtmpl)$|.*/(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$' \
+  -print0 | xargs -0 -r -l512 rm -f
+
+# avoid pulling perl dep
+chmod -x $RPM_BUILD_ROOT%{_appdir}/scripts/*
+
+ln -s /var/lib/%{name} $RPM_BUILD_ROOT%{_appdir}/files
+
+install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}
 
 %clean
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}
 
 %clean
@@ -192,40 +211,62 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 if [ "$1" = 1 ]; then
 
 %post
 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
+%banner -e %{name} <<'EOF'
+If this is your first install of Drupal, You need at least configure
+$db_url and $base_url in %{_sysconfdir}/sites/default/settings.php
+
+EOF
+fi
+
+%post db-mysql
+if [ "$1" = 1 ]; then
+%banner -e %{name}-db-mysql <<'EOF'
+If this is your first install of Drupal, you need to create Drupal database:
+
+mysqladmin create drupal
+zcat %{_docdir}/%{name}-db-mysql-%{version}/database.mysql.gz | mysql drupal
+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'"
+
+EOF
+fi
 
 
-and import initial schema:
-shell$ zcat %{_docdir}/%{name}-%{version}/database/database.mysql.gz | mysql drupal
+%post db-pgsql
+if [ "$1" = 1 ]; then
+%banner -e %{name}-db-pgsql <<'EOF'
+If this is your first install of Drupal, you need to create Drupal database:
 
 
-(anyway, read INSTALL file from documentation).
+and import initial schema from
+%{_docdir}/%{name}-db-pgsql-%{version}/database.pgsql.gz
 
 EOF
 fi
 
 
 EOF
 fi
 
-%triggerin -- apache1 >= 1.3.33-2
-%apache_config_install -v 1 -c %{_sysconfdir}/apache.conf
+%triggerin -- apache1 < 1.3.37-3, apache1-base
+%webapp_register apache %{_webapp}
 
 
-%triggerun -- apache1 >= 1.3.33-2
-%apache_config_uninstall -v 1
+%triggerun -- apache1 < 1.3.37-3, apache1-base
+%webapp_unregister apache %{_webapp}
 
 
-%triggerin -- apache >= 2.0.0
-%apache_config_install -v 2 -c %{_sysconfdir}/apache.conf
+%triggerin -- apache < 2.2.0, apache-base
+%webapp_register httpd %{_webapp}
 
 
-%triggerun -- apache >= 2.0.0
-%apache_config_uninstall -v 2
+%triggerun -- apache < 2.2.0, apache-base
+%webapp_unregister httpd %{_webapp}
 
 %files
 %defattr(644,root,root,755)
 
 %files
 %defattr(644,root,root,755)
-%doc *.txt database
+%doc *.txt README.PLD
 
 
-%attr(750,root,http) %dir %{_sysconfdir}
+%dir %attr(750,root,http) %{_sysconfdir}
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
 
 %attr(750,root,http) %dir %{_sysconfdir}/sites
 %attr(750,root,http) %dir %{_sysconfdir}/sites/default
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sites/default/*
 
 %attr(750,root,http) %dir %{_sysconfdir}/sites
 %attr(750,root,http) %dir %{_sysconfdir}/sites/default
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sites/default/*
+%attr(750,root,http) %dir %{_sysconfdir}/sites/all
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sites/all/*
 
 %dir %{_appdir}
 %{_appdir}/includes
 
 %dir %{_appdir}
 %{_appdir}/includes
@@ -237,17 +278,31 @@ fi
 %{_appdir}/files
 
 %dir %{_appdir}/htdocs
 %{_appdir}/files
 
 %dir %{_appdir}/htdocs
-%{_appdir}/htdocs/*.ico
 %{_appdir}/htdocs/index.php
 %{_appdir}/htdocs/index.php
+%{_appdir}/htdocs/install.php
 %{_appdir}/htdocs/misc
 %{_appdir}/htdocs/themes
 %{_appdir}/htdocs/modules
 %{_appdir}/htdocs/misc
 %{_appdir}/htdocs/themes
 %{_appdir}/htdocs/modules
-%dir %attr(775,root,http) %{_appdir}/htdocs/files
+
+%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}
 
 %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
+%attr(775,root,root) %{_appdir}/cron.php
+
+%files db-mysql
+%defattr(644,root,root,755)
+#%doc README.replication
+
+%files db-pgsql
+%defattr(644,root,root,755)
+
+%files update
+%defattr(644,root,root,755)
+%{_appdir}/htdocs/update.php
+%{_appdir}/database
 
 %files xmlrpc
 %defattr(644,root,root,755)
 
 %files xmlrpc
 %defattr(644,root,root,755)
This page took 0.084927 seconds and 4 git commands to generate.