sys-apps/sysvinit: Bump to version 2.98

Don't clear agetty on tty1 by default

Closes: https://bugs.gentoo.org/731656
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
This commit is contained in:
Lars Wendler
2020-11-17 09:38:34 +01:00
parent d772c4cb1e
commit 3c8b823949
3 changed files with 207 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
DIST sysvinit-2.93.tar.xz 117580 BLAKE2B 2e771b00dbdc73e76df9e78659aaa5e5fcbfda36290a1b5aa20a5a6fe3540c4616f2a235a668de30d33c620e2d2516da303537eda47b83b29b0844ad7aa77df4 SHA512 c80d07a674253d15ec6382cfaf792f47486e2e84ab9c913d3c9e03b590cf211177a3a14e168f4d1c9c2e97737221f7ac70a75633d90502837a6d29bdc4c48d72
DIST sysvinit-2.96.tar.xz 122164 BLAKE2B 10c28d3bb57fc744b66c3a7ac78912fb6a9d987e9f6f32f82953d23a9884020daa6fa8c7722e6d8145d9899f7f7dc623f69f885d3d8fbbcd313d0e69ffb66497 SHA512 1388398568ebfe53460796f8ab75a3ead6111612888ea36e8f1c0db4d41ef6f45fc217abb7804519ff1143a78d97c95b24e42c8c22c95a47b9436484bfb6f45d
DIST sysvinit-2.97.tar.xz 126848 BLAKE2B dd2612de531a89f1fdbfaeb8b5975aeba9541a6b570587a881bdb11406991c1a9b254d1802725298eb13362d625d3859b520ee964782a0fe43d3f038a28b49e6 SHA512 89950080a120b62bdd297f3a59898dd11e10c7438cf18774bad16c65ce5fb2e190726e601c6f263def32cff59867c0984edcd99d527eb80297901085afbb2e90
DIST sysvinit-2.98.tar.xz 127028 BLAKE2B 302219cd0753dee20772d78ad073e279f430ededab93feaecd166d9be9f91f0f5e97fcfe3e5893d9db963ba638e66e1f6670a94f6e2328fbfdb92325563a129c SHA512 37bc3279b58ce3d808abb78eb6aa8c18a55f991343cc66316ad5b8c2fbb8dce95b83dd995cdab1df8c82a5ab155d0ad65bc3cee3860e4ba4ba4f8c2ac865c3f7

View File

@@ -0,0 +1,62 @@
#
# /etc/inittab: This file describes how the INIT process should set up
# the system in a certain run-level.
#
# Author: Miquel van Smoorenburg, <miquels@cistron.nl>
# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com>
# Modified by: Daniel Robbins, <drobbins@gentoo.org>
# Modified by: Martin Schlemmer, <azarah@gentoo.org>
# Modified by: Mike Frysinger, <vapier@gentoo.org>
# Modified by: Robin H. Johnson, <robbat2@gentoo.org>
# Modified by: William Hubbs, <williamh@gentoo.org>
# Modified by: Lars Wendler, <polynomial-c@gentoo.org>
#
# Default runlevel.
id:3:initdefault:
# System initialization, mount local filesystems, etc.
si::sysinit:/sbin/openrc sysinit
# Further system initialization, brings up the boot runlevel.
rc::bootwait:/sbin/openrc boot
l0u:0:wait:/sbin/telinit u
l0:0:wait:/sbin/openrc shutdown
l0s:0:wait:/sbin/halt.sh
l1:1:wait:/sbin/openrc single
l2:2:wait:/sbin/openrc nonetwork
l3:3:wait:/sbin/openrc default
l4:4:wait:/sbin/openrc default
l5:5:wait:/sbin/openrc default
l6u:6:wait:/sbin/telinit u
l6:6:wait:/sbin/openrc reboot
l6r:6:wait:/sbin/reboot -dkn
#z6:6:respawn:/sbin/sulogin
# new-style single-user
su0:S:wait:/sbin/openrc single
su1:S:wait:/sbin/sulogin
# TERMINALS
#x1:12345:respawn:/sbin/agetty 38400 console linux
c1:12345:respawn:/sbin/agetty --noclear 38400 tty1 linux
c2:2345:respawn:/sbin/agetty 38400 tty2 linux
c3:2345:respawn:/sbin/agetty 38400 tty3 linux
c4:2345:respawn:/sbin/agetty 38400 tty4 linux
c5:2345:respawn:/sbin/agetty 38400 tty5 linux
c6:2345:respawn:/sbin/agetty 38400 tty6 linux
# SERIAL CONSOLES
#s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100
#s1:12345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
# What to do at the "Three Finger Salute".
ca:12345:ctrlaltdel:/sbin/shutdown -r now
# Used by /etc/init.d/xdm to control DM startup.
# Read the comments in /etc/init.d/xdm for more
# info. Do NOT remove, as this will start nothing
# extra at boot if /etc/init.d/xdm is not added
# to the "default" runlevel.
x:a:once:/etc/X11/startDM.sh

View File

@@ -0,0 +1,144 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs flag-o-matic
DESCRIPTION="/sbin/init - parent of all processes"
HOMEPAGE="https://savannah.nongnu.org/projects/sysvinit"
SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
[[ "${PV}" == *beta* ]] || \
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="selinux ibm static kernel_FreeBSD"
CDEPEND="
selinux? (
>=sys-libs/libselinux-1.28
)"
DEPEND="${CDEPEND}
virtual/os-headers"
RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-shutdown )
!<sys-apps/openrc-0.13
"
S="${WORKDIR}/${P/_*}"
PATCHES=(
"${FILESDIR}/${PN}-2.86-kexec.patch" #80220
"${FILESDIR}/${PN}-2.94_beta-shutdown-single.patch" #158615
"${FILESDIR}/${PN}-2.95_beta-shutdown-h.patch" #449354
)
src_prepare() {
default
sed -i \
-e '/^CPPFLAGS =$/d' \
-e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \
src/Makefile || die
# last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux
sed -i -r \
-e '/^(USR)?S?BIN/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)\>::g' \
-e '/^MAN[18]/s:\<(last|lastb|mesg|mountpoint|sulogin|utmpdump|wall)[.][18]\>::g' \
src/Makefile || die
# pidof has moved to >=procps-3.3.9
sed -i -r \
-e '/\/bin\/pidof/d' \
-e '/^MAN8/s:\<pidof.8\>::g' \
src/Makefile || die
# logsave is already in e2fsprogs
sed -i -r \
-e '/^(USR)?S?BIN/s:\<logsave\>::g' \
-e '/^MAN8/s:\<logsave.8\>::g' \
src/Makefile || die
# Mung inittab for specific architectures
cd "${WORKDIR}" || die
cp "${FILESDIR}"/inittab-2.98 inittab || die "cp inittab"
local insert=()
use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' )
use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' )
use arm64 && insert=( 'f0:12345:respawn:/sbin/agetty 9600 ttyAMA0 vt100' )
use hppa && insert=( 'b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100' )
use s390 && insert=( 's0:12345:respawn:/sbin/agetty 38400 console dumb' )
if use ibm ; then
insert+=(
'#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0'
'#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0'
)
fi
(use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab
if use kernel_FreeBSD ; then
sed -i \
-e 's/linux/cons25/g' \
-e 's/ttyS0/cuaa0/g' \
-e 's/ttyS1/cuaa1/g' \
inittab #121786
fi
if use x86 || use amd64 ; then
sed -i \
-e '/ttyS[01]/s:9600:115200:' \
inittab
fi
if [[ ${#insert[@]} -gt 0 ]] ; then
printf '%s\n' '' '# Architecture specific features' "${insert[@]}" >> inittab
fi
}
src_compile() {
tc-export CC
append-lfs-flags
export DISTRO= #381311
export VERSION="${PV}"
use static && append-ldflags -static
emake -C src $(usex selinux 'WITH_SELINUX=yes' '')
}
src_install() {
emake -C src install ROOT="${D}"
dodoc README doc/*
insinto /etc
doins "${WORKDIR}"/inittab
newinitd "${FILESDIR}"/bootlogd.initd bootlogd
into /
dosbin "${FILESDIR}"/halt.sh
keepdir /etc/inittab.d
# dead symlink
find "${ED}" -xtype l -delete || die
find "${ED}" -type d -empty -delete || die
}
pkg_postinst() {
# Reload init to fix unmounting problems of / on next reboot.
# This is really needed, as without the new version of init cause init
# not to quit properly on reboot, and causes a fsck of / on next reboot.
if [[ -z ${ROOT} ]] ; then
if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then
ln -s /dev/initctl /run/initctl \
|| ewarn "Failed to set /run/initctl symlink!"
fi
# Do not return an error if this fails
/sbin/telinit U &>/dev/null
fi
elog "The last/lastb/mesg/mountpoint/sulogin/utmpdump/wall tools have been moved to"
elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps."
# Required for new bootlogd service
if [[ ! -e "${EROOT}/var/log/boot" ]] ; then
touch "${EROOT}/var/log/boot"
fi
}