|
@@ -485,19 +485,48 @@ configure_wifi() {
|
485
|
485
|
return
|
486
|
486
|
fi
|
487
|
487
|
|
488
|
|
- if [ -f $WIFI_NETWORKS_FILE ]; then
|
489
|
|
- chroot "$rootdir" ${PROJECT_NAME}-wifi --networks $WIFI_NETWORKS_FILE
|
490
|
|
- return
|
491
|
|
- fi
|
|
488
|
+ wifi_setup_service=setupwififirstboot
|
|
489
|
+ wifi_setup_file=$rootdir/root/setup_wifi_firstboot
|
|
490
|
+ echo '#!/bin/bash' > $wifi_setup_file
|
492
|
491
|
|
493
|
|
- if [[ $WIFI_TYPE != 'none' ]]; then
|
494
|
|
- if [ ${#WIFI_PASSPHRASE} -lt 2 ]; then
|
495
|
|
- return
|
496
|
|
- fi
|
497
|
|
- chroot "$rootdir" ${PROJECT_NAME}-wifi -s $WIFI_SSID -t $WIFI_TYPE -p $WIFI_PASSPHRASE --hotspot $WIFI_HOTSPOT
|
|
492
|
+ if [ -f $WIFI_NETWORKS_FILE ]; then
|
|
493
|
+ echo "${PROJECT_NAME}-wifi --networks $WIFI_NETWORKS_FILE" >> $wifi_setup_file
|
498
|
494
|
else
|
499
|
|
- chroot "$rootdir" ${PROJECT_NAME}-wifi -s $WIFI_SSID -t $WIFI_TYPE --hotspot $WIFI_HOTSPOT
|
|
495
|
+ if [[ $WIFI_TYPE != 'none' ]]; then
|
|
496
|
+ if [ ${#WIFI_PASSPHRASE} -lt 2 ]; then
|
|
497
|
+ return
|
|
498
|
+ fi
|
|
499
|
+ echo "${PROJECT_NAME}-wifi -s $WIFI_SSID -t $WIFI_TYPE -p $WIFI_PASSPHRASE --hotspot $WIFI_HOTSPOT" >> $wifi_setup_file
|
|
500
|
+ else
|
|
501
|
+ echo "${PROJECT_NAME}-wifi -s $WIFI_SSID -t $WIFI_TYPE --hotspot $WIFI_HOTSPOT" >> $wifi_setup_file
|
|
502
|
+ fi
|
500
|
503
|
fi
|
|
504
|
+
|
|
505
|
+ echo "systemctl stop ${wifi_setup_service}" >> $wifi_setup_file
|
|
506
|
+ echo "systemctl disable ${wifi_setup_service}" >> $wifi_setup_file
|
|
507
|
+ echo "rm /etc/systemd/system/${wifi_setup_service}.service" >> $wifi_setup_file
|
|
508
|
+ echo 'systemctl reboot -i' >> $wifi_setup_file
|
|
509
|
+ chmod +x $wifi_setup_file
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+ echo '[Unit]' > $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
513
|
+ echo 'Description=Initial wifi configuration' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
514
|
+ echo 'After=syslog.target' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
515
|
+ echo 'After=network.target' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
516
|
+ echo '' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
517
|
+ echo '[Service]' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
518
|
+ echo 'Type=simple' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
519
|
+ echo 'User=root' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
520
|
+ echo 'Group=root' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
521
|
+ echo 'WorkingDirectory=/root' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
522
|
+ echo "ExecStart=/root/setup_wifi_firstboot > /var/log/wifi_setup.log" >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
523
|
+ echo '' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
524
|
+ echo 'TimeoutSec=99999' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
525
|
+ echo '' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
526
|
+ echo '[Install]' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
527
|
+ echo 'WantedBy=multi-user.target' >> $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
528
|
+ chmod +x $rootdir/etc/systemd/system/${wifi_setup_service}.service
|
|
529
|
+ chroot "$rootdir" systemctl enable ${wifi_setup_service}
|
501
|
530
|
}
|
502
|
531
|
|
503
|
532
|
##############################################################################
|