_sed(){ local t=$4.'$$$' cp $4 $t || exit 1 sed "${@}" cmp -s $4 $t || { unlink $t return 0 } echo "Failed sed: $*" return 1 } # patch is too unsafe with modifyed scripts. use script instead cd "$1" && _sed -i -e 's:^\(\. /etc/initrd\.scripts\)$:\1\n. /etc/syspnp:' init && _sed -i -e 's:^\(r*u*n* *.*busybox --install -s\)$:\1\n\npnp_init:' init && _sed -i -e 's:^\(\t*good_msg .Loading modules[ \.]*.\)$:\1\n\tsyspnp:' init && _sed -i -e 's:^\(# If devtmpfs is mounted, try move it to the new root\|udevsettle\)$:mod_unload\n\n\1:' init