From 0c82b2e914f98b4f3fd847009eba07cd1228523d Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Thu, 10 Jul 2025 11:40:32 +0200 Subject: add missing build requirements use patch for config instead of sed fix pidfile path in /run/redis set unixsocket --- redis-conf.patch | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ redis.spec | 17 ++++++---------- 2 files changed, 66 insertions(+), 11 deletions(-) create mode 100644 redis-conf.patch diff --git a/redis-conf.patch b/redis-conf.patch new file mode 100644 index 0000000..f4e297f --- /dev/null +++ b/redis-conf.patch @@ -0,0 +1,60 @@ +diff -up ./redis.conf.rpm ./redis.conf +--- ./redis.conf.rpm 2025-07-10 11:31:26.588797534 +0200 ++++ ./redis.conf 2025-07-10 11:31:26.590823030 +0200 +@@ -153,7 +153,7 @@ tcp-backlog 511 + # incoming connections. There is no default, so Redis will not listen + # on a unix socket when not specified. + # +-# unixsocket /run/redis.sock ++unixsocket /run/redis/redis.sock + # unixsocketperm 700 + + # Close the connection after a client is idle for N seconds (0 to disable) +@@ -339,7 +339,7 @@ daemonize no + # + # Note that on modern Linux systems "/run/redis.pid" is more conforming + # and should be used instead. +-pidfile /var/run/redis_6379.pid ++pidfile /run/redis/redis.pid + + # Specify the server verbosity level. + # This can be one of: +@@ -353,7 +353,7 @@ loglevel notice + # Specify the log file name. Also the empty string can be used to force + # Redis to log on the standard output. Note that if you use standard + # output for logging but daemonize, logs will be sent to /dev/null +-logfile "" ++logfile /var/log/redis/redis.log + + # To enable logging to the system logger, just set 'syslog-enabled' to yes, + # and optionally update the other syslog parameters to suit your needs. +@@ -513,7 +513,7 @@ rdb-del-sync-files no + # The Append Only File will also be created inside this directory. + # + # Note that you must specify a directory here, not a file name. +-dir ./ ++dir /var/lib/redis + + ################################# REPLICATION ################################# + +diff -up ./sentinel.conf.rpm ./sentinel.conf +--- ./sentinel.conf.rpm 2025-07-10 11:31:26.589683845 +0200 ++++ ./sentinel.conf 2025-07-10 11:31:26.592442565 +0200 +@@ -17,7 +17,7 @@ daemonize no + # When running daemonized, Redis Sentinel writes a pid file in + # /var/run/redis-sentinel.pid by default. You can specify a custom pid file + # location here. +-pidfile /var/run/redis-sentinel.pid ++pidfile /run/redis/sentinel.pid + + # Specify the server verbosity level. + # This can be one of: +@@ -31,7 +31,7 @@ loglevel notice + # Specify the log file name. Also the empty string can be used to force + # Sentinel to log on the standard output. Note that if you use standard + # output for logging but daemonize, logs will be sent to /dev/null +-logfile "" ++logfile /var/log/redis/sentinel.log + + # To enable logging to the system logger, just set 'syslog-enabled' to yes, + # and optionally update the other syslog parameters to suit your needs. diff --git a/redis.spec b/redis.spec index 423e402..265d516 100644 --- a/redis.spec +++ b/redis.spec @@ -38,6 +38,9 @@ Source2: %{name}-sentinel.service Source3: %{name}.service Source9: macros.%{name} +# Fix default paths in configuration files for RPM layout +Patch0: %{name}-conf.patch + BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libstdc++-devel @@ -122,6 +125,7 @@ API documentation is available in the redis-doc package. %prep %setup -q -n %{name}-%{upstream_ver} +%patch -P0 -p1 %if %{with jemalloc} rm -frv deps/jemalloc @@ -138,16 +142,6 @@ mv deps/hdr_histogram/LICENSE.txt LICENSE-hdrhistogram mv deps/hdr_histogram/COPYING.txt COPYING-hdrhistogram mv deps/fpconv/LICENSE.txt LICENSE-fpconv -# Configuration file changes -sed -e 's|^logfile .*$|logfile /var/log/redis/redis.log|g' \ - -e 's|^dir .*$|dir /var/lib/redis|g' \ - -e 's|^pidfile .*$|pidfile /run/redis/redis.pid|g' \ - -e 's|^# unixsocket .*$|unixsocket /run/redis/redis.sock|g' \ - -i redis.conf -sed -e 's|^logfile .*$|logfile /var/log/redis/sentinel.log|g' \ - -e 's|^pidfile .*$|pidfile /run/redis/sentinel.pid|g' \ - -i sentinel.conf - # See https://bugzilla.redhat.com/2240293 # See https://src.fedoraproject.org/rpms/jemalloc/blob/rawhide/f/jemalloc.spec#_34 %ifarch %ix86 %arm x86_64 s390x @@ -314,9 +308,10 @@ fi %changelog * Thu Jul 10 2025 Remi Collet - 8.0.3-2 +- add missing build requirements +- use patch for config instead of sed - fix pidfile path in /run/redis - set unixsocket -- add missing build requirements * Mon Jul 7 2025 Remi Collet - 8.0.3-1 - Redis 8.0.3 Released Sun 6 Jul 2025 12:00:00 IST -- cgit