WordPressをRHEL8/CentOS8で動かしたい

あまり需要は無さそうだけれど、備忘録として。まずソースRPMをインストールする。

$ dnf install https://rpms.remirepo.net/SRPMS/wordpress-5.8.1-1.remi.src.rpm

で、これに日本語化リソースを入れる。

$ wget -O rpmbuild/SOURCES/wordpress-5.8.1-ja.tar.gz https://ja.wordpress.org/wordpress-5.8.1-ja.tar.gz

日本語のwp-config.phpに対応させるため、~/rpmbuild/SOURCE/wordpress-5.4-config-ja.patchを以下の内容で作成する。

diff -up wordpress/wp-config.php.rpm wordpress/wp-config.php
--- wordpress/wp-config.php.rpm 2021-10-15 13:51:41.164913298 +0900
+++ wordpress/wp-config.php     2021-10-15 13:52:23.441418345 +0900
@@ -91,7 +91,7 @@ define( 'WP_DEBUG', false );

 /** Absolute path to the WordPress directory. */
 if ( ! defined( 'ABSPATH' ) ) {
-       define( 'ABSPATH', __DIR__ . '/' );
+       define('ABSPATH', '/usr/share/wordpress');
 }

 /** Sets up WordPress vars and included files. */

remiレポから配布されてるphp74-php-sodiumに対応したり、日本語化リソースを組み込むためspecファイルに以下のパッチを適用する。

diff -up tmp/wordpress.spec rpmbuild/SPECS/wordpress.spec 
--- tmp/wordpress.spec	2021-10-25 14:28:07.847426370 +0900
+++ rpmbuild/SPECS/wordpress.spec	2021-10-15 13:59:38.464324631 +0900
@@ -24,7 +24,7 @@ Version:    %{upstream_version}%{?upstre
 Release:    1%{?dist}
 License:    GPLv2
 
-Source0:    https://wordpress.org/%{name}-%{upstream_version}%{?upstream_prever:-%{upstream_prever}}.tar.gz
+Source0:    https://wordpress.org/%{name}-%{upstream_version}%{?upstream_prever:-%{upstream_prever}}-ja.tar.gz
 Source1:    wordpress-httpd-conf
 Source2:    README.fedora.wordpress
 Source3:    README.fedora.wordpress-mu
@@ -49,7 +49,8 @@ Patch4: wordpress-5.6-mediaelement_no_sw
 # RPM configuration:
 # Path to installation
 # Disable auto-updater
-Patch5: wordpress-5.4-config.patch
+#Patch5: wordpress-5.4-config.patch
+Patch5: wordpress-5.4-config-ja.patch
 # RPM are readonly
 # disable version check and updated
 # change DISALLOW_FILE_MODS default value to true
@@ -77,7 +78,7 @@ Requires: nginx-filesystem
 Requires: php
 %endif
 Requires: php(language) >= 7.2
-Requires: php-sodium
+Requires: php74-php-sodium
 Requires: php-simplepie >= 1.3.1
 Requires: php-getid3
 Requires: php-ctype
@@ -264,8 +265,10 @@ find ${RPM_BUILD_ROOT} \( -name \*.dolly
 %dir %attr(2775,apache,ftp) %{wp_content}/themes
 %dir %attr(2775,apache,ftp) %{wp_content}/upgrade
 %dir %attr(2775,apache,ftp) %{wp_content}/uploads
+%dir %attr(2775,apache,ftp) %{wp_content}/languages
 %{wp_content}/plugins/*
 %{wp_content}/themes/*
+%{wp_content}/languages/*
 %{!?_licensedir:%global license %%doc}
 %license license.txt
 %doc readme.html

こんな感じで。

$ patch -p1 wpspec.patch rpmbuild/SPECS/wordpress.spec

あとはビルド。

$ rpmbuild -bb rpmbuild/SPECS/wordpress.spec