aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Retornaz <gentoo@retornaz.com>2021-01-17 17:56:29 +0100
committerQuentin Retornaz <gentoo@retornaz.com>2021-01-26 01:21:30 +0100
commit8a89e1d075d942bdee5fe691d7a8cb59b3ae96a3 (patch)
tree28fe49ac8d201fe1a7c0647290a497f7b074c91e /app-admin
parentdev-qt/qtnetwork: upgrade to 5.15.2 (diff)
downloadlibressl-8a89e1d075d942bdee5fe691d7a8cb59b3ae96a3.tar.gz
libressl-8a89e1d075d942bdee5fe691d7a8cb59b3ae96a3.tar.bz2
libressl-8a89e1d075d942bdee5fe691d7a8cb59b3ae96a3.zip
app-admin/conserver: new package
Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Quentin Retornaz <gentoo@retornaz.com>
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/conserver/Manifest2
-rw-r--r--app-admin/conserver/conserver-8.2.3.ebuild98
-rw-r--r--app-admin/conserver/conserver-8.2.4.ebuild98
-rw-r--r--app-admin/conserver/files/8.2.3-libressl.patch31
-rw-r--r--app-admin/conserver/files/8.2.4-libressl.patch27
-rw-r--r--app-admin/conserver/files/conserver.confd-r15
-rw-r--r--app-admin/conserver/files/conserver.initd-r114
-rw-r--r--app-admin/conserver/files/conserver.pam-pambase6
-rw-r--r--app-admin/conserver/metadata.xml32
9 files changed, 313 insertions, 0 deletions
diff --git a/app-admin/conserver/Manifest b/app-admin/conserver/Manifest
new file mode 100644
index 0000000..037203a
--- /dev/null
+++ b/app-admin/conserver/Manifest
@@ -0,0 +1,2 @@
+DIST conserver-8.2.3.tar.gz 329825 BLAKE2B 94ceb427a18b38855ee3146e432be50248a518221d9779c833b3bf1190dedf800ff498ffdd88eafc7cea343b2f87f476738977021c85f19c869bf0a012f1da11 SHA512 35b387629973620aa25211d9532f940e17d7891aa7216776c315cb9fde09106b7388e7cef29f5a2ead8660fc35e2be2b14f38a51cd2b3198251b7e7e70a2254d
+DIST conserver-8.2.4.tar.gz 432854 BLAKE2B 5b6003609187e629544a7183b32cb7b2ab6c854cabf915271a3a924d18c2c13a1bf01f0524740b35859d83c4cb5cc525b87182c342b0075d5486ba428ed71091 SHA512 c59b9bcf582209f8450a8189c1af536951e15ff3aa97994ea99f9de5c6028237a9fa3ca8ba0f7d63ec33b96e45adf76be755181c4199621debfed9feaf1659ad
diff --git a/app-admin/conserver/conserver-8.2.3.ebuild b/app-admin/conserver/conserver-8.2.3.ebuild
new file mode 100644
index 0000000..3a42683
--- /dev/null
+++ b/app-admin/conserver/conserver-8.2.3.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools pam ssl-cert
+
+DESCRIPTION="Serial Console Manager"
+HOMEPAGE="https://www.conserver.com"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD BSD-with-attribution"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~ia64 ppc ppc64 ~sparc x86"
+IUSE="debug ipv6 freeipmi kerberos libressl pam ssl test tcpd"
+RESTRICT="!test? ( test )"
+
+DEPEND="debug? ( dev-libs/dmalloc:= )
+ freeipmi? ( sys-libs/freeipmi:= )
+ kerberos? (
+ virtual/krb5
+ net-libs/libgssglue
+ )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ pam? ( sys-libs/pam )
+ tcpd? ( sys-apps/tcp-wrappers )
+"
+RDEPEND="${DEPEND}
+ pam? ( sys-auth/pambase )"
+
+DOCS=( CHANGES FAQ PROTOCOL README conserver/Sun-serial contrib/maketestcerts)
+
+PATCHES=( "${FILESDIR}/${PV}-libressl.patch" )
+
+src_prepare() {
+ default
+ sed -e '/^INSTALL_PROGRAM/s:-s::' \
+ -i {console,conserver,autologin,contrib/chat}/Makefile.in || die
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ $(use_with debug dmalloc)
+ $(use_with ipv6)
+ $(use_with freeipmi)
+ $(use_with kerberos gssapi)
+ $(use_with ssl openssl)
+ $(use_with pam)
+ $(use_with tcpd libwrap)
+ --with-cffile=conserver/conserver.cf
+ --with-logfile=/var/log/conserver.log
+ --with-master=localhost
+ --with-pidfile=/run/conserver.pid
+ --with-port=7782
+ --with-pwdfile=conserver/conserver.passwd
+ )
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" exampledir="/usr/share/doc/${PF}/examples" install
+
+ keepdir /var/consoles
+ fowners daemon:daemon /var/consoles
+ fperms 700 /var/consoles
+
+ newinitd "${FILESDIR}"/conserver.initd-r1 conserver
+ newconfd "${FILESDIR}"/conserver.confd-r1 conserver
+
+ dodir /etc/conserver
+ fperms 700 /etc/conserver
+ insinto /etc/conserver
+ newins "${S}"/conserver.cf/conserver.cf conserver.cf.sample
+ newins "${S}"/conserver.cf/conserver.passwd conserver.passwd.sample
+
+ einstalldocs
+ docinto examples
+ dodoc -r conserver.cf/samples/.
+
+ newpamd "${FILESDIR}"/conserver.pam-pambase conserver
+}
+
+src_test() {
+ # hangs without -j1
+ emake -j1 test
+}
+
+pkg_postinst() {
+ if use ssl; then
+ if [[ ! -f "${EROOT}"/etc/ssl/conserver/conserver.key ]]; then
+ install_cert /etc/ssl/conserver/conserver
+ fi
+ fi
+}
diff --git a/app-admin/conserver/conserver-8.2.4.ebuild b/app-admin/conserver/conserver-8.2.4.ebuild
new file mode 100644
index 0000000..52671cc
--- /dev/null
+++ b/app-admin/conserver/conserver-8.2.4.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools pam ssl-cert
+
+DESCRIPTION="Serial Console Manager"
+HOMEPAGE="https://www.conserver.com"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD BSD-with-attribution"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug ipv6 freeipmi kerberos libressl pam ssl test tcpd"
+RESTRICT="!test? ( test )"
+
+DEPEND="debug? ( dev-libs/dmalloc:= )
+ freeipmi? ( sys-libs/freeipmi:= )
+ kerberos? (
+ virtual/krb5
+ net-libs/libgssglue
+ )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ pam? ( sys-libs/pam )
+ tcpd? ( sys-apps/tcp-wrappers )
+"
+RDEPEND="${DEPEND}
+ pam? ( sys-auth/pambase )"
+
+DOCS=( CHANGES FAQ PROTOCOL README.md conserver/Sun-serial contrib/maketestcerts)
+
+PATCHES=( "${FILESDIR}/${PV}-libressl.patch" )
+
+src_prepare() {
+ default
+ sed -e '/^INSTALL_PROGRAM/s:-s::' \
+ -i {console,conserver,autologin,contrib/chat}/Makefile.in || die
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ $(use_with debug dmalloc)
+ $(use_with ipv6)
+ $(use_with freeipmi)
+ $(use_with kerberos gssapi)
+ $(use_with ssl openssl)
+ $(use_with pam)
+ $(use_with tcpd libwrap)
+ --with-cffile=conserver/conserver.cf
+ --with-logfile=/var/log/conserver.log
+ --with-master=localhost
+ --with-pidfile=/run/conserver.pid
+ --with-port=7782
+ --with-pwdfile=conserver/conserver.passwd
+ )
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" exampledir="/usr/share/doc/${PF}/examples" install
+
+ keepdir /var/consoles
+ fowners daemon:daemon /var/consoles
+ fperms 700 /var/consoles
+
+ newinitd "${FILESDIR}"/conserver.initd-r1 conserver
+ newconfd "${FILESDIR}"/conserver.confd-r1 conserver
+
+ dodir /etc/conserver
+ fperms 700 /etc/conserver
+ insinto /etc/conserver
+ newins "${S}"/conserver.cf/conserver.cf conserver.cf.sample
+ newins "${S}"/conserver.cf/conserver.passwd conserver.passwd.sample
+
+ einstalldocs
+ docinto examples
+ dodoc -r conserver.cf/samples/.
+
+ newpamd "${FILESDIR}"/conserver.pam-pambase conserver
+}
+
+src_test() {
+ # hangs without -j1
+ emake -j1 test
+}
+
+pkg_postinst() {
+ if use ssl; then
+ if [[ ! -f "${EROOT}"/etc/ssl/conserver/conserver.key ]]; then
+ install_cert /etc/ssl/conserver/conserver
+ fi
+ fi
+}
diff --git a/app-admin/conserver/files/8.2.3-libressl.patch b/app-admin/conserver/files/8.2.3-libressl.patch
new file mode 100644
index 0000000..8b04acb
--- /dev/null
+++ b/app-admin/conserver/files/8.2.3-libressl.patch
@@ -0,0 +1,31 @@
+From f4d2a4a30f930c58bf87511f7ed1a982eca66ce3 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Thu, 6 Jun 2019 21:30:16 -0700
+Subject: [PATCH] libressl
+
+backport of https://github.com/conserver/conserver/pull/26
+---
+ conserver/cutil.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/conserver/cutil.h b/conserver/cutil.h
+index 63aef65..07aa6d4 100644
+--- a/conserver/cutil.h
++++ b/conserver/cutil.h
+@@ -12,10 +12,12 @@
+ # include <openssl/err.h>
+ # if OPENSSL_VERSION_NUMBER < 0x10100000L
+ # define TLS_method SSLv23_method
++# endif/* OPENSSL_VERSION_NUMBER < 0x10100000L */
++# if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
+ # define CIPHER_SEC0
+ # else
+ # define CIPHER_SEC0 ":@SECLEVEL=0"
+-# endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */
++# endif/* OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */
+ #endif
+ #if HAVE_GSSAPI
+ # include <gssapi/gssapi.h>
+--
+2.21.0
+
diff --git a/app-admin/conserver/files/8.2.4-libressl.patch b/app-admin/conserver/files/8.2.4-libressl.patch
new file mode 100644
index 0000000..9151d69
--- /dev/null
+++ b/app-admin/conserver/files/8.2.4-libressl.patch
@@ -0,0 +1,27 @@
+From d3ffe500c934573115e313ac01b8fab5cb4d2e9f Mon Sep 17 00:00:00 2001
+From: Stuart Henderson <stu@spacehopper.org>
+Date: Wed, 27 Mar 2019 23:29:31 +0000
+Subject: [PATCH] fix TLS with LibreSSL, it doesn't have :@SECLEVEL=0
+
+---
+ conserver/cutil.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/conserver/cutil.h b/conserver/cutil.h
+index d21abc5..db4df7f 100644
+--- a/conserver/cutil.h
++++ b/conserver/cutil.h
+@@ -12,10 +12,12 @@
+ # include <openssl/err.h>
+ # if OPENSSL_VERSION_NUMBER < 0x10100000L
+ # define TLS_method SSLv23_method
++# endif/* OPENSSL_VERSION_NUMBER < 0x10100000L */
++# if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
+ # define CIPHER_SEC0
+ # else
+ # define CIPHER_SEC0 ":@SECLEVEL=0"
+-# endif/* OPENSSL_VERSION_NUMBER < 0x10100000L */
++# endif/* OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */
+ #endif
+ #if HAVE_GSSAPI
+ # include <gssapi/gssapi.h>
diff --git a/app-admin/conserver/files/conserver.confd-r1 b/app-admin/conserver/files/conserver.confd-r1
new file mode 100644
index 0000000..119ceb0
--- /dev/null
+++ b/app-admin/conserver/files/conserver.confd-r1
@@ -0,0 +1,5 @@
+# Config file for /etc/init.d/conserver
+# check CONSERVER(8) for details
+
+#CONSERVER_LOG="/var/log/conserver.log"
+#CONSERVER_OPTS=""
diff --git a/app-admin/conserver/files/conserver.initd-r1 b/app-admin/conserver/files/conserver.initd-r1
new file mode 100644
index 0000000..2618580
--- /dev/null
+++ b/app-admin/conserver/files/conserver.initd-r1
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need clock localmount
+ use net
+}
+
+command="/usr/sbin/conserver"
+command_args="-d -L ${CONSERVER_LOG:-/var/log/${RC_SVCNAME}.log} ${CONSERVER_OPTS}"
+command_background="true"
+pidfile="/run/${RC_SVCNAME}.pid"
+required_files="/etc/conserver/${RC_SVCNAME}.cf /etc/conserver/${RC_SVCNAME}.passwd"
diff --git a/app-admin/conserver/files/conserver.pam-pambase b/app-admin/conserver/files/conserver.pam-pambase
new file mode 100644
index 0000000..30025fe
--- /dev/null
+++ b/app-admin/conserver/files/conserver.pam-pambase
@@ -0,0 +1,6 @@
+auth required pam_securetty.so
+auth include system-remote-login
+
+account include system-remote-login
+password include system-remote-login
+session include system-remote-login
diff --git a/app-admin/conserver/metadata.xml b/app-admin/conserver/metadata.xml
new file mode 100644
index 0000000..3b1ff77
--- /dev/null
+++ b/app-admin/conserver/metadata.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dan@danweeks.net</email>
+ <name>Dan Weeks</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>gyakovlev@gentoo.org</email>
+ <name>Georgy Yakovlev</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription>
+ Conserver is an application that allows multiple users to watch a serial
+ console at the same time. It can log the data, allows users to take
+ write-access of a console (one at a time), and has a variety of bells
+ and whistles to accentuate that basic functionality. The idea is that
+ conserver will log all your serial traffic so you can go back and review
+ why something crashed, look at changes (if done on the console), or tie
+ the console logs into a monitoring system (just watch the logfiles it
+ creates). With multi-user capabilities you can work on equipment with
+ others, mentor, train, etc. It also does all that client-server stuff so
+ that, assuming you have a network connection, you can interact with any
+ of the equipment from home or wherever.
+ </longdescription>
+ <use>
+ <flag name="freeipmi">Compile in FreeIPMI support via sys-libs/freeipmi</flag>
+ </use>
+</pkgmetadata>