| 
				
			 | 
			
			
				@@ -90,6 +90,77 @@ deb-src $NEW_MIRROR $SUITE $COMPONENTS 
			 | 
		
	
		
			
			| 
				90
			 | 
			
				90
			 | 
			
			
				 EOF 
			 | 
		
	
		
			
			| 
				91
			 | 
			
				91
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				92
			 | 
			
				92
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				93
			 | 
			
			
				+configure_networking { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				94
			 | 
			
			
				+    echo "# This file describes the network interfaces available on your system 
			 | 
		
	
		
			
			| 
				
			 | 
			
				95
			 | 
			
			
				+# and how to activate them. For more information, see interfaces(5). 
			 | 
		
	
		
			
			| 
				
			 | 
			
				96
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				97
			 | 
			
			
				+# The loopback network interface 
			 | 
		
	
		
			
			| 
				
			 | 
			
				98
			 | 
			
			
				+auto lo 
			 | 
		
	
		
			
			| 
				
			 | 
			
				99
			 | 
			
			
				+iface lo inet loopback 
			 | 
		
	
		
			
			| 
				
			 | 
			
				100
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				101
			 | 
			
			
				+# The primary network interface 
			 | 
		
	
		
			
			| 
				
			 | 
			
				102
			 | 
			
			
				+auto eth0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				103
			 | 
			
			
				+iface eth0 inet static 
			 | 
		
	
		
			
			| 
				
			 | 
			
				104
			 | 
			
			
				+    address $BOX_IP_ADDRESS 
			 | 
		
	
		
			
			| 
				
			 | 
			
				105
			 | 
			
			
				+    netmask 255.255.255.0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				106
			 | 
			
			
				+    gateway $ROUTER_IP_ADDRESS 
			 | 
		
	
		
			
			| 
				
			 | 
			
				107
			 | 
			
			
				+    dns-nameservers $NAMESERVER1 $NAMESERVER2 
			 | 
		
	
		
			
			| 
				
			 | 
			
				108
			 | 
			
			
				+# Example to keep MAC address between reboots 
			 | 
		
	
		
			
			| 
				
			 | 
			
				109
			 | 
			
			
				+#hwaddress ether B5:A2:BE:3F:1A:FE 
			 | 
		
	
		
			
			| 
				
			 | 
			
				110
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				111
			 | 
			
			
				+# The secondary network interface 
			 | 
		
	
		
			
			| 
				
			 | 
			
				112
			 | 
			
			
				+#auto eth1 
			 | 
		
	
		
			
			| 
				
			 | 
			
				113
			 | 
			
			
				+#iface eth1 inet dhcp 
			 | 
		
	
		
			
			| 
				
			 | 
			
				114
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				115
			 | 
			
			
				+# WiFi Example 
			 | 
		
	
		
			
			| 
				
			 | 
			
				116
			 | 
			
			
				+#auto wlan0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				117
			 | 
			
			
				+#iface wlan0 inet dhcp 
			 | 
		
	
		
			
			| 
				
			 | 
			
				118
			 | 
			
			
				+#    wpa-ssid \"essid\" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				119
			 | 
			
			
				+#    wpa-psk  \"password\" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				120
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				121
			 | 
			
			
				+# Ethernet/RNDIS gadget (g_ether) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				122
			 | 
			
			
				+# ... or on host side, usbnet and random hwaddr 
			 | 
		
	
		
			
			| 
				
			 | 
			
				123
			 | 
			
			
				+# Note on some boards, usb0 is automaticly setup with an init script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				124
			 | 
			
			
				+#iface usb0 inet static 
			 | 
		
	
		
			
			| 
				
			 | 
			
				125
			 | 
			
			
				+#    address 192.168.7.2 
			 | 
		
	
		
			
			| 
				
			 | 
			
				126
			 | 
			
			
				+#    netmask 255.255.255.0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				127
			 | 
			
			
				+#    network 192.168.7.0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				128
			 | 
			
			
				+#    gateway 192.168.7.1" > $rootdir/etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				129
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				130
			 | 
			
			
				+    hexarray=( 1 2 3 4 5 6 7 8 9 0 a b c d e f ) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				131
			 | 
			
			
				+    a=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				132
			 | 
			
			
				+    b=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				133
			 | 
			
			
				+    c=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				134
			 | 
			
			
				+    d=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				135
			 | 
			
			
				+    e=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				136
			 | 
			
			
				+    sed -i "s|#hwaddress ether.*|hwaddress ether de:$a:$b:$c:$d:$e|g" \ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				137
			 | 
			
			
				+        $rootdir/etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				138
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				139
			 | 
			
			
				+    sed -i "s/nameserver.*/nameserver $NAMESERVER1/g" $rootdir/etc/resolv.conf 
			 | 
		
	
		
			
			| 
				
			 | 
			
				140
			 | 
			
			
				+    sed -i "/nameserver $NAMESERVER1/a\nameserver $NAMESERVER2" $rootdir/etc/resolv.conf 
			 | 
		
	
		
			
			| 
				
			 | 
			
				141
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				142
			 | 
			
			
				+    # change the motd to show further install instructions 
			 | 
		
	
		
			
			| 
				
			 | 
			
				143
			 | 
			
			
				+    echo ' 
			 | 
		
	
		
			
			| 
				
			 | 
			
				144
			 | 
			
			
				+To complete the installation run the following: 
			 | 
		
	
		
			
			| 
				
			 | 
			
				145
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				146
			 | 
			
			
				+    sudo su 
			 | 
		
	
		
			
			| 
				
			 | 
			
				147
			 | 
			
			
				+    freedombone menuconfig 
			 | 
		
	
		
			
			| 
				
			 | 
			
				148
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				149
			 | 
			
			
				+' > $rootdir/etc/init.d/motd 
			 | 
		
	
		
			
			| 
				
			 | 
			
				150
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				151
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				152
			 | 
			
			
				+continue_installation { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				153
			 | 
			
			
				+    # If a configuration file exists then run with it 
			 | 
		
	
		
			
			| 
				
			 | 
			
				154
			 | 
			
			
				+    # otherwise the interactive installer can be used 
			 | 
		
	
		
			
			| 
				
			 | 
			
				155
			 | 
			
			
				+    # This is equivalent to installing freedombox-setup on freedombox 
			 | 
		
	
		
			
			| 
				
			 | 
			
				156
			 | 
			
			
				+    if [ $CONFIG_FILENAME ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				157
			 | 
			
			
				+        if [ ${#CONFIG_FILENAME} -gt 2 ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				158
			 | 
			
			
				+            cp $CONFIG_FILENAME $rootdir/root/$PROJECT_NAME.cfg 
			 | 
		
	
		
			
			| 
				
			 | 
			
				159
			 | 
			
			
				+            chroot $rootdir $PROJECT_NAME -c /root/$PROJECT_NAME.cfg 
			 | 
		
	
		
			
			| 
				
			 | 
			
				160
			 | 
			
			
				+        fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				161
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				162
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				163
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				93
			 | 
			
				164
			 | 
			
			
				 # Set to true/false to control if eatmydata is used during build 
			 | 
		
	
		
			
			| 
				94
			 | 
			
				165
			 | 
			
			
				 use_eatmydata=true 
			 | 
		
	
		
			
			| 
				95
			 | 
			
				166
			 | 
			
			
				  
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -156,63 +227,6 @@ chroot $rootdir /usr/lib/freedombone/setup 2>&1 | \ 
			 | 
		
	
		
			
			| 
				156
			 | 
			
				227
			 | 
			
			
				 # Remove SSH keys from the image 
			 | 
		
	
		
			
			| 
				157
			 | 
			
				228
			 | 
			
			
				 rm $rootdir/etc/ssh/ssh_host_* || true 
			 | 
		
	
		
			
			| 
				158
			 | 
			
				229
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				159
			 | 
			
				
			 | 
			
			
				-echo "# This file describes the network interfaces available on your system 
			 | 
		
	
		
			
			| 
				160
			 | 
			
				
			 | 
			
			
				-# and how to activate them. For more information, see interfaces(5). 
			 | 
		
	
		
			
			| 
				161
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				162
			 | 
			
				
			 | 
			
			
				-# The loopback network interface 
			 | 
		
	
		
			
			| 
				163
			 | 
			
				
			 | 
			
			
				-auto lo 
			 | 
		
	
		
			
			| 
				164
			 | 
			
				
			 | 
			
			
				-iface lo inet loopback 
			 | 
		
	
		
			
			| 
				165
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				166
			 | 
			
				
			 | 
			
			
				-# The primary network interface 
			 | 
		
	
		
			
			| 
				167
			 | 
			
				
			 | 
			
			
				-auto eth0 
			 | 
		
	
		
			
			| 
				168
			 | 
			
				
			 | 
			
			
				-iface eth0 inet static 
			 | 
		
	
		
			
			| 
				169
			 | 
			
				
			 | 
			
			
				-    address $BOX_IP_ADDRESS 
			 | 
		
	
		
			
			| 
				170
			 | 
			
				
			 | 
			
			
				-    netmask 255.255.255.0 
			 | 
		
	
		
			
			| 
				171
			 | 
			
				
			 | 
			
			
				-    gateway $ROUTER_IP_ADDRESS 
			 | 
		
	
		
			
			| 
				172
			 | 
			
				
			 | 
			
			
				-    dns-nameservers $NAMESERVER1 $NAMESERVER2 
			 | 
		
	
		
			
			| 
				173
			 | 
			
				
			 | 
			
			
				-# Example to keep MAC address between reboots 
			 | 
		
	
		
			
			| 
				174
			 | 
			
				
			 | 
			
			
				-#hwaddress ether B5:A2:BE:3F:1A:FE 
			 | 
		
	
		
			
			| 
				175
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				176
			 | 
			
				
			 | 
			
			
				-# The secondary network interface 
			 | 
		
	
		
			
			| 
				177
			 | 
			
				
			 | 
			
			
				-#auto eth1 
			 | 
		
	
		
			
			| 
				178
			 | 
			
				
			 | 
			
			
				-#iface eth1 inet dhcp 
			 | 
		
	
		
			
			| 
				179
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				180
			 | 
			
				
			 | 
			
			
				-# WiFi Example 
			 | 
		
	
		
			
			| 
				181
			 | 
			
				
			 | 
			
			
				-#auto wlan0 
			 | 
		
	
		
			
			| 
				182
			 | 
			
				
			 | 
			
			
				-#iface wlan0 inet dhcp 
			 | 
		
	
		
			
			| 
				183
			 | 
			
				
			 | 
			
			
				-#    wpa-ssid \"essid\" 
			 | 
		
	
		
			
			| 
				184
			 | 
			
				
			 | 
			
			
				-#    wpa-psk  \"password\" 
			 | 
		
	
		
			
			| 
				185
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				186
			 | 
			
				
			 | 
			
			
				-# Ethernet/RNDIS gadget (g_ether) 
			 | 
		
	
		
			
			| 
				187
			 | 
			
				
			 | 
			
			
				-# ... or on host side, usbnet and random hwaddr 
			 | 
		
	
		
			
			| 
				188
			 | 
			
				
			 | 
			
			
				-# Note on some boards, usb0 is automaticly setup with an init script 
			 | 
		
	
		
			
			| 
				189
			 | 
			
				
			 | 
			
			
				-#iface usb0 inet static 
			 | 
		
	
		
			
			| 
				190
			 | 
			
				
			 | 
			
			
				-#    address 192.168.7.2 
			 | 
		
	
		
			
			| 
				191
			 | 
			
				
			 | 
			
			
				-#    netmask 255.255.255.0 
			 | 
		
	
		
			
			| 
				192
			 | 
			
				
			 | 
			
			
				-#    network 192.168.7.0 
			 | 
		
	
		
			
			| 
				193
			 | 
			
				
			 | 
			
			
				-#    gateway 192.168.7.1" > $rootdir/etc/network/interfaces 
			 | 
		
	
		
			
			| 
				194
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				195
			 | 
			
				
			 | 
			
			
				-hexarray=( 1 2 3 4 5 6 7 8 9 0 a b c d e f ) 
			 | 
		
	
		
			
			| 
				196
			 | 
			
				
			 | 
			
			
				-a=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				197
			 | 
			
				
			 | 
			
			
				-b=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				198
			 | 
			
				
			 | 
			
			
				-c=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				199
			 | 
			
				
			 | 
			
			
				-d=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				200
			 | 
			
				
			 | 
			
			
				-e=${hexarray[$RANDOM%16]}${hexarray[$RANDOM%16]} 
			 | 
		
	
		
			
			| 
				201
			 | 
			
				
			 | 
			
			
				-sed -i "s|#hwaddress ether.*|hwaddress ether de:$a:$b:$c:$d:$e|g" $rootdir/etc/network/interfaces 
			 | 
		
	
		
			
			| 
				202
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				203
			 | 
			
				
			 | 
			
			
				-sed -i "s/nameserver.*/nameserver $NAMESERVER1/g" $rootdir/etc/resolv.conf 
			 | 
		
	
		
			
			| 
				204
			 | 
			
				
			 | 
			
			
				-sed -i "/nameserver $NAMESERVER1/a\nameserver $NAMESERVER2" $rootdir/etc/resolv.conf 
			 | 
		
	
		
			
			| 
				205
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				206
			 | 
			
				
			 | 
			
			
				-# change the motd to show further install instructions 
			 | 
		
	
		
			
			| 
				207
			 | 
			
				
			 | 
			
			
				-echo " 
			 | 
		
	
		
			
			| 
				208
			 | 
			
				
			 | 
			
			
				-To complete the installation run the following: 
			 | 
		
	
		
			
			| 
				209
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				210
			 | 
			
				
			 | 
			
			
				-    sudo su 
			 | 
		
	
		
			
			| 
				211
			 | 
			
				
			 | 
			
			
				-    freedombone menuconfig 
			 | 
		
	
		
			
			| 
				212
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				213
			 | 
			
				
			 | 
			
			
				-" > $rootdir/etc/init.d/motd 
			 | 
		
	
		
			
			| 
				214
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				215
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				216
			 | 
			
				230
			 | 
			
			
				 # copy u-boot to beginning of image 
			 | 
		
	
		
			
			| 
				217
			 | 
			
				231
			 | 
			
			
				 case "$MACHINE" in 
			 | 
		
	
		
			
			| 
				218
			 | 
			
				232
			 | 
			
			
				     beaglebone) 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -238,15 +252,8 @@ fi 
			 | 
		
	
		
			
			| 
				238
			 | 
			
				252
			 | 
			
			
				 set_apt_sources $MIRROR 
			 | 
		
	
		
			
			| 
				239
			 | 
			
				253
			 | 
			
			
				 chroot $rootdir apt-get update 
			 | 
		
	
		
			
			| 
				240
			 | 
			
				254
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				241
			 | 
			
				
			 | 
			
			
				-# If a configuration file exists then run with it 
			 | 
		
	
		
			
			| 
				242
			 | 
			
				
			 | 
			
			
				-# otherwise the interactive installer can be used 
			 | 
		
	
		
			
			| 
				243
			 | 
			
				
			 | 
			
			
				-# This is equivalent to installing freedombox-setup on freedombox 
			 | 
		
	
		
			
			| 
				244
			 | 
			
				
			 | 
			
			
				-if [ $CONFIG_FILENAME ]; then 
			 | 
		
	
		
			
			| 
				245
			 | 
			
				
			 | 
			
			
				-    if [ ${#CONFIG_FILENAME} -gt 2 ]; then 
			 | 
		
	
		
			
			| 
				246
			 | 
			
				
			 | 
			
			
				-        cp $CONFIG_FILENAME $rootdir/root/$PROJECT_NAME.cfg 
			 | 
		
	
		
			
			| 
				247
			 | 
			
				
			 | 
			
			
				-        chroot $rootdir $PROJECT_NAME -c /root/$PROJECT_NAME.cfg 
			 | 
		
	
		
			
			| 
				248
			 | 
			
				
			 | 
			
			
				-    fi 
			 | 
		
	
		
			
			| 
				249
			 | 
			
				
			 | 
			
			
				-fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				255
			 | 
			
			
				+configure_networking 
			 | 
		
	
		
			
			| 
				
			 | 
			
				256
			 | 
			
			
				+continue_installation 
			 | 
		
	
		
			
			| 
				250
			 | 
			
				257
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				251
			 | 
			
				258
			 | 
			
			
				 cd / 
			 | 
		
	
		
			
			| 
				252
			 | 
			
				259
			 | 
			
			
				 echo "info: killing leftover processes in chroot" 
			 |