diff --git a/.gitignore b/.gitignore index a2b8b1ed1..9ea2151e0 100644 --- a/.gitignore +++ b/.gitignore @@ -4,20 +4,21 @@ core *.xo *.so *.d +!**/bash_completion.d *.log dump.rdb src/keydb-server -bin/keydb-server -app/keydb-server +**/bin/keydb-server +**/app/keydb-server *.deb *.rpm keydb-pro-server src/keydb-cli -bin/keydb-cli -app/keydb-cli +**/bin/keydb-cli +**/app/keydb-cli src/keydb-sentinel -bin/keydb-sentinel -app/keydb-sentinel +**/bin/keydb-sentinel +**/app/keydb-sentinel redis-benchmark keydb-benchmark redis-check-aof diff --git a/pkg/deb/deb-buildsource.sh b/pkg/deb/deb-buildsource.sh index a6e7f11a6..97e297362 100755 --- a/pkg/deb/deb-buildsource.sh +++ b/pkg/deb/deb-buildsource.sh @@ -9,7 +9,7 @@ else fi echo $changelog_comments build=1 #change if updated build number required. Default is 1 as convention for keydb is to update minor version -version=$(grep KEYDB_REAL_VERSION ../../../src/version.h | awk '{ printf $3 }' | tr -d \") +version=$(grep KEYDB_REAL_VERSION ../../src/version.h | awk '{ printf $3 }' | tr -d \") majorv="${version:0:1}" distributor=$(lsb_release --id --short) if [ "$distributor" == "Debian" ]; then @@ -50,6 +50,6 @@ sudo pbuilder --build *.dsc # move new packages to deb_files_generated and clean up cp /var/cache/pbuilder/result/*$version*.deb ../deb_files_generated -sudo pbuilder --autocleanaptcache +sudo pbuilder clean cd ../ rm -rf $pkg_name diff --git a/pkg/deb/debian/NEWS b/pkg/deb/debian/NEWS deleted file mode 100644 index ec1496c24..000000000 --- a/pkg/deb/debian/NEWS +++ /dev/null @@ -1,8 +0,0 @@ -keydb (4:4.0.2-3) unstable; urgency=medium - - This version drops the Debian-specific support for the - /etc/keydb/keydb-{server,sentinel}.{pre,post}-{up,down}.d directories in - favour of using systemd's ExecStartPre, ExecStartPost, ExecStopPre, - ExecStopPost commands. - - -- Chris Lamb Wed, 11 Oct 2017 22:55:00 -0400 diff --git a/pkg/deb/debian/bash_completion.d/keydb-cli b/pkg/deb/debian/bash_completion.d/keydb-cli new file mode 100644 index 000000000..9c39af14d --- /dev/null +++ b/pkg/deb/debian/bash_completion.d/keydb-cli @@ -0,0 +1,30 @@ +# -*- sh -*- +# +# Bash completion function for the 'keydb-cli' command. +# +# Steve +# -- +# http://www.steve.org.uk +# + +_keydb-cli() +{ + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + # + # All known commands accepted. Sorted. + # + opts='bgrewriteaof bgsave dbsize debug decr decrby del echo exists expire expireat flushall flushdb get getset incr incrby info keys lastsave lindex llen lpop lpush lrange lrem lset ltrim mget move mset msetnx ping randomkey rename renamenx rewriteaof rpop rpoplpush rpush sadd save scard sdiff sdiffstore select set setnx shutdown sinter sinterstore sismember slaveof smembers smove sort spop srandmember srem sunion sunionstore ttl type zadd zcard zincrby zrange zrangebyscore zrem zremrangebyscore zrevrange zscore' + + # + # Only complete on the first term. + # + if [ $COMP_CWORD -eq 1 ]; then + COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) + return 0 + fi + +} +complete -F _keydb-cli keydb-cli diff --git a/pkg/deb/debian/bin/generate-systemd-service-files b/pkg/deb/debian/bin/generate-systemd-service-files index 0666b7d93..59031d99f 100755 --- a/pkg/deb/debian/bin/generate-systemd-service-files +++ b/pkg/deb/debian/bin/generate-systemd-service-files @@ -87,7 +87,7 @@ EOF [Unit] Description=${DESCRIPTION} After=network.target -Documentation=http://keydb.io/documentation, man:${BINARY}(1) +Documentation=https://docs.keydb.dev, man:${BINARY}(1) [Service] Type=forking diff --git a/pkg/deb/debian/control b/pkg/deb/debian/control index f687eec4e..597a72e5b 100644 --- a/pkg/deb/debian/control +++ b/pkg/deb/debian/control @@ -20,7 +20,8 @@ Build-Depends: nasm , autotools-dev , autoconf , - libjemalloc-dev + libjemalloc-dev , + libssl-dev Standards-Version: 4.2.1 Homepage: https://docs.keydb.dev/ Vcs-Git: https://github.com/JohnSully/KeyDB.git diff --git a/pkg/deb/debian/copyright b/pkg/deb/debian/copyright index 59975672f..c7e2428e7 100644 --- a/pkg/deb/debian/copyright +++ b/pkg/deb/debian/copyright @@ -1,86 +1,13 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Contact: John Sully -Upstream-Name: keydb -Source: https://github.com/JohnSully/KeyDB +Upstream-Name: keydb-pro +Source: https://github.com/JohnSully/KeyDB-Pro Files: * Copyright: © 2006-2014 Salvatore Sanfilippo Copyright © 2019, John Sully -License: BSD-3-clause +License: Proprietary -Files: - src/rio.* - src/t_zset.c - src/ziplist.h - src/intset.* - src/redis-check-aof.c - deps/hiredis/* - deps/linenoise/* -Copyright: - © 2009-2012 Pieter Noordhuis - © 2009-2012 Salvatore Sanfilippo -License: BSD-3-clause - -Files: - src/lzf.h - src/lzfP.h - src/lzf_d.c - src/lzf_c.c -Copyright: - © 2000-2007 Marc Alexander Lehmann - © 2009-2012 Salvatore Sanfilippo -License: BSD-2-clause - -Files: src/setproctitle.c -Copyright: - © 2010 William Ahern - © 2013 Salvatore Sanfilippo - © 2013 Stam He -License: BSD-3-clause - -Files: src/ae_evport.c -Copyright: © 2012 Joyent, Inc. -License: BSD-3-clause - -Files: src/ae_kqueue.c -Copyright: © 2009 Harish Mallipeddi -License: BSD-3-clause - -Files: utils/install_server.sh -Copyright: © 2011 Dvir Volk -License: BSD-3-clause - -Files: deps/jemalloc/* -Copyright: - © 2002-2012 Jason Evans - © 2007-2012 Mozilla Foundation - © 2009-2012 Facebook, Inc. -License: BSD-3-clause - -Files: src/pqsort.* -Copyright: © 1992-1993 The Regents of the University of California -License: BSD-3-clause - -Files: deps/lua/* -Copyright: © 1994-2012 Lua.org, PUC-Ri -License: MIT - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - . - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - . - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. Files: debian/* Copyright: © 2009 Chris Lamb diff --git a/pkg/deb/debian/files b/pkg/deb/debian/files deleted file mode 100644 index 0c2ad5610..000000000 --- a/pkg/deb/debian/files +++ /dev/null @@ -1 +0,0 @@ -keydb_5.3.3-1~bionic1_source.buildinfo database optional diff --git a/pkg/deb/debian/gbp.conf b/pkg/deb/debian/gbp.conf deleted file mode 100644 index 24e95b172..000000000 --- a/pkg/deb/debian/gbp.conf +++ /dev/null @@ -1,3 +0,0 @@ -[DEFAULT] -debian-branch=debian/sid -upstream-branch=upstream/sid diff --git a/pkg/deb/debian/keydb-benchmark.1 b/pkg/deb/debian/keydb-benchmark.1 index ce9f119b4..07a659177 100644 --- a/pkg/deb/debian/keydb-benchmark.1 +++ b/pkg/deb/debian/keydb-benchmark.1 @@ -1,6 +1,6 @@ .TH KEYDB-BENCHMARK 1 "August 17, 2019" .SH NAME -keydb-benchmark \- Benechmark a KeyDB instance +keydb-benchmark \- Benchmark a KeyDB instance .SH SYNOPSIS .B redis-benchmark [\-h ] [\-p ] [\-c ] [\-n [\-k ] diff --git a/pkg/deb/debian/keydb-sentinel.default b/pkg/deb/debian/keydb-sentinel.default deleted file mode 100755 index 05a3b73b0..000000000 --- a/pkg/deb/debian/keydb-sentinel.default +++ /dev/null @@ -1,8 +0,0 @@ -# keydb-sentinel configure options - -# ULIMIT: Call ulimit -n with this argument prior to invoking KeyDB Sentinel -# itself. This may be required for high-concurrency environments. KeyDB -# Sentinel itself cannot alter its limits as it is not being run as root. -# (default: 65536) -# -ULIMIT=65536 diff --git a/pkg/deb/debian/keydb-sentinel.init b/pkg/deb/debian/keydb-sentinel.init deleted file mode 100755 index 1ec8b9a95..000000000 --- a/pkg/deb/debian/keydb-sentinel.init +++ /dev/null @@ -1,89 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: keydb-sentinel -# Required-Start: $syslog $remote_fs -# Required-Stop: $syslog $remote_fs -# Should-Start: $local_fs -# Should-Stop: $local_fs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: keydb-sentinel - Persistent key-value db monitor -# Description: keydb-sentinel - Persistent key-value db monitor -### END INIT INFO - - -PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin -DAEMON=/usr/bin/keydb-sentinel -DAEMON_ARGS=/etc/keydb/sentinel.conf -NAME=keydb-sentinel -DESC=keydb-sentinel - -RUNDIR=/var/run/sentinel -PIDFILE=$RUNDIR/keydb-sentinel.pid - -test -x $DAEMON || exit 0 - -if [ -r /etc/default/$NAME ] -then - . /etc/default/$NAME -fi - -. /lib/lsb/init-functions - -set -e - -if [ "$(id -u)" != "0" ] -then - log_failure_msg "Must be run as root." - exit 1 -fi - -case "$1" in - start) - echo -n "Starting $DESC: " - mkdir -p $RUNDIR - touch $PIDFILE - chown keydb:keydb $RUNDIR $PIDFILE - chmod 755 $RUNDIR - - if [ -n "$ULIMIT" ] - then - ulimit -n $ULIMIT || true - fi - - if start-stop-daemon --start --quiet --oknodo --umask 007 --pidfile $PIDFILE --chuid keydb:keydb --exec $DAEMON -- $DAEMON_ARGS - then - echo "$NAME." - else - echo "failed" - fi - ;; - stop) - echo -n "Stopping $DESC: " - - if start-stop-daemon --stop --retry forever/TERM/1 --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON - then - echo "$NAME." - else - echo "failed" - fi - rm -f $PIDFILE - sleep 1 - ;; - - restart|force-reload) - ${0} stop - ${0} start - ;; - - status) - status_of_proc -p ${PIDFILE} ${DAEMON} ${NAME} - ;; - - *) - echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload|status}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/pkg/deb/debian/keydb-sentinel.install b/pkg/deb/debian/keydb-sentinel.install index 60ba89637..524d7867b 100644 --- a/pkg/deb/debian/keydb-sentinel.install +++ b/pkg/deb/debian/keydb-sentinel.install @@ -1,2 +1,2 @@ -debian/keydb-sentinel.service /lib/systemd/system -sentinel.conf /etc/keydb +debian/keydb-sentinel.service /lib/systemd/system/ +pkg/deb/conf/sentinel.conf /etc/keydb diff --git a/pkg/deb/debian/keydb-sentinel.links b/pkg/deb/debian/keydb-sentinel.links deleted file mode 100644 index 82d49f94e..000000000 --- a/pkg/deb/debian/keydb-sentinel.links +++ /dev/null @@ -1 +0,0 @@ -usr/bin/keydb-check-rdb usr/bin/keydb-sentinel diff --git a/pkg/deb/debian/keydb-sentinel.maintscript b/pkg/deb/debian/keydb-sentinel.maintscript deleted file mode 100644 index 87e4f024c..000000000 --- a/pkg/deb/debian/keydb-sentinel.maintscript +++ /dev/null @@ -1,4 +0,0 @@ -rm_conffile /etc/keydb/keydb-sentinel.post-down.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-sentinel.post-up.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-sentinel.pre-down.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-sentinel.pre-up.d/00_example 4:4.0.2-3~ diff --git a/pkg/deb/debian/keydb-sentinel.manpages b/pkg/deb/debian/keydb-sentinel.manpages index 1b3d9d4a1..08ce51ff5 100644 --- a/pkg/deb/debian/keydb-sentinel.manpages +++ b/pkg/deb/debian/keydb-sentinel.manpages @@ -1 +1 @@ -debian/keydb-sentinel.1 +debian/keydb-pro-sentinel.1 diff --git a/pkg/deb/debian/keydb-sentinel.postinst b/pkg/deb/debian/keydb-sentinel.postinst index 0c856c5c5..787464165 100644 --- a/pkg/deb/debian/keydb-sentinel.postinst +++ b/pkg/deb/debian/keydb-sentinel.postinst @@ -21,4 +21,6 @@ then find /etc/keydb -maxdepth 1 -type d -name 'keydb-sentinel.*.d' -empty -delete fi +systemctl daemon-reload + exit 0 diff --git a/pkg/deb/debian/keydb-sentinel.postrm b/pkg/deb/debian/keydb-sentinel.postrm index 2e9f62888..2ce8771df 100644 --- a/pkg/deb/debian/keydb-sentinel.postrm +++ b/pkg/deb/debian/keydb-sentinel.postrm @@ -11,4 +11,6 @@ fi #DEBHELPER# +systemctl daemon-reload + exit 0 diff --git a/pkg/deb/debian/keydb-server.default b/pkg/deb/debian/keydb-server.default deleted file mode 100755 index 9288682fa..000000000 --- a/pkg/deb/debian/keydb-server.default +++ /dev/null @@ -1,7 +0,0 @@ -# keydb-server configure options - -# ULIMIT: Call ulimit -n with this argument prior to invoking Redis itself. -# This may be required for high-concurrency environments. KeyDB itself cannot -# alter its limits as it is not being run as root. (default: 65536) -# -ULIMIT=65536 diff --git a/pkg/deb/debian/keydb-server.init b/pkg/deb/debian/keydb-server.init deleted file mode 100755 index 4d0de9149..000000000 --- a/pkg/deb/debian/keydb-server.init +++ /dev/null @@ -1,89 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: keydb-server -# Required-Start: $syslog $remote_fs -# Required-Stop: $syslog $remote_fs -# Should-Start: $local_fs -# Should-Stop: $local_fs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: keydb-server - Persistent key-value db -# Description: keydb-server - Persistent key-value db -### END INIT INFO - - -PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin -DAEMON=/usr/bin/keydb-server -DAEMON_ARGS=/etc/keydb/keydb.conf -NAME=keydb-server -DESC=keydb-server - -RUNDIR=/var/run/keydb -PIDFILE=$RUNDIR/keydb-server.pid - -test -x $DAEMON || exit 0 - -if [ -r /etc/default/$NAME ] -then - . /etc/default/$NAME -fi - -. /lib/lsb/init-functions - -set -e - -if [ "$(id -u)" != "0" ] -then - log_failure_msg "Must be run as root." - exit 1 -fi - -case "$1" in - start) - echo -n "Starting $DESC: " - mkdir -p $RUNDIR - touch $PIDFILE - chown keydb:keydb $RUNDIR $PIDFILE - chmod 755 $RUNDIR - - if [ -n "$ULIMIT" ] - then - ulimit -n $ULIMIT || true - fi - - if start-stop-daemon --start --quiet --oknodo --umask 007 --pidfile $PIDFILE --chuid keydb:keydb --exec $DAEMON -- $DAEMON_ARGS - then - echo "$NAME." - else - echo "failed" - fi - ;; - stop) - echo -n "Stopping $DESC: " - - if start-stop-daemon --stop --retry forever/TERM/1 --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON - then - echo "$NAME." - else - echo "failed" - fi - rm -f $PIDFILE - sleep 1 - ;; - - restart|force-reload) - ${0} stop - ${0} start - ;; - - status) - status_of_proc -p ${PIDFILE} ${DAEMON} ${NAME} - ;; - - *) - echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload|status}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/pkg/deb/debian/keydb-server.install b/pkg/deb/debian/keydb-server.install index cee29a7f8..8a82461af 100644 --- a/pkg/deb/debian/keydb-server.install +++ b/pkg/deb/debian/keydb-server.install @@ -1,2 +1,2 @@ -debian/keydb-server.service /lib/systemd/system -pkg/deb/source_build/conf/keydb.conf /etc/keydb +debian/keydb-server.service /lib/systemd/system/ +pkg/deb/conf/keydb.conf /etc/keydb diff --git a/pkg/deb/debian/keydb-server.links b/pkg/deb/debian/keydb-server.links deleted file mode 100644 index 6f47be9ac..000000000 --- a/pkg/deb/debian/keydb-server.links +++ /dev/null @@ -1 +0,0 @@ -usr/bin/keydb-check-rdb usr/bin/keydb-server diff --git a/pkg/deb/debian/keydb-server.maintscript b/pkg/deb/debian/keydb-server.maintscript deleted file mode 100644 index d6ccfe60c..000000000 --- a/pkg/deb/debian/keydb-server.maintscript +++ /dev/null @@ -1,4 +0,0 @@ -rm_conffile /etc/keydb/keydb-server.post-down.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-server.post-up.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-server.pre-down.d/00_example 4:4.0.2-3~ -rm_conffile /etc/keydb/keydb-server.pre-up.d/00_example 4:4.0.2-3~ diff --git a/pkg/deb/debian/keydb-server.manpages b/pkg/deb/debian/keydb-server.manpages index 3935e22fd..06ff67ee3 100644 --- a/pkg/deb/debian/keydb-server.manpages +++ b/pkg/deb/debian/keydb-server.manpages @@ -1 +1 @@ -debian/keydb-server.1 +debian/keydb-pro-server.1 diff --git a/pkg/deb/debian/keydb-server.postinst b/pkg/deb/debian/keydb-server.postinst index b53ce4142..9d48ee638 100644 --- a/pkg/deb/debian/keydb-server.postinst +++ b/pkg/deb/debian/keydb-server.postinst @@ -21,4 +21,6 @@ then find /etc/keydb -maxdepth 1 -type d -name 'keydb-server.*.d' -empty -delete fi +systemctl daemon-reload + exit 0 diff --git a/pkg/deb/debian/keydb-server.postrm b/pkg/deb/debian/keydb-server.postrm index 16ef23bd7..cf57953c3 100644 --- a/pkg/deb/debian/keydb-server.postrm +++ b/pkg/deb/debian/keydb-server.postrm @@ -11,4 +11,6 @@ fi #DEBHELPER# +systemctl daemon-reload + exit 0 diff --git a/pkg/deb/debian/keydb-tools.install b/pkg/deb/debian/keydb-tools.install index 6799a5b30..bcd67d080 100644 --- a/pkg/deb/debian/keydb-tools.install +++ b/pkg/deb/debian/keydb-tools.install @@ -1,5 +1,6 @@ debian/bash_completion.d/* /usr/share/bash-completion/completions -src/keydb-benchmark /usr/bin +src/keydb-benchmark /usr/bin src/keydb-check-aof /usr/bin src/keydb-check-rdb /usr/bin src/keydb-cli /usr/bin +src/keydb-server /usr/bin diff --git a/pkg/deb/debian/patches/0001-fix-ftbfs-on-kfreebsd.patch b/pkg/deb/debian/patches/0001-fix-ftbfs-on-kfreebsd.patch deleted file mode 100644 index 65c155215..000000000 --- a/pkg/deb/debian/patches/0001-fix-ftbfs-on-kfreebsd.patch +++ /dev/null @@ -1,21 +0,0 @@ -From: Chris Lamb -Date: Fri, 30 Oct 2015 10:53:42 +0000 -Subject: fix-ftbfs-on-kfreebsd - ---- - src/fmacros.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/fmacros.h b/src/fmacros.h -index 6e56c75..d490aec 100644 ---- a/src/fmacros.h -+++ b/src/fmacros.h -@@ -41,7 +41,7 @@ - #define _ALL_SOURCE - #endif - --#if defined(__linux__) || defined(__OpenBSD__) -+#if defined(__linux__) || defined(__OpenBSD__) || defined(__GLIBC__) - #define _XOPEN_SOURCE 700 - /* - * On NetBSD, _XOPEN_SOURCE undefines _NETBSD_SOURCE and diff --git a/pkg/deb/debian/patches/0007-Add-support-for-a-USE_SYSTEM_HIREDIS-flag.patch b/pkg/deb/debian/patches/0007-Add-support-for-a-USE_SYSTEM_HIREDIS-flag.patch deleted file mode 100644 index 8e59cc144..000000000 --- a/pkg/deb/debian/patches/0007-Add-support-for-a-USE_SYSTEM_HIREDIS-flag.patch +++ /dev/null @@ -1,84 +0,0 @@ -From: Chris Lamb -Date: Wed, 3 Oct 2018 19:24:16 +0100 -Subject: Add support for a USE_SYSTEM_HIREDIS flag. - ---- - deps/Makefile | 2 ++ - src/Makefile | 19 ++++++++++++++----- - 2 files changed, 16 insertions(+), 5 deletions(-) - -diff --git a/deps/Makefile b/deps/Makefile -index 2ed7736..d6b8e3e 100644 ---- a/deps/Makefile -+++ b/deps/Makefile -@@ -33,7 +33,9 @@ ifneq ($(shell sh -c '[ -f .make-ldflags ] && cat .make-ldflags || echo none'), - endif - - distclean: -+ifneq ($(USE_SYSTEM_HIREDIS),yes) - -(cd hiredis && $(MAKE) clean) > /dev/null || true -+endif - -(cd linenoise && $(MAKE) clean) > /dev/null || true - ifneq ($(USE_SYSTEM_LUA),yes) - -(cd lua && $(MAKE) clean) > /dev/null || true -diff --git a/src/Makefile b/src/Makefile -index 49085f2..9e7e6f1 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -16,7 +16,7 @@ release_hdr := $(shell sh -c './mkreleasehdr.sh') - uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') - uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not') - OPTIMIZATION?=-O2 --DEPENDENCY_TARGETS=hiredis linenoise -+DEPENDENCY_TARGETS=linenoise - NODEPS:=clean distclean - - # Default settings -@@ -107,7 +107,7 @@ endif - endif - endif - # Include paths to dependencies --FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -+FINAL_CFLAGS+= -I../deps/linenoise - - ifeq ($(MALLOC),tcmalloc) - FINAL_CFLAGS+= -DUSE_TCMALLOC -@@ -139,6 +139,15 @@ else - FINAL_LIBS := ../deps/lua/src/liblua.a $(FINAL_LIBS) - endif - -+ifeq ($(USE_SYSTEM_HIREDIS),yes) -+ FINAL_LIBS+= -lhiredis -+ FINAL_CFLAGS+= -I/usr/include/hiredis -+else -+ DEPENDENCY_TARGETS += hiredis -+ FINAL_LIBS+= ../deps/hiredis/libhiredis.a -+ FINAL_CFLAGS+= -I../deps/hiredis -+endif -+ - REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) $(CPPFLAGS) - REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) - REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) -@@ -210,7 +219,7 @@ endif - - # redis-server - $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) -- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) -+ $(REDIS_LD) -o $@ $^ $(FINAL_LIBS) - - # redis-sentinel - $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) -@@ -226,11 +235,11 @@ $(REDIS_CHECK_AOF_NAME): $(REDIS_SERVER_NAME) - - # redis-cli - $(REDIS_CLI_NAME): $(REDIS_CLI_OBJ) -- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/linenoise/linenoise.o $(FINAL_LIBS) -+ $(REDIS_LD) -o $@ $^ ../deps/linenoise/linenoise.o $(FINAL_LIBS) - - # redis-benchmark - $(REDIS_BENCHMARK_NAME): $(REDIS_BENCHMARK_OBJ) -- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) -+ $(REDIS_LD) -o $@ $^ $(FINAL_LIBS) - - dict-benchmark: dict.c zmalloc.c sds.c siphash.c - $(REDIS_CC) $(FINAL_CFLAGS) $^ -D DICT_BENCHMARK_MAIN -o $@ $(FINAL_LIBS) diff --git a/pkg/deb/debian/patches/0010-Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch b/pkg/deb/debian/patches/0010-Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch deleted file mode 100644 index d7f8b2d1e..000000000 --- a/pkg/deb/debian/patches/0010-Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch +++ /dev/null @@ -1,107 +0,0 @@ -From: Chris Lamb -Date: Sat, 25 Aug 2018 17:52:13 +0200 -Subject: Add support for USE_SYSTEM_JEMALLOC flag. - -https://github.com/antirez/redis/pull/5279 ---- - deps/Makefile | 2 ++ - src/Makefile | 5 +++++ - src/object.c | 5 +++++ - src/zmalloc.c | 10 ++++++++++ - src/zmalloc.h | 4 ++++ - 5 files changed, 26 insertions(+) - -diff --git a/deps/Makefile b/deps/Makefile -index eb35c1e..1342fac 100644 ---- a/deps/Makefile -+++ b/deps/Makefile -@@ -36,7 +36,9 @@ distclean: - -(cd hiredis && $(MAKE) clean) > /dev/null || true - -(cd linenoise && $(MAKE) clean) > /dev/null || true - -(cd lua && $(MAKE) clean) > /dev/null || true -+ifneq ($(USE_SYSTEM_JEMALLOC),yes) - -(cd jemalloc && [ -f Makefile ] && $(MAKE) distclean) > /dev/null || true -+endif - -(rm -f .make-*) - - .PHONY: distclean -diff --git a/src/Makefile b/src/Makefile -index 0ff6e8b..51363fe 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -120,10 +120,15 @@ ifeq ($(MALLOC),tcmalloc_minimal) - endif - - ifeq ($(MALLOC),jemalloc) -+ifeq ($(USE_SYSTEM_JEMALLOC),yes) -+ FINAL_CFLAGS+= -DUSE_JEMALLOC -I/usr/include/jemalloc/include -+ FINAL_LIBS := -ljemalloc $(FINAL_LIBS) -+else - DEPENDENCY_TARGETS+= jemalloc - FINAL_CFLAGS+= -DUSE_JEMALLOC -I../deps/jemalloc/include - FINAL_LIBS := ../deps/jemalloc/lib/libjemalloc.a $(FINAL_LIBS) - endif -+endif - - REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) $(CPPFLAGS) - REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) -diff --git a/src/object.c b/src/object.c -index 6987e1e..e49c2c2 100644 ---- a/src/object.c -+++ b/src/object.c -@@ -36,6 +36,11 @@ - #define strtold(a,b) ((long double)strtod((a),(b))) - #endif - -+#if defined(USE_JEMALLOC) && (USE_SYSTEM_JEMALLOC == yes) -+#define je_mallctl mallctl -+#define je_malloc_stats_print malloc_stats_print -+#endif -+ - /* ===================== Creation and parsing of objects ==================== */ - - robj *createObject(int type, void *ptr) { -diff --git a/src/zmalloc.c b/src/zmalloc.c -index 2482f51..80e6571 100644 ---- a/src/zmalloc.c -+++ b/src/zmalloc.c -@@ -63,6 +63,15 @@ void zlibc_free(void *ptr) { - #define realloc(ptr,size) tc_realloc(ptr,size) - #define free(ptr) tc_free(ptr) - #elif defined(USE_JEMALLOC) -+#if USE_SYSTEM_JEMALLOC == yes -+#define malloc(size) malloc(size) -+#define calloc(count,size) calloc(count,size) -+#define realloc(ptr,size) realloc(ptr,size) -+#define free(ptr) free(ptr) -+#define mallocx(size,flags) mallocx(size,flags) -+#define dallocx(ptr,flags) dallocx(ptr,flags) -+#define je_mallctl mallctl -+#else - #define malloc(size) je_malloc(size) - #define calloc(count,size) je_calloc(count,size) - #define realloc(ptr,size) je_realloc(ptr,size) -@@ -70,6 +79,7 @@ void zlibc_free(void *ptr) { - #define mallocx(size,flags) je_mallocx(size,flags) - #define dallocx(ptr,flags) je_dallocx(ptr,flags) - #endif -+#endif - - #define update_zmalloc_stat_alloc(__n) do { \ - size_t _n = (__n); \ -diff --git a/src/zmalloc.h b/src/zmalloc.h -index 6fb19b0..62ccf29 100644 ---- a/src/zmalloc.h -+++ b/src/zmalloc.h -@@ -50,7 +50,11 @@ - #include - #if (JEMALLOC_VERSION_MAJOR == 2 && JEMALLOC_VERSION_MINOR >= 1) || (JEMALLOC_VERSION_MAJOR > 2) - #define HAVE_MALLOC_SIZE 1 -+#if USE_SYSTEM_JEMALLOC == yes -+#define zmalloc_size(p) malloc_usable_size(p) -+#else - #define zmalloc_size(p) je_malloc_usable_size(p) -+#endif - #else - #error "Newer version of jemalloc required" - #endif diff --git a/pkg/deb/debian/patches/0010-Use-get_current_dir_name-over-PATHMAX-etc.patch b/pkg/deb/debian/patches/0010-Use-get_current_dir_name-over-PATHMAX-etc.patch deleted file mode 100644 index 9af228c09..000000000 --- a/pkg/deb/debian/patches/0010-Use-get_current_dir_name-over-PATHMAX-etc.patch +++ /dev/null @@ -1,75 +0,0 @@ -From: Chris Lamb -Date: Wed, 24 Jan 2018 22:06:35 +1100 -Subject: Use get_current_dir_name over PATHMAX, etc. - ---- - src/aof.c | 3 ++- - src/rdb.c | 7 ++++--- - 2 files changed, 6 insertions(+), 4 deletions(-) - -diff --git a/src/aof.c b/src/aof.c -index 9723fc3..cc89847 100644 ---- a/src/aof.c -+++ b/src/aof.c -@@ -246,7 +246,7 @@ int startAppendOnly(void) { - newfd = open(server.aof_filename,O_WRONLY|O_APPEND|O_CREAT,0644); - serverAssert(server.aof_state == AOF_OFF); - if (newfd == -1) { -- char *cwdp = getcwd(cwd,MAXPATHLEN); -+ char *cwdp = get_current_dir_name(); - - serverLog(LL_WARNING, - "Redis needs to enable the AOF but can't open the " -@@ -254,6 +254,7 @@ int startAppendOnly(void) { - server.aof_filename, - cwdp ? cwdp : "unknown", - strerror(errno)); -+ zfree(cwdp); - return C_ERR; - } - if (server.rdb_child_pid != -1) { -diff --git a/src/rdb.c b/src/rdb.c -index 3e43cb4..6058160 100644 ---- a/src/rdb.c -+++ b/src/rdb.c -@@ -1218,7 +1218,6 @@ werr: /* Write error. */ - /* Save the DB on disk. Return C_ERR on error, C_OK on success. */ - int rdbSave(char *filename, rdbSaveInfo *rsi) { - char tmpfile[256]; -- char cwd[MAXPATHLEN]; /* Current working dir path for error messages. */ - FILE *fp; - rio rdb; - int error = 0; -@@ -1226,13 +1225,14 @@ int rdbSave(char *filename, rdbSaveInfo *rsi) { - snprintf(tmpfile,256,"temp-%d.rdb", (int) getpid()); - fp = fopen(tmpfile,"w"); - if (!fp) { -- char *cwdp = getcwd(cwd,MAXPATHLEN); -+ char *cwdp = get_current_dir_name(); - serverLog(LL_WARNING, - "Failed opening the RDB file %s (in server root dir %s) " - "for saving: %s", - filename, - cwdp ? cwdp : "unknown", - strerror(errno)); -+ zfree(cwdp); - return C_ERR; - } - -@@ -1254,7 +1254,7 @@ int rdbSave(char *filename, rdbSaveInfo *rsi) { - /* Use RENAME to make sure the DB file is changed atomically only - * if the generate DB file is ok. */ - if (rename(tmpfile,filename) == -1) { -- char *cwdp = getcwd(cwd,MAXPATHLEN); -+ char *cwdp = get_current_dir_name(); - serverLog(LL_WARNING, - "Error moving temp DB file %s on the final " - "destination %s (in server root dir %s): %s", -@@ -1262,6 +1262,7 @@ int rdbSave(char *filename, rdbSaveInfo *rsi) { - filename, - cwdp ? cwdp : "unknown", - strerror(errno)); -+ zfree(cwdp); - unlink(tmpfile); - return C_ERR; - } diff --git a/pkg/deb/debian/patches/0011-Add-support-for-a-USE_SYSTEM_LUA-flag.patch b/pkg/deb/debian/patches/0011-Add-support-for-a-USE_SYSTEM_LUA-flag.patch deleted file mode 100644 index 7e57c48f7..000000000 --- a/pkg/deb/debian/patches/0011-Add-support-for-a-USE_SYSTEM_LUA-flag.patch +++ /dev/null @@ -1,71 +0,0 @@ -From: Chris Lamb -Date: Sun, 26 Aug 2018 12:57:32 +0200 -Subject: Add support for a USE_SYSTEM_LUA flag. - -https://github.com/antirez/redis/pull/5280 ---- - deps/Makefile | 2 ++ - src/Makefile | 15 ++++++++++++--- - 2 files changed, 14 insertions(+), 3 deletions(-) - -diff --git a/deps/Makefile b/deps/Makefile -index 1342fac..2ed7736 100644 ---- a/deps/Makefile -+++ b/deps/Makefile -@@ -35,7 +35,9 @@ endif - distclean: - -(cd hiredis && $(MAKE) clean) > /dev/null || true - -(cd linenoise && $(MAKE) clean) > /dev/null || true -+ifneq ($(USE_SYSTEM_LUA),yes) - -(cd lua && $(MAKE) clean) > /dev/null || true -+endif - ifneq ($(USE_SYSTEM_JEMALLOC),yes) - -(cd jemalloc && [ -f Makefile ] && $(MAKE) distclean) > /dev/null || true - endif -diff --git a/src/Makefile b/src/Makefile -index 51363fe..49085f2 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -16,7 +16,7 @@ release_hdr := $(shell sh -c './mkreleasehdr.sh') - uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') - uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not') - OPTIMIZATION?=-O2 --DEPENDENCY_TARGETS=hiredis linenoise lua -+DEPENDENCY_TARGETS=hiredis linenoise - NODEPS:=clean distclean - - # Default settings -@@ -107,7 +107,7 @@ endif - endif - endif - # Include paths to dependencies --FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -+FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise - - ifeq ($(MALLOC),tcmalloc) - FINAL_CFLAGS+= -DUSE_TCMALLOC -@@ -130,6 +130,15 @@ else - endif - endif - -+ifeq ($(USE_SYSTEM_LUA),yes) -+ FINAL_CFLAGS+= -I/usr/include/lua5.1 -+ FINAL_LIBS := -llua5.1 $(FINAL_LIBS) -+else -+ FINAL_CFLAGS+= -I../deps/lua/src -+ DEPENDENCY_TARGETS+= lua -+ FINAL_LIBS := ../deps/lua/src/liblua.a $(FINAL_LIBS) -+endif -+ - REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) $(CPPFLAGS) - REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) - REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) -@@ -201,7 +210,7 @@ endif - - # redis-server - $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) -- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS) -+ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS) - - # redis-sentinel - $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) diff --git a/pkg/deb/debian/patches/debian-packaging/0003-dpkg-buildflags.patch b/pkg/deb/debian/patches/debian-packaging/0003-dpkg-buildflags.patch deleted file mode 100644 index fdbe661f3..000000000 --- a/pkg/deb/debian/patches/debian-packaging/0003-dpkg-buildflags.patch +++ /dev/null @@ -1,49 +0,0 @@ -From: Chris Lamb -Date: Fri, 30 Oct 2015 10:53:42 +0000 -Subject: Add CPPFLAGS in upstream makefiles - ---- - deps/hiredis/Makefile | 2 +- - deps/linenoise/Makefile | 2 +- - src/Makefile | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/deps/hiredis/Makefile b/deps/hiredis/Makefile -index 9a4de83..4c8a8e4 100644 ---- a/deps/hiredis/Makefile -+++ b/deps/hiredis/Makefile -@@ -41,7 +41,7 @@ CXX:=$(shell sh -c 'type $(CXX) >/dev/null 2>/dev/null && echo $(CXX) || echo g+ - OPTIMIZATION?=-O3 - WARNINGS=-Wall -W -Wstrict-prototypes -Wwrite-strings - DEBUG_FLAGS?= -g -ggdb --REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG_FLAGS) $(ARCH) -+REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG_FLAGS) $(ARCH) $(CPPFLAGS) - REAL_LDFLAGS=$(LDFLAGS) $(ARCH) - - DYLIBSUFFIX=so -diff --git a/deps/linenoise/Makefile b/deps/linenoise/Makefile -index 1dd894b..12ada21 100644 ---- a/deps/linenoise/Makefile -+++ b/deps/linenoise/Makefile -@@ -6,7 +6,7 @@ R_CFLAGS= $(STD) $(WARN) $(OPT) $(DEBUG) $(CFLAGS) - R_LDFLAGS= $(LDFLAGS) - DEBUG= -g - --R_CC=$(CC) $(R_CFLAGS) -+R_CC=$(CC) $(R_CFLAGS) $(CPPFLAGS) - R_LD=$(CC) $(R_LDFLAGS) - - linenoise.o: linenoise.h linenoise.c -diff --git a/src/Makefile b/src/Makefile -index 773d3b2..0ff6e8b 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -125,7 +125,7 @@ ifeq ($(MALLOC),jemalloc) - FINAL_LIBS := ../deps/jemalloc/lib/libjemalloc.a $(FINAL_LIBS) - endif - --REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) -+REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) $(CPPFLAGS) - REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) - REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) - diff --git a/pkg/deb/debian/patches/debian-packaging/0007-Set-Debian-configuration-defaults.patch b/pkg/deb/debian/patches/debian-packaging/0007-Set-Debian-configuration-defaults.patch deleted file mode 100644 index 7fe85ab1b..000000000 --- a/pkg/deb/debian/patches/debian-packaging/0007-Set-Debian-configuration-defaults.patch +++ /dev/null @@ -1,109 +0,0 @@ -From: Chris Lamb -Date: Tue, 10 Oct 2017 09:56:42 +0100 -Subject: Set Debian configuration defaults. - ---- - keydb.conf | 12 ++++++------ - sentinel.conf | 9 +++++---- - 2 files changed, 11 insertions(+), 10 deletions(-) - -diff --git a/keydb.conf b/keydb.conf -index 93ab9a4..24e6c79 100644 ---- a/keydb.conf -+++ b/keydb.conf -@@ -66,7 +66,7 @@ - # IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES - # JUST COMMENT THE FOLLOWING LINE. - # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --bind 127.0.0.1 -+bind 127.0.0.1 ::1 - - # Protected mode is a layer of security protection, in order to avoid that - # keydb instances left open on the internet are accessed and exploited. -@@ -106,7 +106,7 @@ tcp-backlog 511 - # incoming connections. There is no default, so keydb will not listen - # on a unix socket when not specified. - # --# unixsocket /tmp/keydb.sock -+# unixsocket /var/run/keydb/keydb-server.sock - # unixsocketperm 700 - - # Close the connection after a client is idle for N seconds (0 to disable) -@@ -133,7 +133,7 @@ tcp-keepalive 300 - - # By default keydb does not run as a daemon. Use 'yes' if you need it. - # Note that keydb will write a pid file in /var/run/keydb.pid when daemonized. --daemonize no -+daemonize yes - - # If you run keydb from upstart or systemd, keydb can interact with your - # supervision tree. Options: -@@ -155,7 +155,7 @@ supervised no - # - # Creating a pid file is best effort: if keydb is not able to create it - # nothing bad happens, the server will start and run normally. --pidfile /var/run/keydb_6379.pid -+pidfile /var/run/keydb/keydb-server.pid - - # Specify the server verbosity level. - # This can be one of: -@@ -168,7 +168,7 @@ loglevel notice - # Specify the log file name. Also the empty string can be used to force - # keydb 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/keydb/keydb-server.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. -@@ -260,7 +260,7 @@ dbfilename dump.rdb - # 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/keydb - - ################################# REPLICATION ################################# - -diff --git a/sentinel.conf b/sentinel.conf -index bc9a705..58a4c84 100644 ---- a/sentinel.conf -+++ b/sentinel.conf -@@ -13,6 +13,7 @@ - # For example you may use one of the following: - # - # bind 127.0.0.1 192.168.1.1 -+bind 127.0.0.1 ::1 - # - # protected-mode no - -@@ -23,17 +24,17 @@ port 26379 - # By default keydb Sentinel does not run as a daemon. Use 'yes' if you need it. - # Note that keydb will write a pid file in /var/run/keydb-sentinel.pid when - # daemonized. --daemonize no -+daemonize yes - - # When running daemonized, keydb Sentinel writes a pid file in - # /var/run/keydb-sentinel.pid by default. You can specify a custom pid file - # location here. --pidfile /var/run/keydb-sentinel.pid -+pidfile /var/run/sentinel/keydb-sentinel.pid - - # 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/keydb/keydb-sentinel.log - - # sentinel announce-ip - # sentinel announce-port -@@ -62,7 +63,7 @@ logfile "" - # For keydb Sentinel to chdir to /tmp at startup is the simplest thing - # for the process to don't interfere with administrative tasks such as - # unmounting filesystems. --dir /tmp -+dir /var/lib/keydb - - # sentinel monitor - # diff --git a/pkg/deb/debian/patches/series b/pkg/deb/debian/patches/series deleted file mode 100644 index ccb3d98d6..000000000 --- a/pkg/deb/debian/patches/series +++ /dev/null @@ -1,8 +0,0 @@ -0001-fix-ftbfs-on-kfreebsd.patch -#debian-packaging/0003-dpkg-buildflags.patch -#debian-packaging/0007-Set-Debian-configuration-defaults.patch -#0010-Use-get_current_dir_name-over-PATHMAX-etc.patch -#0010-Add-support-for-USE_SYSTEM_JEMALLOC-flag.patch -#0011-Add-support-for-a-USE_SYSTEM_LUA-flag.patch -#0007-Add-support-for-a-USE_SYSTEM_HIREDIS-flag.patch -#test diff --git a/pkg/deb/debian/patches/test b/pkg/deb/debian/patches/test deleted file mode 100644 index 5cab70cec..000000000 --- a/pkg/deb/debian/patches/test +++ /dev/null @@ -1,83 +0,0 @@ -Description: - TODO: Put a short summary on the line above and replace this paragraph - with a longer explanation of this change. Complete the meta-information - with other relevant fields (see below for details). To make it easier, the - information below has been extracted from the changelog. Adjust it or drop - it. - . - redis (5:5.0.5-1chl1~bionic1) bionic; urgency=medium - . - * Redis 5.0.5 fixes an important issue with AOF and adds multiple very useful - modules APIs. Moreover smaller bugs in other parts of Redis are fixed in - this release. - * Streams: a bug in the iterator could prevent certain items to be returned in - range queries under specific conditions. - * Memleak in bitfieldCommand fixed. - * Modules API: Preserve client*>id for blocked clients. - * Fix memory leak when rewriting config file in case of write errors. - * New modules API: RedisModule_GetKeyNameFromIO(). - * Fix non critical bugs in diskless replication. - * New mdouels API: command filtering. See RedisModule_RegisterCommandFilter(); - * Tests improved to be more deterministic. - * Fix a Redis Cluster bug, manual failover may abort because of the master - sending PINGs to the replicas. -Author: Chris Lea - ---- -The information above should follow the Patch Tagging Guidelines, please -checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here -are templates for supplementary fields that you might want to add: - -Origin: , -Bug: -Bug-Debian: https://bugs.debian.org/ -Bug-Ubuntu: https://launchpad.net/bugs/ -Forwarded: -Reviewed-By: -Last-Update: 2019-08-14 - ---- /dev/null -+++ redis-5.0.5/redis_5.0.5-1chl1~bionic1.dsc -@@ -0,0 +1,42 @@ -+-----BEGIN PGP SIGNED MESSAGE----- -+Hash: SHA512 -+ -+Format: 3.0 (quilt) -+Source: redis -+Binary: redis, redis-sentinel, redis-server, redis-tools -+Architecture: any all -+Version: 5:5.0.5-1chl1~bionic1 -+Maintainer: Chris Lamb -+Homepage: https://redis.io/ -+Standards-Version: 4.2.1 -+Vcs-Browser: https://salsa.debian.org/lamby/pkg-redis -+Vcs-Git: https://salsa.debian.org/lamby/pkg-redis.git -+Testsuite: autopkgtest -+Build-Depends: debhelper (>= 9~), dpkg-dev (>= 1.17.5), systemd, procps , tcl -+Package-List: -+ redis deb database optional arch=all -+ redis-sentinel deb database optional arch=any -+ redis-server deb database optional arch=any -+ redis-tools deb database optional arch=any -+Checksums-Sha1: -+ 71e38ae09ac70012b5bc326522b976bcb8e269d6 1975750 redis_5.0.5.orig.tar.gz -+ 4698bbe4c190f31601d3864d9bcd5ed8380c8723 25956 redis_5.0.5-1chl1~bionic1.debian.tar.xz -+Checksums-Sha256: -+ 2139009799d21d8ff94fc40b7f36ac46699b9e1254086299f8d3b223ca54a375 1975750 redis_5.0.5.orig.tar.gz -+ 639fdb1be66542dc6b84e8c0bc30357e661bde809118cd1754e4cbbb83773a62 25956 redis_5.0.5-1chl1~bionic1.debian.tar.xz -+Files: -+ 2d2c8142baf72e6543174fc7beccaaa1 1975750 redis_5.0.5.orig.tar.gz -+ 1dd668600931bcca0e25f86c5c2cc0aa 25956 redis_5.0.5-1chl1~bionic1.debian.tar.xz -+ -+-----BEGIN PGP SIGNATURE----- -+ -+iQEzBAEBCgAdFiEEtTSUDPRzjdEehKuC2ZMjAYFA0IoFAl1Tk1QACgkQ2ZMjAYFA -+0Iqqzgf5AbOFgzqszqv4YxXg9hf+Iq5CCuw4J5U2Aid5fijLQVFPZaI0AgE3Br7C -+0nxqvxYEIjKF+e2nX6zNjVk3JXYz3/Am/quyrSBI4KW2lIbpfCnhC8zCLOVcDtlX -+jhdlg2rziqCDVaS1jGKR76vdz2FGSv/nAcGrjjOn0Lux7VhoaJgBoMgGCNigL8gB -+Wo36UBhZQ6h3zXJjiJUee40ne55xYENhBoWpMvChOlA6/7cW4Xwf6PKBiqwKaRry -+TYMTeLYgZ2S51ThK5zitfOPpBiP2xVuisL9NxgPiRTL1BnclJnOQzupX3xntNPtn -+Ym34YnxbLTGwew232JvgK3ywMmwBeA== -+=CJU0 -+-----END PGP SIGNATURE----- -+ diff --git a/pkg/deb/debian/rules b/pkg/deb/debian/rules index ba57066d9..bc14ea0f6 100755 --- a/pkg/deb/debian/rules +++ b/pkg/deb/debian/rules @@ -2,12 +2,7 @@ include /usr/share/dpkg/buildflags.mk -#LUA_LIBS_DEBIAN = cjson bitop -#LUA_LIBS_BUNDLED = struct cmsgpack -# -#LUA_OBJECTS = $(addprefix lua_,$(addsuffix .o,$(LUA_LIBS_BUNDLED))) -#LUA_LDFLAGS = $(addprefix -llua5.1-,$(LUA_LIBS_DEBIAN)) $(addprefix ../deps/lua/src/,$(LUA_OBJECTS)) - +export BUILD_TLS=yes export CFLAGS CPPFLAGS LDFLAGS export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_LDFLAGS_MAINT_APPEND = -ldl -latomic $(LUA_LDFLAGS) @@ -24,10 +19,6 @@ endif override_dh_auto_install: debian/bin/generate-systemd-service-files -#override_dh_auto_build: -# make -C deps/lua/src $(LUA_OBJECTS) -# dh_auto_build --parallel -- V=1 USE_SYSTEM_JEMALLOC=yes USE_SYSTEM_LUA=yes USE_SYSTEM_HIREDIS=yes - override_dh_auto_test: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) # Avoid race conditions in upstream testsuite. diff --git a/pkg/deb/debian/source/include-binaries b/pkg/deb/debian/source/include-binaries deleted file mode 100644 index ddd5cd4c9..000000000 --- a/pkg/deb/debian/source/include-binaries +++ /dev/null @@ -1,2 +0,0 @@ -keydb_5.0.6.orig.tar.gz -keydb_5.0.6-1chl1~bionic1.debian.tar.xz diff --git a/pkg/deb/debian/source/lintian-overrides b/pkg/deb/debian/source/lintian-overrides index ca7456a67..44dec9b63 100644 --- a/pkg/deb/debian/source/lintian-overrides +++ b/pkg/deb/debian/source/lintian-overrides @@ -1,2 +1,2 @@ # Upstream do not provide signed tarballs. -keydb source: debian-watch-does-not-check-gpg-signature +keydb-pro source: debian-watch-does-not-check-gpg-signature diff --git a/pkg/deb/debian/source/options b/pkg/deb/debian/source/options deleted file mode 100644 index aa96de89f..000000000 --- a/pkg/deb/debian/source/options +++ /dev/null @@ -1 +0,0 @@ -extend-diff-ignore = "^\.travis\.yml$" diff --git a/pkg/deb/debian/watch b/pkg/deb/debian/watch index bc7d05321..acca0f199 100644 --- a/pkg/deb/debian/watch +++ b/pkg/deb/debian/watch @@ -1,3 +1,3 @@ -version=4 +version=6 opts=uversionmangle=s/-?(alpha|beta|rc)/~$1/ \ - https://github.com/JohnSully/KeyDB/releases .*/archive/(.*).tar.gz + https://github.com/JohnSully/KeyDB-Pro/releases .*/archive/(.*).tar.gz diff --git a/pkg/docker/Dockerfile b/pkg/docker/Dockerfile index 8e5012b78..e429a6857 100644 --- a/pkg/docker/Dockerfile +++ b/pkg/docker/Dockerfile @@ -15,7 +15,6 @@ RUN set -eux; \ gnupg \ wget \ ; \ -# rm -rf /var/lib/apt/lists/*; \ \ dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; \ wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; \ @@ -39,13 +38,14 @@ RUN set -eux; \ gosu nobody true # Load pre-generated equivalent binaries to image (reduces deployment build times) -ADD ./app/* /usr/local/bin/ - +RUN \ + mkdir -p /etc/keydb +ADD ./app/keydb-* /usr/local/bin/ +ADD ./app/docker-entrypoint.sh /usr/local/bin/ +ADD ./app/*.conf /etc/keydb/ # Set up config and binaries RUN \ cd /usr/local/bin && \ - mkdir -p /etc/keydb && \ - mv -f *.conf /etc/keydb && \ sed -i 's/^\(bind .*\)$/# \1/' /etc/keydb/keydb.conf && \ sed -i 's/^\(daemonize .*\)$/# \1/' /etc/keydb/keydb.conf && \ sed -i 's/^\(dir .*\)$/# \1\ndir \/data/' /etc/keydb/keydb.conf && \ @@ -55,7 +55,7 @@ RUN \ cd /etc/keydb && \ ln -s keydb.conf redis.conf -# Ensure deps installed for binaries (including Pro) +# Ensure deps installed for binaries # libc6 (>= 2.17), libcurl4 (>= 7.16.2), libgcc1 (>= 1:3.0), libstdc++6 (>= 4.8.1), libuuid1 (>= 2.16), libssl1.1 (>= 1.1.1) RUN set -eux; \ \ @@ -69,19 +69,7 @@ RUN set -eux; \ libgcc1 \ zlib1g \ ; \ - rm -rf /var/lib/apt/lists/*; \ - \ - apt-mark auto '.*' > /dev/null; \ - [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \ - find /usr/local -type f -executable -exec ldd '{}' ';' \ - | awk '/=>/ { print $(NF-1) }' \ - | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ - | sort -u \ - | xargs -r apt-mark manual \ - ; \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false + rm -rf /var/lib/apt/lists/* # create working directories RUN \ diff --git a/pkg/rpm/generate_rpms.sh b/pkg/rpm/generate_rpms.sh index fdcc7cf57..50634db22 100755 --- a/pkg/rpm/generate_rpms.sh +++ b/pkg/rpm/generate_rpms.sh @@ -2,7 +2,7 @@ ### usage sudo ./generate_rpms -version=$(grep KEYDB_REAL_VERSION ../../../src/version.h | awk '{ printf $3 }' | tr -d \") +version=$(grep KEYDB_REAL_VERSION ../../src/version.h | awk '{ printf $3 }' | tr -d \") release=1 # by default this will always be 1 for keydb version structure. If build release version needs to be update you can modify here arch=$(uname -m) dist=el$(rpm -q --queryformat '%{VERSION}' centos-release | cut -d. -f1)