From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 03 Dec 2021 16:40:55 +0100 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1mtAgB-000254-CT for lore@lore.pengutronix.de; Fri, 03 Dec 2021 16:40:55 +0100 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1mtAgA-0007yc-Ug; Fri, 03 Dec 2021 16:40:54 +0100 Received: from mail.thorsis.com ([92.198.35.195]) by metis.ext.pengutronix.de with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mtAfw-0007y2-8w for ptxdist@pengutronix.de; Fri, 03 Dec 2021 16:40:41 +0100 Received: from localhost (localhost [127.0.0.1]) by mail.thorsis.com (Postfix) with ESMTP id E9F67D76 for ; Fri, 3 Dec 2021 16:40:38 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at mail.thorsis.com Received: from mail.thorsis.com ([127.0.0.1]) by localhost (mail.thorsis.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Hrb98uMKpkYc for ; Fri, 3 Dec 2021 16:40:38 +0100 (CET) Received: by mail.thorsis.com (Postfix, from userid 109) id BB98235AE; Fri, 3 Dec 2021 16:40:38 +0100 (CET) Date: Fri, 3 Dec 2021 16:40:29 +0100 From: Alexander Dahl To: Clemens Gruber Message-ID: Mail-Followup-To: Clemens Gruber , ptxdist@pengutronix.de References: <20211202150955.121266-1-clemens.gruber@pqgruber.com> <20211203151706.glrmlwa4yadeucwm@pengutronix.de> Content-Disposition: inline In-Reply-To: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on metis.ext.pengutronix.de X-Spam-Level: X-Spam-Status: No, score=-2.6 required=4.0 tests=AWL,BAYES_00,SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Subject: Re: [ptxdist] [PATCH] redis: new package X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: ptxdist@pengutronix.de MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false Hello Clemens, Am Fri, Dec 03, 2021 at 04:28:39PM +0100 schrieb Clemens Gruber: > On Fri, Dec 03, 2021 at 04:17:06PM +0100, Roland Hieber wrote: > > On Thu, Dec 02, 2021 at 04:09:55PM +0100, Clemens Gruber wrote: > > > Adds a new package for redis, an open source (BSD licensed), in-memory > > > data structure store, used as a database, cache, and message broker. > > > > > > Signed-off-by: Clemens Gruber > > > --- > > > ...ort-systemd-and-set-a-data-directory.patch | 30 ++++++ > > > patches/redis-6.2.6/series | 4 + > > > projectroot/etc/group | 1 + > > > projectroot/etc/passwd | 1 + > > > .../usr/lib/systemd/system/redis.service | 23 +++++ > > > projectroot/usr/lib/tmpfiles.d/redis.conf | 1 + > > > rules/redis.in | 27 ++++++ > > > rules/redis.make | 96 +++++++++++++++++++ > > > 8 files changed, 183 insertions(+) > > > create mode 100644 patches/redis-6.2.6/0001-Support-systemd-and-set-a-data-directory.patch > > > create mode 100644 patches/redis-6.2.6/series > > > create mode 100644 projectroot/usr/lib/systemd/system/redis.service > > > create mode 100644 projectroot/usr/lib/tmpfiles.d/redis.conf > > > create mode 100644 rules/redis.in > > > create mode 100644 rules/redis.make > > > > > > diff --git a/patches/redis-6.2.6/0001-Support-systemd-and-set-a-data-directory.patch b/patches/redis-6.2.6/0001-Support-systemd-and-set-a-data-directory.patch > > > new file mode 100644 > > > index 000000000..34d8fd283 > > > --- /dev/null > > > +++ b/patches/redis-6.2.6/0001-Support-systemd-and-set-a-data-directory.patch > > > @@ -0,0 +1,30 @@ > > > +From: Clemens Gruber > > > +Date: Mon, 15 Nov 2021 16:21:31 +0100 > > > +Subject: [PATCH] Support systemd and set a data directory > > > + > > > +--- > > > + redis.conf | 4 ++-- > > > + 1 file changed, 2 insertions(+), 2 deletions(-) > > > + > > > +diff --git a/redis.conf b/redis.conf > > > +index e8eff2774981..8f76ea1c84e4 100644 > > > +--- a/redis.conf > > > ++++ b/redis.conf > > > +@@ -272,7 +272,7 @@ daemonize no > > > + # The default is "no". To run under upstart/systemd, you can simply uncomment > > > + # the line below: > > > + # > > > +-# supervised auto > > > ++supervised auto > > > + > > > + # If a pid file is specified, Redis writes it where specified at startup > > > + # and removes it at exit. > > > +@@ -451,7 +451,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 --git a/patches/redis-6.2.6/series b/patches/redis-6.2.6/series > > > new file mode 100644 > > > index 000000000..1a299f8b7 > > > --- /dev/null > > > +++ b/patches/redis-6.2.6/series > > > @@ -0,0 +1,4 @@ > > > +# generated by git-ptx-patches > > > +#tag:base --start-number 1 > > > +0001-Support-systemd-and-set-a-data-directory.patch > > > +# a122637ab2789578ffe3ff7cc6f22faf - git-ptx-patches magic > > > diff --git a/projectroot/etc/group b/projectroot/etc/group > > > index 09df73ba0..69d650510 100644 > > > --- a/projectroot/etc/group > > > +++ b/projectroot/etc/group > > > @@ -33,4 +33,5 @@ render:x:209: > > > pulse:x:210: > > > chrony:x:211: > > > rauc-hawkbit:x:212: > > > +redis:x:213: > > > nogroup:x:65534: > > > diff --git a/projectroot/etc/passwd b/projectroot/etc/passwd > > > index 529f49a77..b4669abb5 100644 > > > --- a/projectroot/etc/passwd > > > +++ b/projectroot/etc/passwd > > > @@ -17,5 +17,6 @@ systemd-journal-upload:x:208:208:systemd-journal-upload:/dev/null:/bin/false > > > pulse:x:209:210:pulse:/dev/null:/bin/false > > > chrony:x:210:211:chrony:/dev/null:/bin/false > > > rauc-hawkbit:x:211:212:rauc-hawkbit:/dev/null:/bin/false > > > +redis:x:212:213:redis:/dev/null:/bin/false > > > rpcuser:x:65533:65534:RPC user:/dev/null:/bin/false > > > nobody:x:65534:65534:Unprivileged Nobody:/dev/null:/bin/false > > > diff --git a/projectroot/usr/lib/systemd/system/redis.service b/projectroot/usr/lib/systemd/system/redis.service > > > new file mode 100644 > > > index 000000000..715e64d69 > > > --- /dev/null > > > +++ b/projectroot/usr/lib/systemd/system/redis.service > > > @@ -0,0 +1,23 @@ > > > +[Unit] > > > +Description=Advanced key-value store > > > +After=network.target > > > + > > > +[Service] > > > +Type=notify > > > +User=redis > > > +Group=redis > > > +ExecStart=/usr/bin/redis-server /etc/redis.conf > > > +TimeoutStartSec=60 > > > +TimeoutStopSec=60 > > > +CapabilityBoundingSet= > > > +PrivateTmp=true > > > +PrivateDevices=true > > > +ProtectSystem=full > > > +ProtectHome=true > > > +NoNewPrivileges=true > > > +RuntimeDirectory=redis > > > +RuntimeDirectoryMode=755 > > > +LimitNOFILE=10032 > > > > Magic number? Or is this really the maximum number of file descriptors > > that redis will ever need? > > By default, Redis sets its maxclients variable to 10000. Number of > required FDs is apparently maxclients + 32. That's why some distros set > the FD limit to 10032. Debian sets it to 65535 but I think 10000 client > connections should be enough for embedded Linux usecases :) > I took the whole service file from ArchLinux btw. Would it help to put that information (where the service unit came from) somewhere? Either commit message or comment in service unit? Greets Alex > > > > > > + > > > +[Install] > > > +WantedBy=multi-user.target > > > diff --git a/projectroot/usr/lib/tmpfiles.d/redis.conf b/projectroot/usr/lib/tmpfiles.d/redis.conf > > > new file mode 100644 > > > index 000000000..d9283eab5 > > > --- /dev/null > > > +++ b/projectroot/usr/lib/tmpfiles.d/redis.conf > > > @@ -0,0 +1 @@ > > > +d /var/lib/redis 0700 redis redis > > > diff --git a/rules/redis.in b/rules/redis.in > > > new file mode 100644 > > > index 000000000..3cf67ea89 > > > --- /dev/null > > > +++ b/rules/redis.in > > > @@ -0,0 +1,27 @@ > > > +## SECTION=system_libraries > > > +menuconfig REDIS > > > + tristate > > > + prompt "redis " > > > + select GCCLIBS_GCC_S > > > + select LIBC_DL > > > + select LIBC_PTHREAD > > > + select LIBC_CRYPT > > > + select SYSTEMD if REDIS_SYSTEMD > > > + help > > > + Redis is an open source (BSD licensed), in-memory data > > > + structure store, used as a database, cache, and message > > > + broker. > > > + > > > +if REDIS > > > + > > > +config REDIS_SYSTEMD > > > + bool > > > + default INITMETHOD_SYSTEMD > > > + > > > +config REDIS_SYSTEMD_UNIT > > > + bool > > > + default y > > > + depends on SYSTEMD > > > + prompt "Unit file for systemd" > > > + > > > +endif > > > diff --git a/rules/redis.make b/rules/redis.make > > > new file mode 100644 > > > index 000000000..bb3bb60ff > > > --- /dev/null > > > +++ b/rules/redis.make > > > @@ -0,0 +1,96 @@ > > > +# -*-makefile-*- > > > +# > > > +# Copyright (C) 2021 by Clemens Gruber > > > +# > > > +# For further information about the PTXdist project and license conditions > > > +# see the README file. > > > +# > > > + > > > +# > > > +# We provide this package > > > +# > > > +PACKAGES-$(PTXCONF_REDIS) += redis > > > + > > > +# > > > +# Paths and names > > > +# > > > +REDIS_VERSION := 6.2.6 > > > +REDIS_MD5 := f69ca96b39ca93001add922d558f9842 > > > +REDIS := redis-$(REDIS_VERSION) > > > +REDIS_SUFFIX := tar.gz > > > +REDIS_URL := https://download.redis.io/releases/$(REDIS).$(REDIS_SUFFIX) > > > +REDIS_SOURCE := $(SRCDIR)/$(REDIS).$(REDIS_SUFFIX) > > > +REDIS_DIR := $(BUILDDIR)/$(REDIS) > > > +REDIS_LICENSE := BSD-3-Clause > > > > Please add at least one license snippet to REDIS_LICENSE_FILES, see > > > > (as far as I can see, LICENSE should be enough.) > > OK. > > I will wait a bit before sending a v2, in case someone else spots > something. > > Thanks, > Clemens > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de > To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de