]> mj.ucw.cz Git - pciutils.git/blobdiff - update-pciids.sh
Released as 2.2.8.
[pciutils.git] / update-pciids.sh
index 146a393db47cb4eecfabd66a546d7fae54dc7a4c..a084f7b35de741ed91c75cdaf5d38ee42939122b 100755 (executable)
@@ -3,8 +3,14 @@
 set -e
 SRC="http://pciids.sourceforge.net/v2.2/pci.ids"
 DEST=pci.ids
+PCI_COMPRESSED_IDS=
+GREP=grep
 
-if which bzip2 >/dev/null ; then
+if [ -n "$PCI_COMPRESSED_IDS" ] ; then
+       DECOMP="cat"
+       SRC="$SRC.gz"
+       GREP=zgrep
+elif which bzip2 >/dev/null ; then
        DECOMP="bzip2 -d"
        SRC="$SRC.bz2"
 elif which gzip >/dev/null ; then
@@ -14,12 +20,14 @@ else
        DECOMP="cat"
 fi
 
-if which wget >/dev/null ; then
+if which curl >/dev/null ; then
+       DL="curl -o $DEST.new $SRC"
+elif which wget >/dev/null ; then
        DL="wget -O $DEST.new $SRC"
 elif which lynx >/dev/null ; then
        DL="eval lynx -source $SRC >$DEST.new"
 else
-       echo >&2 "update-pciids: cannot find wget nor lynx"
+       echo >&2 "update-pciids: cannot find curl, wget or lynx"
        exit 1
 fi
 
@@ -34,7 +42,7 @@ if ! $DECOMP <$DEST.new >$DEST.neww ; then
        exit 1
 fi
 
-if ! grep >/dev/null "^C " $DEST.neww ; then
+if ! $GREP >/dev/null "^C " $DEST.neww ; then
        echo >&2 "update-pciids: missing class info, probably truncated file"
        exit 1
 fi