From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 7E3E113835B for ; Wed, 7 Apr 2021 08:51:42 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A3E9AE09F4; Wed, 7 Apr 2021 08:51:41 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7186EE09F3 for ; Wed, 7 Apr 2021 08:51:41 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 16DCE340DB5 for ; Wed, 7 Apr 2021 08:51:40 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 8E04464C for ; Wed, 7 Apr 2021 08:51:37 +0000 (UTC) From: "Andrew Ammerlaan" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andrew Ammerlaan" Message-ID: <1617778537.65433ba88a032d674582ad5cc387d6dc485b7985.andrewammerlaan@gentoo> Subject: [gentoo-commits] repo/proj/guru:master commit in: net-misc/gmid/files/, net-misc/gmid/ X-VCS-Repository: repo/proj/guru X-VCS-Files: net-misc/gmid/files/gmid.conf net-misc/gmid/files/gmid.confd net-misc/gmid/files/gmid.initd net-misc/gmid/gmid-1.6.ebuild net-misc/gmid/gmid-9999.ebuild X-VCS-Directories: net-misc/gmid/ net-misc/gmid/files/ X-VCS-Committer: andrewammerlaan X-VCS-Committer-Name: Andrew Ammerlaan X-VCS-Revision: 65433ba88a032d674582ad5cc387d6dc485b7985 X-VCS-Branch: master Date: Wed, 7 Apr 2021 08:51:37 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 92da8b60-c449-4c20-a620-b9ba878d8944 X-Archives-Hash: 26ae30f29ace1bfec5d33436391a740b commit: 65433ba88a032d674582ad5cc387d6dc485b7985 Author: Anna Vyalkova sysrq in> AuthorDate: Wed Apr 7 06:55:17 2021 +0000 Commit: Andrew Ammerlaan riseup net> CommitDate: Wed Apr 7 06:55:37 2021 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=65433ba8 net-misc/gmid: fix initd script It writes a valid PID file now Other changes: * add a reasonable default configuration file * automatically generate a self-signed certificate for localhost Package-Manager: Portage-3.0.18, Repoman-3.0.3 Signed-off-by: Anna Vyalkova sysrq.in> net-misc/gmid/files/gmid.conf | 8 ++++++++ net-misc/gmid/files/gmid.confd | 9 --------- net-misc/gmid/files/gmid.initd | 7 +++---- net-misc/gmid/gmid-1.6.ebuild | 17 +++++++++++++++-- net-misc/gmid/gmid-9999.ebuild | 17 +++++++++++++++-- 5 files changed, 41 insertions(+), 17 deletions(-) diff --git a/net-misc/gmid/files/gmid.conf b/net-misc/gmid/files/gmid.conf new file mode 100644 index 000000000..c9b298c2a --- /dev/null +++ b/net-misc/gmid/files/gmid.conf @@ -0,0 +1,8 @@ +user "gemini" # drop privileges + +server "localhost" { + root "/var/gemini/localhost" + auto index on + cert "/etc/ssl/gmid/gmid.crt" + key "/etc/ssl/gmid/gmid.key" +} diff --git a/net-misc/gmid/files/gmid.confd b/net-misc/gmid/files/gmid.confd index 62027f6a4..497ddb58e 100644 --- a/net-misc/gmid/files/gmid.confd +++ b/net-misc/gmid/files/gmid.confd @@ -2,12 +2,3 @@ # Configuration file #GMID_CONFIGFILE="/etc/gmid/gmid.conf" - -# PID file -#GMID_PIDFILE="/var/run/gmid.pid" - -# User to run gmid as -#GMID_USER="gemini" - -# Group to run gmid as -#GMID_GROUP="gemini" diff --git a/net-misc/gmid/files/gmid.initd b/net-misc/gmid/files/gmid.initd index dfe3b0009..6607c7d2f 100644 --- a/net-misc/gmid/files/gmid.initd +++ b/net-misc/gmid/files/gmid.initd @@ -12,10 +12,9 @@ description_reload="Reload the gmid configuration without losing connections." GMID_CONFIGFILE=${GMID_CONFIGFILE:-/etc/gmid/gmid.conf} command="/usr/bin/gmid" -command_args="-c \"${GMID_CONFIGFILE}\"" -pidfile=${GMID_PIDFILE:-/var/run/gmid.pid} -user=${GMID_USER:-gemini} -group=${GMID_GROUP:-gemini} +command_args="-c \"${GMID_CONFIGFILE}\" -f" +command_background=1 +pidfile="/var/run/gmid.pid" depend() { need net diff --git a/net-misc/gmid/gmid-1.6.ebuild b/net-misc/gmid/gmid-1.6.ebuild index da3b22779..3e844bfec 100644 --- a/net-misc/gmid/gmid-1.6.ebuild +++ b/net-misc/gmid/gmid-1.6.ebuild @@ -3,7 +3,10 @@ EAPI=7 -inherit toolchain-funcs +SSL_DEPS_SKIP=1 +SSL_DAYS=36500 + +inherit ssl-cert toolchain-funcs DESCRIPTION="simple and secure Gemini server" HOMEPAGE="https://www.omarpolo.com/pages/gmid.html" @@ -53,13 +56,23 @@ src_configure() { src_install() { default + dodir /etc/gmid + cp "${FILESDIR}"/gmid.conf "${ED}"/etc/gmid/gmid.conf || die + newinitd "${FILESDIR}"/gmid.initd gmid newconfd "${FILESDIR}"/gmid.confd gmid + + keepdir /var/gemini/localhost } pkg_postinst() { + if [[ ! -f "${EROOT}"/etc/ssl/${PN}/${PN}.key ]]; then + install_cert /etc/ssl/${PN}/${PN} + chown gemini:gemini "${EROOT}"/etc/ssl/${PN}/${PN}.{crt,csr,key,pem} + fi + einfo "This gemini server can be run as a user with zero configuration.\n" einfo "In order to use it with the init service you will need to generate a" - einfo "self-signed TLS certificate and key and set up the configuration" + einfo "self-signed TLS certificate and a key and set up the configuration" einfo "file (see man 1 gmid for details)." } diff --git a/net-misc/gmid/gmid-9999.ebuild b/net-misc/gmid/gmid-9999.ebuild index da3b22779..3e844bfec 100644 --- a/net-misc/gmid/gmid-9999.ebuild +++ b/net-misc/gmid/gmid-9999.ebuild @@ -3,7 +3,10 @@ EAPI=7 -inherit toolchain-funcs +SSL_DEPS_SKIP=1 +SSL_DAYS=36500 + +inherit ssl-cert toolchain-funcs DESCRIPTION="simple and secure Gemini server" HOMEPAGE="https://www.omarpolo.com/pages/gmid.html" @@ -53,13 +56,23 @@ src_configure() { src_install() { default + dodir /etc/gmid + cp "${FILESDIR}"/gmid.conf "${ED}"/etc/gmid/gmid.conf || die + newinitd "${FILESDIR}"/gmid.initd gmid newconfd "${FILESDIR}"/gmid.confd gmid + + keepdir /var/gemini/localhost } pkg_postinst() { + if [[ ! -f "${EROOT}"/etc/ssl/${PN}/${PN}.key ]]; then + install_cert /etc/ssl/${PN}/${PN} + chown gemini:gemini "${EROOT}"/etc/ssl/${PN}/${PN}.{crt,csr,key,pem} + fi + einfo "This gemini server can be run as a user with zero configuration.\n" einfo "In order to use it with the init service you will need to generate a" - einfo "self-signed TLS certificate and key and set up the configuration" + einfo "self-signed TLS certificate and a key and set up the configuration" einfo "file (see man 1 gmid for details)." }