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 0C735139694 for ; Thu, 9 Mar 2017 21:29:35 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 04D3DE0BD7; Thu, 9 Mar 2017 21:29:34 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id C79D7E0BD7 for ; Thu, 9 Mar 2017 21:29:33 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id A88933416D5 for ; Thu, 9 Mar 2017 21:29:32 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 6DADB6299 for ; Thu, 9 Mar 2017 21:29:31 +0000 (UTC) From: "William Hubbs" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "William Hubbs" Message-ID: <1489094582.d7bbb0f5830e1ec4df1ec52714d70ac6b0a81878.williamh@OpenRC> Subject: [gentoo-commits] proj/openrc:master commit in: init.d/, /, conf.d/ X-VCS-Repository: proj/openrc X-VCS-Files: NEWS.md agetty-guide.md conf.d/Makefile conf.d/agetty init.d/Makefile init.d/agetty.in X-VCS-Directories: / init.d/ conf.d/ X-VCS-Committer: williamh X-VCS-Committer-Name: William Hubbs X-VCS-Revision: d7bbb0f5830e1ec4df1ec52714d70ac6b0a81878 X-VCS-Branch: master Date: Thu, 9 Mar 2017 21:29:31 +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-Archives-Salt: 4c552efe-0cb3-4739-99ae-6ce86f76b1ac X-Archives-Hash: da1de465394c958e6543cf48005a636d commit: d7bbb0f5830e1ec4df1ec52714d70ac6b0a81878 Author: William Hubbs gmail com> AuthorDate: Thu Mar 9 21:23:02 2017 +0000 Commit: William Hubbs gentoo org> CommitDate: Thu Mar 9 21:23:02 2017 +0000 URL: https://gitweb.gentoo.org/proj/openrc.git/commit/?id=d7bbb0f5 add agetty service The agetty service is an alternate way to manage gettys with agetty under Linux which is separate from an external init system. NEWS.md | 4 ++++ agetty-guide.md | 19 +++++++++++++++++++ conf.d/Makefile | 4 ++-- conf.d/agetty | 8 ++++++++ init.d/Makefile | 6 +++--- init.d/agetty.in | 31 +++++++++++++++++++++++++++++++ 6 files changed, 67 insertions(+), 5 deletions(-) diff --git a/NEWS.md b/NEWS.md index 6e36b2b2..6f4f9777 100644 --- a/NEWS.md +++ b/NEWS.md @@ -9,6 +9,10 @@ Since the deptree2dot tool and the perl requirement are completely optional, the deptree2dot tool has been moved to the support directory. As a result, the MKTOOLS=yes/no switch has been removed from the makefiles. +This version adds the agetty service which can be used to spawn +agetty on a specific terminal. This is currently documented in the +agetty-guide.md file at the top level of this distribution. + ## OpenRC-0.23 The tmpfiles.d processing code, which was part of previous versions of diff --git a/agetty-guide.md b/agetty-guide.md new file mode 100644 index 00000000..ce46a830 --- /dev/null +++ b/agetty-guide.md @@ -0,0 +1,19 @@ +# Setting up the agetty service in OpenRC + +The agetty service is an OpenRC specific way to monitor and respawn a +getty, using agetty, on Linux. To use this method, make sure you aren't +spawning a getty manager for this port some other way (such as through +sysvinit/inittab), then run the following commands as root. + +Note that [port] refers to the port you are spawning the getty on, and +not the full path to it. For example, tty0 or ttyS0instead of /dev/tty0 +or /dev/ttyS0. +tty0 or ttyS0, not the full path to it (for example, tty0 or ttyS0 and + +``` +# cd /etc/init.d +# ln -s agetty agetty.[port] +# cd /etc/conf.d +# cp agetty agetty.[port] +#rc-update add agetty.[port] [runlevel] +``` diff --git a/conf.d/Makefile b/conf.d/Makefile index 6c7962b6..64168374 100644 --- a/conf.d/Makefile +++ b/conf.d/Makefile @@ -12,8 +12,8 @@ include ${MK}/os.mk CONF-FreeBSD= ipfw modules moused powerd rarpd savecore syscons -CONF-Linux= consolefont devfs dmesg hwclock keymaps killprocs modules mtab \ - net-online +CONF-Linux= agetty consolefont devfs dmesg hwclock keymaps killprocs modules \ + mtab net-online CONF-NetBSD= moused rarpd savecore diff --git a/conf.d/agetty b/conf.d/agetty new file mode 100644 index 00000000..012eb8de --- /dev/null +++ b/conf.d/agetty @@ -0,0 +1,8 @@ +# Set the baud rate of the terminal line +#baud="" + +# set the terminal type +#termtype="linux" + +# extra options to pass to agetty for this port +#agetty_options="" diff --git a/init.d/Makefile b/init.d/Makefile index 75c88adc..3ecab06b 100644 --- a/init.d/Makefile +++ b/init.d/Makefile @@ -21,9 +21,9 @@ SRCS-FreeBSD= hostid.in modules.in moused.in newsyslog.in pf.in rarpd.in \ SRCS-FreeBSD+= adjkerntz.in devd.in dumpon.in encswap.in ipfw.in \ modules.in modules-load.in mixer.in nscd.in powerd.in syscons.in -SRCS-Linux= binfmt.in devfs.in dmesg.in hwclock.in consolefont.in keymaps.in \ - killprocs.in modules.in modules-load.in mount-ro.in mtab.in numlock.in \ - procfs.in net-online.in sysfs.in termencoding.in +SRCS-Linux= agetty.in binfmt.in devfs.in dmesg.in hwclock.in consolefont.in \ + keymaps.in killprocs.in modules.in modules-load.in mount-ro.in mtab.in \ + numlock.in procfs.in net-online.in sysfs.in termencoding.in # Generic BSD scripts SRCS-NetBSD= hostid.in moused.in newsyslog.in pf.in rarpd.in rc-enabled.in \ diff --git a/init.d/agetty.in b/init.d/agetty.in new file mode 100644 index 00000000..297733cb --- /dev/null +++ b/init.d/agetty.in @@ -0,0 +1,31 @@ +#!@SBINDIR@/openrc-run +# Copyright (c) 2017 The OpenRC Authors. +# See the Authors file at the top-level directory of this distribution and +# https://github.com/OpenRC/openrc/blob/master/AUTHORS +# +# This file is part of OpenRC. It is subject to the license terms in +# the LICENSE file found in the top-level directory of this +# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE +# This file may not be copied, modified, propagated, or distributed +# except according to the terms contained in the LICENSE file. + +description="start agetty on a terminal line" +supervisor=supervise-daemon +port="${RC_SVCNAME#*.}" +term_type="${term_type:-linux}" +command=/sbin/agetty +command_args_foreground="${agetty_options} ${port} ${baud} ${termtype}" +pidfile="/run/${RC_SVCNAME}.pid" + +depend() { + after local +} + +start_pre() { + if [ -z "$port" ]; then + eerror "${RC_SVCNAME} cannot be started directly. You must create" + eerror "symbolic links to it for the ports you want to start" + eerror "agetty on and add those to the appropriate runlevels." + return 1 + fi +}