public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Lars Wendler" <polynomial-c@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/sysvinit/files/, sys-apps/sysvinit/
Date: Mon, 22 Feb 2021 07:56:19 +0000 (UTC)	[thread overview]
Message-ID: <1613980576.0fae23204018295e711bb1335c797e43b0af9140.polynomial-c@gentoo> (raw)

commit:     0fae23204018295e711bb1335c797e43b0af9140
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 22 07:53:03 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Feb 22 07:56:16 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0fae2320

sys-apps/sysvinit: Bump to version 2.99

Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/sysvinit/Manifest                         |   1 +
 .../sysvinit/files/sysvinit-2.99-shutdown-h.patch  |  82 ++++++++++++
 sys-apps/sysvinit/sysvinit-2.99.ebuild             | 144 +++++++++++++++++++++
 3 files changed, 227 insertions(+)

diff --git a/sys-apps/sysvinit/Manifest b/sys-apps/sysvinit/Manifest
index 8dce800e3d0..f91c0f841f4 100644
--- a/sys-apps/sysvinit/Manifest
+++ b/sys-apps/sysvinit/Manifest
@@ -2,3 +2,4 @@ DIST sysvinit-2.93.tar.xz 117580 BLAKE2B 2e771b00dbdc73e76df9e78659aaa5e5fcbfda3
 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
+DIST sysvinit-2.99.tar.xz 126908 BLAKE2B b82c745d5b695f918d4a163e7b9eaceccc07a46f73c3782c7771cc29a8600be13de4ff30891086df5773d60f37fa3b0f58566ccaf72cd70af68083b51152a38b SHA512 34f328d7d2e6ceddcddfebab49eb9c34e90dc96decf2caeb89dffd2ade54322fa4a3cb9fa1e1a4bc687e07fcb0a13e5aebe6186582a9f5c9153e1513baa87ddd

diff --git a/sys-apps/sysvinit/files/sysvinit-2.99-shutdown-h.patch b/sys-apps/sysvinit/files/sysvinit-2.99-shutdown-h.patch
new file mode 100644
index 00000000000..a4ceeda69c5
--- /dev/null
+++ b/sys-apps/sysvinit/files/sysvinit-2.99-shutdown-h.patch
@@ -0,0 +1,82 @@
+other inits have moved to not requiring the -h flag when used with -H/-P.
+modify sysvinit to be the same since it really doesn't matter.
+
+https://bugs.gentoo.org/449354
+
+patch by Doug Goldstein
+
+--- sysvinit-2.99/man/shutdown.8
++++ sysvinit-2.99/man/shutdown.8
+@@ -66,22 +66,19 @@
+ .\"}}}
+ .\"{{{  -h
+ .IP \fB\-h\fP
+-Halt or power off after shutdown. Usually used with the \fI-P\fP or \fI-H\fP flags,
+-depending on whether we want to poweroff or simply stop the operating system.
++Equivalent to \fI-P\fP, unless \fI-H\fP is specified.
+ .\"}}}
+ .\"{{{  -P
+ .IP \fB\-P\fP
+-Modifier to the \fI-h\fP flag. Halt action is to turn off the power. 
+-Must be used with the \fI-h\fP flag.
++Halt action is to turn off the power.
+ .\"}}}
+ .\"{{{  -H
+ .IP \fB\-H\fP
+-Modifier to the \fI-h\fP flag.  Halt action is to halt or drop into boot
+-monitor on systems that support it.  Must be used with the \fI-h\fP flag.
++Action is to halt or drop into boot monitor on systems that support it.
+ Halting is often used to run through the shutdown process and leave
+ output on the screen for debugging purposes. Or when the user wants the OS to
+ stop, but leave the power on. To power off at the end of the shutdown sequence
+-use the \fI-P\fP modifier instead.
++use the \fI-P\fP option instead.
+ .\"}}}
+ .\"{{{  -f
+ .IP \fB\-f\fP
+--- sysvinit-2.99/src/shutdown.c
++++ sysvinit-2.99/src/shutdown.c
+@@ -144,9 +144,7 @@
+ 	"\t\t  -r:      reboot after shutdown.\n"
+ 	"\t\t  -h:      halt after shutdown.\n"
+ 	"\t\t  -P:      halt action is to turn off power.\n"
+-        "\t\t           can only be used along with -h flag.\n"
+ 	"\t\t  -H:      halt action is to just halt.\n"
+-        "\t\t           can only be used along with -h flag.\n"
+ 	"\t\t  -f:      do a 'fast' reboot (skip fsck).\n"
+ 	"\t\t  -F:      Force fsck on reboot.\n"
+ 	"\t\t  -n:      do not go through \"init\" but go down real fast.\n"
+@@ -556,9 +554,11 @@
+   		switch(c) {
+ 			case 'H':
+ 				halttype = "HALT";
++				down_level[0] = '0';
+ 				break;
+ 			case 'P':
+ 				halttype = "POWEROFF";
++				down_level[0] = '0';
+ 				break;
+ 			case 'a': /* Access control. */
+ 				useacl = 1;
+@@ -574,6 +574,8 @@
+   				break;
+   			case 'h': /* Halt after shutdown */
+ 				down_level[0] = '0';
++				if (!halttype)
++					halttype = "POWEROFF";
+   				break;
+   			case 'f': /* Don't perform fsck after next boot */
+   				fastboot = 1;
+@@ -613,12 +615,6 @@
+   		}
+ 	}
+ 
+-	if (NULL != halttype && down_level[0] != '0') {
+-		fprintf(stderr, "shutdown: -H and -P flags can only be used along with -h flag.\n");
+-		usage();
+-  		exit(1);
+-	}
+-
+ 	/* Do we need to use the shutdown.allow file ? */
+ 	if (useacl && (fp = fopen(SDALLOW, "r")) != NULL) {
+ 

diff --git a/sys-apps/sysvinit/sysvinit-2.99.ebuild b/sys-apps/sysvinit/sysvinit-2.99.ebuild
new file mode 100644
index 00000000000..e2a06d6700d
--- /dev/null
+++ b/sys-apps/sysvinit/sysvinit-2.99.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2021 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.99-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-r1 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
+}


             reply	other threads:[~2021-02-22  7:56 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-22  7:56 Lars Wendler [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-02-26 21:27 [gentoo-commits] repo/gentoo:master commit in: sys-apps/sysvinit/files/, sys-apps/sysvinit/ Mike Gilbert
2023-07-27 13:50 Mike Gilbert
2022-10-28 19:53 Sam James
2022-08-24  3:16 Sam James
2022-04-13 22:54 Sam James
2022-04-13  1:58 Sam James
2021-05-24 11:36 David Seifert
2021-02-22  7:56 Lars Wendler
2019-08-17 18:38 William Hubbs
2019-05-26 16:08 Lars Wendler
2019-01-28  0:53 Lars Wendler
2016-03-07 19:05 Mike Frysinger
2016-02-03 15:13 Lars Wendler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1613980576.0fae23204018295e711bb1335c797e43b0af9140.polynomial-c@gentoo \
    --to=polynomial-c@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox