post_install (){ MODULE="mt7601" VERSION="v3.0.0.4" # TODO: replace /usr/src with a variable. SRCDIR=/usr/src/$MODULE-$VERSION dkms add -m $MODULE -v $VERSION dkms build -m $MODULE -v $VERSION dkms install -m $MODULE -v $VERSION # This file is read form a hardcoded location. # Can we put this in a standard location? PARAMSDIR="/etc/Wireless/RT2870STA" mkdir -p $PARAMSDIR cp $SRCDIR/RT2870STA.dat $PARAMSDIR depmod -a $(uname -r) modprobe -a mt7601Usta } pre_upgrade(){ pre_remove } post_upgrade(){ post_install } pre_remove (){ _inmemory=$(/usr/bin/lsmod | /usr/bin/grep mt7601) if [ ! -z "$_inmemory" ]; then /usr/bin/rmmod mt7601 &> /dev/null fi _line=$(dkms status -m mt7601) if echo "$_line" | grep -E 'added|built|installed'; then version=$(echo "$_line" | sed 's/mt7601,\([^,]*\)[,:].*/\1/;t;d') dkms remove -m mt7601 -v $version --all fi rm -rf /etc/Wireless/RT2870STA rmdir --ignore-fail-on-non-empty /etc/Wireless } post_remove () { /sbin/depmod -a } op=$1 shift $op $*