public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/openrc:master commit in: init.d/, /, conf.d/
@ 2017-03-09 21:29 William Hubbs
  0 siblings, 0 replies; only message in thread
From: William Hubbs @ 2017-03-09 21:29 UTC (permalink / raw
  To: gentoo-commits

commit:     d7bbb0f5830e1ec4df1ec52714d70ac6b0a81878
Author:     William Hubbs <w.d.hubbs <AT> gmail <DOT> com>
AuthorDate: Thu Mar  9 21:23:02 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> 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
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2017-03-09 21:29 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-09 21:29 [gentoo-commits] proj/openrc:master commit in: init.d/, /, conf.d/ William Hubbs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox