diff -uNr dkms-2.0.19/dkms_find-provides dkms-2.0.19/dkms_find-provides
--- dkms-2.0.19/dkms_find-provides	2007-08-31 21:03:32.000000000 +0000
+++ dkms-2.0.19/dkms_find-provides	2017-11-12 12:45:12.364132015 +0000
@@ -63,7 +63,7 @@ TMPDIR=$(mktemp -d /tmp/dkms-findprovide
 trap "rm -rf $TMPDIR >/dev/null 2>&1"  QUIT EXIT HUP INT TERM
 
 modlist=
-for cand in $(grep -E '(/lib/modules/.+\.ko$|tgz$|tbz$|tar\.(gz|bz2)$)') $*; do
+for cand in $(grep -E '(/lib/modules/.+\.ko$|tgz$|tbz$|tar\.(gz|bz2|xz)$)') $*; do
     if echo $cand | grep -q -E '/lib/modules/.+\.ko$' > /dev/null 2>&1; then
         modlist="$modlist $cand"
     fi
@@ -75,6 +75,8 @@ for cand in $(grep -E '(/lib/modules/.+\
         opts=${opts}z
     elif bzip2 -t $cand >/dev/null 2>&1; then
         opts=${opts}j
+    elif xz -t $cand >/dev/null 2>&1; then
+		opts=${opts}J
     fi
     tar ${opts}f $cand -C $TMPDIR > /dev/null 2>&1
 done
