# HG changeset patch # User Dominique Corbex # Date 1245016433 -7200 # Node ID e607bde987cb8f2e134b198eecf6fadecaf1dfac # Parent d80bbe920b1e961ba1314adb48bdf965e92f53e7 Add: get-softmodem-driver - get drivers for integrated modems (hsfmodem only at this time) diff -r d80bbe920b1e -r e607bde987cb get-softmodem-driver/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/get-softmodem-driver/receipt Sun Jun 14 23:53:53 2009 +0200 @@ -0,0 +1,19 @@ +# SliTaz package receipt. + +PACKAGE="get-softmodem-driver" +VERSION="0.1" +CATEGORY="non-free" +SHORT_DESC="Get misc softmodem drivers." +MAINTAINER="domcox@slitaz.org" +DEPENDS="cpio linux-source slitaz-toolchain" +WEB_SITE="http://hg.slitaz.org/wok/file/$PACKAGE/stuff/$PACKAGE" + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr/bin + cp stuff/$PACKAGE $fs/usr/bin + for i in hsfmodem; do + ln -s $PACKAGE $fs/usr/bin/get-$i-driver + done +} diff -r d80bbe920b1e -r e607bde987cb get-softmodem-driver/stuff/get-softmodem-driver --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/get-softmodem-driver/stuff/get-softmodem-driver Sun Jun 14 23:53:53 2009 +0200 @@ -0,0 +1,141 @@ +#!/bin/sh +# install softmodems drivers if needed. + +MODULE=$(echo $0 | sed 's/.*get-\(.*\)-driver/\1/') +ROOT="$1" +DEPENDS="" + +case "$MODULE" in +hsfmodem) + VERSION="7.80.02.03full" + TARBALL="$MODULE-$VERSION.tar.gz" + SHORT_DESC="Modem driver for Conexant HSF chipsets" + WEB_SITE="http://www.linuxant.com/drivers" + WGET_URL="http://www.linuxant.com/drivers/hsf/full/archive/$MODULE-$VERSION/$TARBALL" + DEPENDS="linux-source module-init-tools" + ;; +*) echo "Unknown modem driver. Please run one of the following commands:" + for i in $(cd $(dirname $0); ls get-*-driver); do + [ -L $i ] || continue + [ "$(readlink $i)" = "get-modem-driver" ] || continue + echo " $i" + done + exit 1;; +esac + +# Check if user is root to install. +if test $(id -u) != 0 ; then + echo -e "\nYou must be root to run `basename $0`." + echo -e "Please use 'su' and root password to become super-user.\n" + exit 0 +fi + +# Avoid reinstall +if [ -d $ROOT/var/lib/tazpkg/installed/$MODULE ]; then + echo -e "\n$MODULE-$VERSION package is already installed.\n" + exit 0 +fi + +# Check linux-source +cp /proc/config.gz . && gunzip config.gz +DIFF=$(diff /usr/src/linux/.config config | awk 'BEGIN{i=0}/^[-+]/{ i++} END{print i}') +rm -f config config.gz +if [ $DIFF -gt 2 ]; then + echo "Warning: Linux source .config and currently installed .config don't match." + echo "Please rebuild and install kernel with the proper .config file." + sleep 3 +fi + + +# Get files +cd /usr/src +echo "Checking for source tarball... " +if [ ! -f "$TARBALL" ]; then + wget $WGET_URL + # Exit if download failed to avoid errors. + if [ ! -f "$TARBALL" ]; then + echo -e "\nDownload failed, exiting. Please check WGET_URL variable.\n" + exit 1 + fi +fi + +case "$WGET_URL" in +*rpm) rpm2cpio < $(basename $WGET_URL) | cpio -id;; +*deb) dpkg-deb -x $(basename $WGET_URL) . ;; +*bz2) tar xjf $(basename $WGET_URL) ;; +*tar.gz|*tgz) tar xzf $(basename $WGET_URL) ;; +*zip) unzip $(basename $WGET_URL);; +*o) ;; +esac + +# Set dirs +src=/usr/src/$MODULE-$VERSION +_pkg=$src/_pkg +taz=/tmp/sm$RANDOM$RANDOM$RANDOM.$$ +fs=$taz/$MODULE-$VERSION/fs +mkdir -p $fs + +# Create pseudo package +case "$MODULE" in +hsfmodem) + # Rules to configure and make the package. + cd $src + # set DESTDIR + sed -i 's/ROOT=.*/ROOT=$(DESTDIR)/' config.mak + # Make Makefile busybox compliant + sed -i 's/chmod --reference=\$ $MODULE-$VERSION/receipt <