summaryrefslogtreecommitdiff
path: root/recipes/mini-init
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/mini-init')
-rwxr-xr-xrecipes/mini-init40
1 files changed, 40 insertions, 0 deletions
diff --git a/recipes/mini-init b/recipes/mini-init
new file mode 100755
index 0000000000..8b7ec9a770
--- /dev/null
+++ b/recipes/mini-init
@@ -0,0 +1,40 @@
+#!/bin/sh
+echo "S" > /proc/jffs2_bbc
+
+mkdir -p /var/run
+mkdir -p /var/log
+touch /var/log/wtmp
+touch /var/log/lastlog
+
+[ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
+ # if default wifi mac, set two higher than the lan mac
+ nvram set il0macaddr=$(nvram get et0macaddr|
+ awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
+}
+
+# set up the vlan*ports variables for the asus wl-500g deluxe
+# if they don't already exist
+[ "$(nvram get boardtype)" = "bcm95365r" ] && \
+[ "$(nvram get boardnum)" = "45" ] && {
+ [ -z "$(nvram get vlan0ports)" ] && \
+ [ -z "$(nvram get vlan1ports)" ] && {
+ nvram set vlan0ports="1 2 3 4 5*"
+ nvram set vlan1ports="0 5"
+ }
+}
+
+cat /etc/modules /etc/modules.d/*|sed 's/^[^#]/insmod &/' 2>&-|ash
+
+ifconfig lo 127.0.0.1 up
+ifconfig eth0 promisc
+
+HOSTNAME=$(nvram get wan_hostname)
+HOSTNAME=${HOSTNAME%%.*}
+echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
+
+vconfig set_name_type VLAN_PLUS_VID_NO_PAD
+
+# automagically run firstboot
+[ -z "$FAILSAFE" ] && {
+ { mount|grep jffs2 1>&-; } || firstboot
+}