summaryrefslogtreecommitdiff
path: root/libre/dkms-libre/dkms.systemd
diff options
context:
space:
mode:
Diffstat (limited to 'libre/dkms-libre/dkms.systemd')
-rw-r--r--libre/dkms-libre/dkms.systemd61
1 files changed, 0 insertions, 61 deletions
diff --git a/libre/dkms-libre/dkms.systemd b/libre/dkms-libre/dkms.systemd
deleted file mode 100644
index 03e6bfe97..000000000
--- a/libre/dkms-libre/dkms.systemd
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/bin/bash
-
-. /etc/default/dkms
-
-# list dkms modules for the current running kernel
-list_dkms_modules() {
- shopt -s nullglob
- declare -a DKMS_MOULES
- # dkms status needs uname -r to list correctly intalled version for current kernel
- local modules_path=($(dkms status -k "$(uname -r)"|sed -rn 's#(.*), (.*), (.*), (.*): installed#\1/\2/\3/\4#p'))
- for p in "${modules_path[@]}"; do
- for m in /var/lib/dkms/"$p"/module/*.ko{,gz}; do
- m=${m##*/}
- m=${m%.gz}
- m=${m%.ko}
- DKMS_MODULES+=("$m")
- done
- done
-}
-
-# load installed kernel modules for the current kernel version
-load_dkms_modules() {
- local ret=0
- list_dkms_modules
- for m in "${DKMS_MODULES[@]}"; do
- modprobe "$m"
- ret+=$?
- done
- return $ret
-}
-
-# unload installed kernel modules for the current kernel version
-unload_dkms_modules() {
- list_dkms_modules
- # ask for removal
- for m in "${DKMS_MODULES[@]}"; do
- modprobe --remove --quiet "$m"
- done
- # check modules are unloaded
- # sometimes modprobe -r fail but modules are removed
- for m in "${DKMS_MODULES[@]}"; do
- [[ -e /sys/modules/$m ]] && return 1
- done
- return 0
-}
-
-case "$1" in
- start)
- dkms autoinstall -k "$(uname -r)"
- [[ $LOAD =~ [Yy][Ee][Ss] ]] && load_dkms_modules
- ;;
- stop)
- [[ $UNLOAD =~ [Yy][Ee][Ss] ]] && unload_dkms_modules
- ;;
- *)
- echo "usage: $0 {start|stop}" >&2
- ;;
-esac
-
-:
-# vim:set ts=2 sw=2 ft=sh et: