xref: /openwifi/user_space/post_config.sh (revision 6a4d7cea87e6493f6df109530a5a8275bc84916e)
1b73660adSXianjun Jiao#!/bin/bash
2b73660adSXianjun Jiao
3dfdc60c4SJiao Xianjun# Author: Xianjun Jiao
4dfdc60c4SJiao Xianjun# SPDX-FileCopyrightText: 2019 UGent
5a6085186SLina Ceballos# SPDX-License-Identifier: AGPL-3.0-or-later
6a6085186SLina Ceballos
7b73660adSXianjun Jiaoset -ex
8b73660adSXianjun Jiao
9febc5adfSXianjun JiaoMACHINE_TYPE=`uname -m`
10febc5adfSXianjun Jiao
11b73660adSXianjun Jiao# setup kernel module directory
12b73660adSXianjun Jiaoif [ -d "/lib/modules/$(uname -r)" ]; then
13b73660adSXianjun Jiao    echo "/lib/modules/$(uname -r) already exists."
14b73660adSXianjun Jiaoelse
15febc5adfSXianjun Jiao    if [ ${MACHINE_TYPE} == 'aarch64' ]; then
16febc5adfSXianjun Jiao        ln -s /lib/modules/adi-linux-64 /lib/modules/$(uname -r)
17febc5adfSXianjun Jiao    else
18febc5adfSXianjun Jiao        ln -s /lib/modules/adi-linux /lib/modules/$(uname -r)
19febc5adfSXianjun Jiao    fi
20b73660adSXianjun Jiaofi
21b73660adSXianjun Jiaodepmod
22b73660adSXianjun Jiaomodprobe mac80211
23b73660adSXianjun Jiao
24febc5adfSXianjun Jiaoif [ ${MACHINE_TYPE} == 'aarch64' ]; then
25febc5adfSXianjun Jiao    cp ~/openwifi/drv64/* ~/openwifi/ -rf
26febc5adfSXianjun Jiaoelse
27febc5adfSXianjun Jiao    cp ~/openwifi/drv32/* ~/openwifi/ -rf
28febc5adfSXianjun Jiaofi
29febc5adfSXianjun Jiao
30b73660adSXianjun Jiao# add gateway (PC) for internet access
31b73660adSXianjun Jiaoroute add default gw 192.168.10.1 || true
32b73660adSXianjun Jiao
33*6a4d7ceaSXianjun Jiaosudo apt update
34*6a4d7ceaSXianjun Jiao
35bf351a86SXianjun Jiaochmod +x *.sh
36bf351a86SXianjun Jiao
37b73660adSXianjun Jiao# build sdrctl
38b73660adSXianjun Jiaosudo apt-get -y install libnl-3-dev
39b73660adSXianjun Jiaosudo apt-get -y install libnl-genl-3-dev
40b73660adSXianjun Jiaocd sdrctl_src
41b73660adSXianjun Jiaomake
42b73660adSXianjun Jiaocp sdrctl ../
4322dd0cc4SXianjun Jiaocd ../side_ch_ctl_src/
4422dd0cc4SXianjun Jiaogcc -o side_ch_ctl side_ch_ctl.c
4522dd0cc4SXianjun Jiaocp side_ch_ctl ../
46b73660adSXianjun Jiaocd ..
47b73660adSXianjun Jiao
48b73660adSXianjun Jiao# install and setup dhcp server
49b73660adSXianjun Jiaosudo apt-get -y install isc-dhcp-server
50b73660adSXianjun Jiaocp dhcpd.conf /etc/dhcp/dhcpd.conf
51b73660adSXianjun Jiao
52b73660adSXianjun Jiao# install hostapd and other useful tools
53b73660adSXianjun Jiaosudo apt-get -y install hostapd
54b73660adSXianjun Jiaosudo apt-get -y install nano
55b73660adSXianjun Jiaosudo apt-get -y install tcpdump
56b73660adSXianjun Jiaosudo apt-get -y install webfs
57b73660adSXianjun Jiaosudo apt-get -y install iperf
58*6a4d7ceaSXianjun Jiaosudo apt-get -y install iperf3
59f0f5e22fSXianjun Jiaosudo apt-get -y install libpcap-dev
60bf351a86SXianjun Jiaosudo apt-get -y install bridge-utils
61b73660adSXianjun Jiao
62628c5d74SXianjun Jiaocd ./inject_80211/
63628c5d74SXianjun Jiaomake
64628c5d74SXianjun Jiao
65abdb610fSJiao Xianjun# change the root password to openwifi
66abdb610fSJiao Xianjuncat /etc/passwd
67abdb610fSJiao Xianjunsed -i 's/root:x:0:0:root:\/root:\/bin\/bash/root::0:0:root:\/root:\/bin\/bash/' /etc/passwd
68abdb610fSJiao Xianjunsync
69abdb610fSJiao Xianjunsleep 1
70abdb610fSJiao Xianjuncat /etc/passwd
71b73660adSXianjun Jiaoecho -e "openwifi\nopenwifi" | passwd
72abdb610fSJiao Xianjunsync
73abdb610fSJiao Xianjunsleep 1
74abdb610fSJiao Xianjuncat /etc/passwd
75abdb610fSJiao Xianjun
76