#!/bin/sh for addon in xorg-nvidia xorg-radeon $(cd /lib/modules/$(uname -r); ls modules.alias.xorg-* | grep -v "xorg-nvidia\|xorg-radeon"); do addon=${addon##*.} lspci -m 2>/dev/null | sed 's/\S\+ \S\+ \S\+ "\(\S\+\)" "\(\S\+\)" "\(\S\+\)" "\(\S\+\)"/\1 \2 \3 \4/' | while read vendor device subvendor subdevice; do if grep -qi "alias pci:v\(0000$vendor\|\*\)d\(0000$device\|\*\)sv\(0000$subvendor\|\*\)sd\(0000$subdevice\|\*\)" /lib/modules/$(uname -r)/modules.alias.$addon 2>/dev/null && ! apm l | sed "s/xorg-nvidia\|xorg-nouveau/xorg-nvidia\nxorg-nouveau/" | sed "s/xorg-ati\|xorg-radeon/xorg-ati\nxorg-radeon/" | grep -q $addon; then echo $addon fi done done