wok view get-b43-firmware/stuff/get-b43-firmware @ rev 777

get-b43-firmware: user should have to 'get-b43-firmware' to have wlan0 working out-of-the-box
author Christophe Lincoln <pankso@slitaz.org>
date Mon May 12 17:27:29 2008 +0200 (2008-05-12)
parents 6c81ef27dcbc
children 82b6491f7573
line source
1 #!/bin/sh
2 #
3 # Get and install non-free Broadcom b43 firmware. The script wil also
4 # install linux-wireless and b43-fwcutter if needed. Finaly try to
5 # configure wlan0 interface.
6 #
8 DIR="broadcom-wl"
9 VERSION=4.80.53.0
10 TARBALL=$DIR-$VERSION.tar.bz2
11 WGET_URL="http://downloads.openwrt.org/sources/$TARBALL"
13 # Check if user is root to install.
14 if test $(id -u) != 0 ; then
15 echo -e "\nYou must be root to run `basename $0`."
16 echo -e "Please use 'su' and root password to become super-user.\n"
17 exit 0
18 fi
20 # Avoid reinstall
21 if [ -d /var/lib/tazpkg/installed/b43-firmware ]; then
22 echo -e "\nb43-firmware package is already installed.\n"
23 exit 0
24 fi
26 # We need the extractor.
27 if [ ! -d /var/lib/tazpkg/installed/linux-wireless ]; then
28 tazpkg get-install linux-wireless
29 fi
31 # We need the extractor.
32 if [ ! -d /var/lib/tazpkg/installed/b43-fwcutter ]; then
33 tazpkg get-install b43-fwcutter
34 fi
36 # Install b43-fwcutter if needed
37 if [ -d /var/lib/tazpkg/installed/b43-fwcutter ]; then
38 tazpkg get-install b43-fwcutter
39 fi
41 # Get files
42 cd /tmp
43 wget $WGET_URL
44 tar xjf $TARBALL
45 cd $DIR-$VERSION/kmod
47 # Create pseudo package
48 mkdir -p b43-firmware-$VERSION/fs/lib/firmware
49 b43-fwcutter -w "b43-firmware-$VERSION/fs/lib/firmware" wl_apsta.o
51 # Creat receipt
52 cat > b43-firmware-$VERSION/receipt <<EOT
53 PACKAGE="b43-firmware"
54 VERSION="$VERSION"
55 CATEGORY="non-free"
56 SHORT_DESC="Broadcom b43 firmware."
57 DEPENDS="b43-fwcutter"
58 WEB_SITE="http://downloads.openwrt.org/"
59 EOT
61 # Pack
62 tazpkg pack b43-firmware-$VERSION
64 # Install pseudo package
65 tazpkg install b43-firmware-$VERSION.tazpkg
67 # Clean
68 cd /tmp
69 rm -rf $TARBALL $DIR-$VERSION
71 # Configure /etc/network.conf and start connexion
72 sed -i s/'WIFI="no"'/'WIFI="yes"'/ /etc/network.conf
73 . /etc/network.conf
75 iwconfig $WIFI_INTERFACE essid $ESSID
76 echo "Starting udhcpc client on: $WIFI_INTERFACE... "
77 /sbin/udhcpc -b -i $WIFI_INTERFACE \
78 -p /var/run/udhcpc.$WIFI_INTERFACE.pid