-
Notifications
You must be signed in to change notification settings - Fork 3
/
install.sh
executable file
·82 lines (74 loc) · 2.98 KB
/
install.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!/bin/bash
# Auto install for 8192cu
# September, 1 2010 v1.0.0, willisTang
#
# Add make_drv to select chip type
# Novembor, 21 2011 v1.1.0, Jeff Hung
################################################################################
echo "##################################################"
echo "Realtek Wi-Fi driver Auto installation script"
echo "Novembor, 21 2011 v1.1.0"
echo "##################################################"
################################################################################
# Recent GCCs error if the build is non-reproducible because of using the date or time macros. In the driver directory, add the following to the Makefile:
# EXTRA_CFLAGS += -Wno-error=date-time
#
# http://feiraspromove.com.br/posts/2015-12-08-Alfa-awus036ac.html
################################################################################
echo "EXTRA_CFLAGS += -Wno-error=date-time" > /tmp/tmp-makefile
cat Makefile >> /tmp/tmp-makefile
cp /tmp/tmp-makefile Makefile
################################################################################
# Edit [2016-05-03]: On upgrading to Ubuntu 16.04, with its 4.4 kernel,
# there was an additional change. In the driver directory, in rtw_debug.h,
# there are a couple errors because seq_printf is void, not int.
# So, there are two places where you’ll need to get rid of the if surrounding
# use of _seqdump, which is on lines 232 and 242.
#
# http://feiraspromove.com.br/posts/2015-12-08-Alfa-awus036ac.html
################################################################################
AffectedKernels=("4.4")
IN=`uname -r`
arrIN=(${IN//./ })
KernelVersion=""
for i in "${!arrIN[@]}"
do
:
# do whatever on $i
if (($i > 0)); then
KernelVersion="$KernelVersion."
fi
KernelVersion="$KernelVersion${arrIN[$i]}"
if (($i == 1)); then
break
fi
done
for i in "${!AffectedKernels[@]}"
do
:
if [ "$KernelVersion" = "${AffectedKernels[$i]}" ]; then
sed -i '232s/.*/ _seqdump\(sel, fmt, ##arg\)\; \\/' include/rtw_debug.h
sed -i '242s/.*/_seqdump\(sel, fmt, ##arg\)\; \\/' include/rtw_debug.h
break
fi
done
################################################################################
# install via dkms
################################################################################
if [ $(dpkg-query -W -f='${Status}' dkms 2>/dev/null | grep -c "ok installed") -eq 0 ];
then
echo "##################################################"
echo -e "\nPackage 'dkms' is not installed."
echo -e "Please install it using 'sudo apt-get install dkms -y'"
echo -e "INSTALLATION FAILED!\n"
echo "##################################################"
exit 1
else
sudo cp -R . /usr/src/rtl8812AU_linux-4.3.8
sudo dkms add -m rtl8812AU_linux -v 4.3.8
sudo dkms build -m rtl8812AU_linux -v 4.3.8
sudo dkms install -m rtl8812AU_linux -v 4.3.8
echo "##################################################"
echo "The Setup Script is completed !"
echo "##################################################"
fi