Package: sysvinit
Version: 2.88dsf-51
Severity: wishlist
Tags: patch
Usertags: hurd

Dear maintainer :)

attached is a patch that makes runsystem.sysv honor init=something in
the kernel command line. This makes it possible to spawn a shell early
in the Hurd bootstrap very much like it is possible on Debian/Linux.

Thanks,
Justus
From 9ecdb676b9b3ae316ab43303084f6bfe84b04027 Mon Sep 17 00:00:00 2001
From: Justus Winter <4win...@informatik.uni-hamburg.de>
Date: Tue, 25 Mar 2014 14:51:21 +0100
Subject: [PATCH] Make runsystem.sysv honor init=something in the kernel
 command line

This makes it possible to spawn a shell early in the Hurd bootstrap
very much like it is possible on Debian/Linux.
---
 debian/src/initscripts/etc/hurd/runsystem.sysv | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/debian/src/initscripts/etc/hurd/runsystem.sysv b/debian/src/initscripts/etc/hurd/runsystem.sysv
index 943d443..cb448d7 100755
--- a/debian/src/initscripts/etc/hurd/runsystem.sysv
+++ b/debian/src/initscripts/etc/hurd/runsystem.sysv
@@ -19,6 +19,11 @@ fallback_shells='/bin/sh /bin/dash /bin/bash /bin/csh /bin/ash /bin/shd'
 # Shell used for normal single-user startup.
 SHELL=/bin/sh
 
+# The init program to call.
+#
+# Can be overridden using init=something in the kernel command line.
+init=/sbin/init
+
 ###
 
 # If we get a SIGLOST, attempt to reopen the console in case
@@ -82,6 +87,9 @@ while [ $# -gt 0 ]; do
   shift
   case "$arg" in
   --*) ;;
+  init=*)
+    eval "${arg}"
+    ;;
   *=*) ;;
   -*)
     flags="${flags}${arg#-}"
@@ -111,4 +119,4 @@ for i in `seq 1 100000` ; do : ; done
 fsysopts / --update --readonly
 
 # Finally, start the actual SysV init.
-exec /sbin/init ${single} -a
+exec ${init} ${single} -a
-- 
1.9.0

Reply via email to