Rewrite the core parts in C. We now provide librc so other programs can

query runlevels, services and state without using bash. We also provide
libeinfo so other programs can easily use our informational functions.

As such, we have dropped the requirement of using bash as the init script
shell. We now use /bin/sh and have strived to make the scripts as portable
as possible. Shells that work are bash and dash. busybox works provided
you disable s-s-d. If you have WIPE_TMP set to yes in conf.d/bootmisc you
should disable find too.
zsh and ksh do not work at this time.

Networking support is currently being re-vamped also as it was heavily bash
array based. As such, a new config format is available like so
config_eth0="1.2.3.4/24 5.6.7.8/16"
or like so
config_eth0="'1.2.3.4 netmask 255.255.255.0' '5.6.7.8 netmask 255.255.0.0'"

We will still support the old bash array format provided that /bin/sh IS
a link it bash.

ChangeLog for baselayout-1 can be found in our SVN repo.
This commit is contained in:
Roy Marples
2007-04-05 11:18:42 +00:00
commit 5af58b4514
169 changed files with 20917 additions and 0 deletions

34
init.d/urandom Executable file
View File

@@ -0,0 +1,34 @@
#!/sbin/runscript
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
need localmount
}
start() {
[ -c /dev/urandom ] || return
if [ -f /var/run/random-seed ] ; then
cat /var/run/random-seed > /dev/urandom
fi
if ! rm -f /var/run/random-seed ; then
ewarn "Skipping /var/run/random-seed initialization (ro root?)"
return 0
fi
ebegin "Initializing random number generator"
umask 077
dd if=/dev/urandom of=/var/run/random-seed count=1 2>/dev/null
eend $? "Error initializing random number generator"
umask 022
}
stop() {
ebegin "Saving random seed"
# Carry a random seed from shut-down to start-up;
# see documentation in linux/drivers/char/random.c
umask 077
dd if=/dev/urandom of=/var/run/random-seed count=1 2>/dev/null
eend $? "Failed to save random seed"
}
# vim:ts=4