Index: Makefile ================================================================== --- Makefile +++ Makefile @@ -1,5 +1,6 @@ +.include "defaults.mk" .include "/etc/mrc.mk" .export OTHER_TARGETS:=_service _earlyservice STARTER?=svc ADDED defaults.mk Index: defaults.mk ================================================================== --- /dev/null +++ defaults.mk @@ -0,0 +1,19 @@ +CLEANVAR_DIRS?=/var/run /var/spool/lock /var/spool/uucp/.Temp +CRASHINFO_ENABLE?=no +DEVFS_CONFIG_FILES?=/etc/defaults/devfs.conf /etc/devfs.conf +DMESG_FILE?=/var/run/dmesg.boot +DUMPDEV?=no +DUMPDIR?=/var/crash +ENTROPY_FILE?=/var/db/entropy/random +ENTROPY_DIR?=/var/db/entropy +FSCK_Y_ENABLE?=no +HOSTNAME?=Amnesiac +IFCONFIG_IFACES?=lo0 +IFCONFIG_lo0?=inet 127.0.0.1/8 up +KLD_LIST?= +LDCONFIG_PATHS?=/lib /usr/lib /usr/local/lib /usr/pkg/lib +LDCONFIG_LOCAL_DIRS?=/usr/local/libdata/ldconfig +NETFS_TYPES?=nfs:NFS smbfs:SMB +NEWSYSLOG_ENABLE?=no +NFSCLIENT_ENABLE?=no +RPC_UMNTALL_ENABLE?=no Index: init.mk ================================================================== --- init.mk +++ init.mk @@ -20,12 +20,10 @@ bootfs: fsck echo "MRC:$@> Checking whether we need /boot mounted." mount -vadr | grep -q ' /boot$$' && mount -r /boot || true -CLEANVAR_DIRS?=/var/run /var/spool/lock /var/spool/uucp/.Temp - cleanvar: mount echo "MRC:$@> Cleaning 'var's." .for dir in ${CLEANVAR_DIRS} -test -d ${dir} && find ${dir} -mindepth 1 -delete .endfor @@ -40,38 +38,38 @@ rm -f /tmp/.X*-lock ;\ rm -fr /tmp/.X11-unix ;\ mkdir -m 1777 /tmp/.X11-unix cloned: kld +.if !empty(CLONED_INTERFACES) echo "MRC:$@> Cloning interfaces: ${CLONED_INTERFACES}" .for iface in ${CLONED_INTERFACES} ifconfig ${iface} create .endfor - -DEVFS_CONFIG_FILES?=/etc/defaults/devfs.conf /etc/devfs.conf +.endif devfs: echo "MRC:$@> Applying rules: ${DEVFS_CONFIG_FILES}" .for file in ${DEVFS_CONFIG_FILES} .if exists(${file}) devfsctl -a -f ${file} .endif .endfor -DMESG_FILE?=/var/run/dmesg.boot - dmesg: mountlate +.if !empty(DMESG_FILE) echo "MRC:$@> Writing dmesg." umask 022 ; dmesg -a >> ${DMESG_FILE} - -DUMPDEV?=no +.endif dumpon: random +.if !empty(DUMPDEV) test -e ${DUMPDEV} && { \ echo "MRC:$@> Setting dumpon device to ${DUMPDEV}"; \ dumpon -v ${DUMPDEV}; \ } || true +.endif fsck: echo "MRC:$@> Checking disks." ;\ fsck -p ;\ case $$? in \ @@ -102,19 +100,14 @@ *) echo "Unknown error, help!" ;\ exit 1 \ ;; \ esac -HOSTNAME?=Amnesiac - hostname: echo "MRC:$@> Setting to ${HOSTNAME}." hostname ${HOSTNAME} -IFCONFIG_IFACES?=lo0 -IFCONFIG_lo0?=inet 127.0.0.1/8 up - ifconfig: adjkerntz wlans cloned kld echo "MRC:$@> Starting interfaces: ${IFCONFIG_IFACES}" .for iface in ${IFCONFIG_IFACES} .for item in ${IFCONFIG_${iface}:tW:ts;} ifconfig ${iface} ${item} @@ -126,13 +119,10 @@ .if defined(KLD_LIST) echo "MRC:$@> Loading kernel modules: ${KLD_LIST}" kldload -n ${KLD_LIST} .endif -LDCONFIG_PATHS?=/lib /usr/lib /usr/local/lib /usr/pkg/lib -LDCONFIG_LOCAL_DIRS?=/usr/local/libdata/ldconfig - .for path in ${LDCONFIG_PATHS} /etc/ld-elf.so.conf .if exists(${path}) ldc+=${path} .endif .endfor @@ -153,12 +143,10 @@ echo "MRC:$@> Restoring levels." .for mixer in ${mixers} -test -f /var/db/${mixer}-state && mixer -f /dev/${mixer} `cat /var/db/${mixer}-state` .endfor -NETFS_TYPES?=nfs:NFS smbfs:SMB - excludes=${NETFS_TYPES:C/:.*//} mount: root echo "MRC:$@> Mount local FS." mount -a -t no${excludes:ts,} @@ -170,12 +158,10 @@ msgs: mount echo "MRC:$@> Making bounds." ;\ test ! -d /var/msgs -o -f /var/msgs/bound -o -L /var/msgs/bounds || \ echo 0 > /var/msgs/bounds -NEWSYSLOG_ENABLE?=no - newsyslog: mountlate sysdb test -z "$${NEWSYSLOG_ENABLE}" || \ echo "MRC:$@> Trimming log files." ;\ /usr/sbin/newsyslog ${NEWSYSLOG_FLAGS} @@ -183,12 +169,10 @@ .if exists(/boot/nextkernel) echo "MRC:$@> Removing nextboot setting." rm -f /boot/nextkernel .endif -NFSCLIENT_ENABLE?=no - .if empty(NFSCLIENT_ENABLE:tl:Mno) DAEMON_rpcbind_ENABLE=yes .endif nfsclient: NETWORK rpcbind rpc_umntall @@ -198,19 +182,16 @@ echo "MRC:$@> Checking password lock file." .if exists(/etc/ptmp) logger -s -p auth.err "password file may be incorrect -- /etc/ptmp exists" .endif -ENTROPY_FILE?=/var/db/entropy/random -ENTROPY_DIR?=/var/db/entropy - random: mount devfs echo "MRC:$@> Seeding." sysctl kern.seedenable=1 > /dev/null - ( ps -fauxww; ${SYSCTL} -a; date; df -ib; dmesg; ps -fauxww; ) 2>&1 | dd status=none of=/dev/random bs=8k + ( ps -fauxww; sysctl -a; date; df -ib; dmesg; ps -fauxww; ) 2>&1 | dd status=none of=/dev/random bs=8k cat /bin/ls | dd status=none of=/dev/random bs=8k -.if exists(ENTROPY_DIR) +.if exists(ENTROPY_DIR) # XXX .for file in ${:!find ${ENTROPY_DIR} -type f!} dd status=none if=${file} of=/dev/random bs=8k .endfor .elif exists(ENTROPY_FILE) dd status=none if=${ENTROPY_FILE} of=/dev/random bs=8k @@ -221,11 +202,11 @@ echo "MRC:$@> Mount root R/W." mount -uo rw / umount -a rpc_umntall: mountlate NETWORK rpcbind -.if empty(RPC_UMNTALL_ENABLE:tl:Mno) +.if empty(RPC_UMNTALL_ENABLE:tl:Mno) # XXX echo "MRC:$@> Sending RPC unmount notifications."; \ test -f /var/db/mounttab || true && \ rpc.umntall -k & .endif @@ -233,13 +214,10 @@ echo "MRC:$@> Mount and populate /var/run/shm."; \ mkdir -p /var/run/shm; \ mount_tmpfs -m 01777 dummy /var/run/shm; \ mkdir -p -m 01777 /var/run/shm/tmp; \ -DUMPDIR?=/var/crash -CRASHINFO_ENABLE?=no - savecore: dumpon .if empty(DUMPDEV:tl:Mno) && exists(${DUMPDEV}) && exists(${DUMPDIR}) echo "MRC:$@> Saving coredump."; \ savecore ${DUMPDIR} ${DUMPDEV} .if empty(CRASHINFO_ENABLE:tl:Mno) DELETED mrc.conf Index: mrc.conf ================================================================== --- mrc.conf +++ /dev/null @@ -1,25 +0,0 @@ -# vim:ft=make: - -# STARTERS -# STARTER=(svc|plain|daemon) - -# cleanvar -# CLEANVAR_DIRS=/var/run /var/spool/lock /var/spool/uucp/.Temp - -# random -# ENTROPY_FILE=/var/db/entropy/random -# ENTROPY_DIR=/var/db/entropy - -# hostname -# HOSTNAME=Amnesiac - -# ifconfig -# IFCONFIG_IFACES=lo0 -# IFCONFIG_lo0=inet 127.0.0.1/8 up - -# kld -# KLD_LIST=### ### ### - -# wlans -# WLANS_###=wlan# -# WLANS_wlan#_ARGS=### ###