Your message dated Sun, 1 Jul 2012 15:11:10 +0100
with message-id <[email protected]>
and subject line Re: Bug#633835: [Pkg-sysvinit-devel] Bug#633835: Remove dead
splash support code
has caused the Debian Bug report #633835,
regarding Remove dead splash support code
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
633835: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=633835
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: initscripts
Version: 2.88dsf-13.11
Severity: normal
Tags: patch
Neither splashy nor plymouth is using this API.
So it only adds unnecessary complexity and slows down boot.
It also uses a deprecated /dev/.initramfs/ directory which has gone awol
with the switch to /run.
The patch has been tested with CONCURRENCY none and makefile.
Michael
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.39-2-486
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages initscripts depends on:
ii coreutils 8.5-1 GNU core utilities
ii debianutils 4.0.2 Miscellaneous utilities specific t
ii libc6 2.13-10 Embedded GNU C Library: Shared lib
ii lsb-base 3.2-27 Linux Standard Base 3.2 init scrip
ii mount 2.19.1-2 Tools for mounting and manipulatin
ii sysv-rc 2.88dsf-13.11 System-V-like runlevel change mech
ii sysvinit-utils 2.88dsf-13.11 System-V-like utilities
Versions of packages initscripts recommends:
ii e2fsprogs 1.42~WIP-2011-07-02-1 ext2/ext3/ext4 file system utiliti
ii psmisc 22.14-1 utilities that use the proc file s
initscripts suggests no packages.
-- no debconf information
>From 588bd71af26da2c906828f3ee7e03b02773379a0 Mon Sep 17 00:00:00 2001
From: Michael Biebl <[email protected]>
Date: Thu, 14 Jul 2011 08:46:26 +0200
Subject: [PATCH] Remove dead splash code
Neither splashy nor plymouth is using this splash API.
So it only adds unnecessary complexity and slows down boot.
It also uses a deprecated /dev/.initramfs/ directory which has gone awol
with the switch to /run.
---
debian/src/initscripts/etc/init.d/checkfs.sh | 5 -
debian/src/initscripts/etc/init.d/checkroot.sh | 5 -
.../src/initscripts/lib/init/splash-functions-base | 93 --------------------
debian/src/sysv-rc/etc/init.d/rc | 82 -----------------
4 files changed, 0 insertions(+), 185 deletions(-)
diff --git a/debian/src/initscripts/etc/init.d/checkfs.sh
b/debian/src/initscripts/etc/init.d/checkfs.sh
index 1744db0..7129cc1 100755
--- a/debian/src/initscripts/etc/init.d/checkfs.sh
+++ b/debian/src/initscripts/etc/init.d/checkfs.sh
@@ -18,7 +18,6 @@ FSCK_LOGFILE=/var/log/fsck/checkfs
. /lib/init/vars.sh
. /lib/lsb/init-functions
-. /lib/init/splash-functions-base
. /lib/init/swap-functions.sh
do_start () {
@@ -97,10 +96,8 @@ Continuing with system boot in 5 seconds."
if [ "$VERBOSE" = no ]
then
log_action_begin_msg "Checking file systems"
- splash_start_indefinite
logsave -s $FSCK_LOGFILE fsck $spinner -R -A $fix
$force $FSCKTYPES_OPT
FSCKCODE=$?
- splash_stop_indefinite
if [ "$FSCKCODE" -eq 32 ]
then
@@ -120,10 +117,8 @@ Continuing with system boot in 5 seconds."
else
log_action_msg "Will now check all file systems"
fi
- splash_start_indefinite
logsave -s $FSCK_LOGFILE fsck $spinner -V -R -A $fix
$force $FSCKTYPES_OPT
FSCKCODE=$?
- splash_stop_indefinite
if [ "$FSCKCODE" -eq 32 ]
then
log_warning_msg "File system check was
interrupted by user"
diff --git a/debian/src/initscripts/etc/init.d/checkroot.sh
b/debian/src/initscripts/etc/init.d/checkroot.sh
index c5bd3c5..7d3ccc3 100755
--- a/debian/src/initscripts/etc/init.d/checkroot.sh
+++ b/debian/src/initscripts/etc/init.d/checkroot.sh
@@ -21,7 +21,6 @@ FSCK_LOGFILE=/var/log/fsck/checkroot
. /lib/lsb/init-functions
. /lib/init/mount-functions.sh
-. /lib/init/splash-functions-base
do_start () {
# Trap SIGINT so that we can handle user interrupt of fsck.
@@ -213,10 +212,8 @@ Will restart in 5 seconds."
if [ "$VERBOSE" = no ]
then
log_action_begin_msg "Checking root file system"
- splash_start_indefinite
logsave -s $FSCK_LOGFILE fsck $spinner $force $fix -t
$roottype $rootdev
FSCKCODE=$?
- splash_stop_indefinite
if [ "$FSCKCODE" = 0 ]
then
log_action_end_msg 0
@@ -224,12 +221,10 @@ Will restart in 5 seconds."
log_action_end_msg 1 "code $FSCKCODE"
fi
else
- splash_start_indefinite
log_daemon_msg "Will now check root file system"
logsave -s $FSCK_LOGFILE fsck $spinner $force $fix -V
-t $roottype $rootdev
FSCKCODE=$?
log_end_msg $FSCKCODE
- splash_stop_indefinite
fi
fi
diff --git a/debian/src/initscripts/lib/init/splash-functions-base
b/debian/src/initscripts/lib/init/splash-functions-base
deleted file mode 100644
index 8319dab..0000000
--- a/debian/src/initscripts/lib/init/splash-functions-base
+++ /dev/null
@@ -1,93 +0,0 @@
-# This script contains hooks to allow init scripts to control
-# a splash program during boot and shutdown.
-#
-# To override these, provide a /lib/init/splash-functions scripts
-# with new functions (it is sourced at the end of this file)
-#
-# Note that scripts have a number of constraints:
-# 1) Should avoid using any binaries not found in the initramfs so that
-# the same hooks can be used there.
-# 2) This also means that bashisms can't be used.
-# 3) Scripts must work when running under "set -e".
-# 4) "local" should be used to avoid overwriting global variables.
-
-
-# Detects whether a splash is running
-splash_running() { return 1; }
-
-# Tells the splash to quit
-splash_stop() { return 0; }
-
-# Tells the splash to start if not already running
-splash_start() { return 1; }
-
-# Tells the splash the current boot/shutdown progress
-# $1 contains the progress as a percentage value between -100 and 100
-# Positive values indicate boot progress
-# Negative values indicate shutdown progress
-splash_progress()
-{
- local progress tmp
- progress="$1"
-
- splash_running || return 0
-
- # Sanity check step 1 - must match ^-[0-9]*$
- tmp="$progress"
-
- # Strip trailing numbers
- while [ "${tmp%[0-9]}" != "$tmp" ]; do
- tmp="${tmp%[0-9]}"
- done
-
- # Now "-" or no characters should remain
- if [ -n "$tmp" ] && [ "$tmp" != "-" ]; then
- return 1
- fi
-
- # Sanity check step 2 - check for values >= -100 and <= 100
- if [ "$progress" != "${progress#-}" ]; then
- # Negative value
- if [ "$progress" -lt -100 ]; then
- return 1
- fi
- else
- # Positive value
- if [ "$progress" -gt 100 ]; then
- return 1
- fi
- fi
-
- # Sanity checks passed
- custom_splash_progress "$progress" || return 1
- return 0
-}
-
-# Customizations should replace this function instead of splash_progress above
-custom_splash_progress() { return 0; }
-
-
-# Tells the splash that a task which may take an unknown amount of
-# time has started (such as a fsck). This is useful to make sure the
-# splash doesn't time out and to give visual feedback to the user.
-splash_start_indefinite() { return 0; }
-
-# Tells the splash that an indefinite task is done
-splash_stop_indefinite() { return 0; }
-
-# Gets user input from a splash
-# $1 contains the text for the user prompt
-# $2 describes the type of input:
-# regular = regular input, e.g. a user name
-# password = input which should not be echoed to screen, e.g. a password
-# enter = A "press enter to continue" type of prompt
-#
-# Returns 1 if no user input is possible
-# Should be called with an alternative non-splash input fallback:
-# INPUT="$(splash_user_input "Enter password:" password)" || \
-# INPUT="$(manual_method)"
-splash_user_input() { return 1; }
-
-# Allow these functions to be overridden with custom scripts. This is
-# the official API hook.
-if [ -e /lib/init/splash-functions ] ; then . /lib/init/splash-functions ; fi
diff --git a/debian/src/sysv-rc/etc/init.d/rc b/debian/src/sysv-rc/etc/init.d/rc
index fdb8ac7..0d1a17a 100644
--- a/debian/src/sysv-rc/etc/init.d/rc
+++ b/debian/src/sysv-rc/etc/init.d/rc
@@ -46,15 +46,6 @@ trap ":" INT QUIT TSTP
# Set onlcr to avoid staircase effect.
stty onlcr 0>&1
-# Functions for splash progress bars
-if [ -e /lib/init/splash-functions-base ] ; then
- . /lib/init/splash-functions-base
-else
- # Quiet down script if old initscripts version without
/lib/init/splash-functions-base is used.
- splash_progress() { return 1; }
- splash_stop() { return 1; }
-fi
-
# Now find out what the current and what the previous runlevel are.
runlevel=$RUNLEVEL
@@ -84,18 +75,6 @@ else
fi
#
-# Stub to do progress bar ticks (for splash programs) on startup
-#
-startup_progress() {
- # Avoid divide by zero if anyone moved xdm/kdm/gdm first in a runlevel.
- if [ 0 -eq "$num_steps" ] ; then return; fi
-
- step=$(($step + $step_change))
- progress=$(($step * $progress_size / $num_steps + $first_step))
- $debug splash_progress "$progress" || true
-}
-
-#
# Check if we are able to use make like booting. It require the
# insserv package to be enabled. Boot concurrency also requires
# startpar to be installed.
@@ -117,15 +96,7 @@ case "$CONCURRENCY" in
makefile|startpar|shell) # startpar and shell are obsolete
CONCURRENCY=makefile
log_action_msg "Using makefile-style concurrent boot in
runlevel $runlevel"
- # The splash API is not handled with this CONCURRENCY mode.
- # It need to be implented in startpar. Until that is done
- # stop the splash screen before starting services, to avoid
- # usplash and X to confuse each other during boot.
startup() {
- if [ start = "$1" ] || [ boot = "$1" ]
- then
- $debug splash_stop || true
- fi
eval "$(startpar -p 4 -t 20 -T 3 -M $1 -P $previous -R
$runlevel)"
if [ -n "$failed_service" ]
@@ -148,73 +119,26 @@ case "$CONCURRENCY" in
scripts="$@"
for script in $scripts ; do
$debug "$script" $action
- startup_progress
done
}
;;
esac
-# Check if the splash screen should be stopped before the given
-# script.
-is_splash_stop_scripts() {
- scriptname=$1
- case "$scriptname" in
- # killprocs is used in runlevel 1
- gdm|xdm|kdm|ltsp-client|ltsp-client-core|reboot|halt|killprocs)
- return 0
- ;;
- esac
- return 1
-}
-
# Is there an rc directory for this new runlevel?
if [ -d /etc/rc$runlevel.d ]
then
- # Find out where in the progress bar the initramfs got to.
- PROGRESS_STATE=0
- if [ -f /dev/.initramfs/progress_state ]; then
- . /dev/.initramfs/progress_state
- fi
-
- # Split the remaining portion of the progress bar into thirds
- progress_size=$(((100 - $PROGRESS_STATE) / 3))
-
case "$runlevel" in
0|6)
ACTION=stop
- # Count down from 0 to -100 and use the entire bar
- first_step=0
- progress_size=100
- step_change=-1
;;
S)
ACTION=start
- # Begin where the initramfs left off and use 2/3
- # of the remaining space
- first_step=$PROGRESS_STATE
- progress_size=$(($progress_size * 2))
- step_change=1
;;
*)
ACTION=start
- # Begin where rcS left off and use the final 1/3 of
- # the space (by leaving progress_size unchanged)
- first_step=$(($progress_size * 2 + $PROGRESS_STATE))
- step_change=1
;;
esac
- # Count the number of scripts we need to run
- # (for progress bars)
- num_steps=0
- for s in /etc/rc$runlevel.d/[SK]*; do
- if is_splash_stop_scripts "${s##/etc/rc$runlevel.d/S??}" ; then
- break
- fi
- num_steps=$(($num_steps + 1))
- done
- step=0
-
# First, run the KILL scripts.
if [ makefile = "$CONCURRENCY" ]
then
@@ -258,9 +182,6 @@ then
# Stop the service.
SCRIPTS="$SCRIPTS $i"
- if is_splash_stop_scripts "$suffix" ; then
- $debug splash_stop || true
- fi
done
startup stop $SCRIPTS
done
@@ -323,9 +244,6 @@ then
fi
SCRIPTS="$SCRIPTS $i"
- if is_splash_stop_scripts "$suffix" ; then
- $debug splash_stop || true
- fi
done
startup $ACTION $SCRIPTS
done
--
1.7.5.4
--- End Message ---
--- Begin Message ---
Version: 2.88dsf-13.3
On Thu, Jul 14, 2011 at 11:28:45AM +0200, Michael Biebl wrote:
[remove splash support]
This was removed ages ago. Closing this stray unclosed bug.
--
.''`. Roger Leigh
: :' : Debian GNU/Linux http://people.debian.org/~rleigh/
`. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/
`- GPG Public Key: 0x25BFB848 Please GPG sign your mail.
--- End Message ---
_______________________________________________
Pkg-sysvinit-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-sysvinit-devel