dkms/debian/patches/2001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch
2024-11-20 14:25:28 +00:00

51 lines
1.9 KiB
Diff

From 0e69615135244378ade7063ea6da76c7d68474ba Mon Sep 17 00:00:00 2001
From: Andreas Beckmann <anbe@debian.org>
Date: Wed, 19 Apr 2023 17:37:54 +0200
Subject: [PATCH] do not perform rpm queries on Debian/Ubuntu/Arch based
distributions
Closes #329
---
dkms.in | 15 +++++++++++++++
1 file changed, 15 insertions(+)
--- a/dkms.in
+++ b/dkms.in
@@ -312,6 +312,11 @@ setup_kernels_arches()
kernelver[0]=$(uname -r)
fi
if [[ ! $arch ]]; then
+ case "$running_distribution" in
+ debian* | ubuntu* | arch*)
+ arch[0]=$(uname -m)
+ ;;
+ *)
kernelver_rpm=$(rpm -qf "$install_tree/$kernelver" 2>/dev/null | \
grep -v "not owned by any package" | grep kernel | head -n 1)
if ! arch[0]=$(rpm -q --queryformat "%{ARCH}" "$kernelver_rpm" 2>/dev/null); then
@@ -320,6 +325,8 @@ setup_kernels_arches()
arch[0]="ia32e"
fi
fi
+ ;;
+ esac
fi
if [[ ! $arch ]]; then
die 12 "Could not determine architecture."
@@ -1557,7 +1564,15 @@ do_uninstall()
while [[ ${dir_to_remove} != ${dir_to_remove#/} ]]; do
dir_to_remove="${dir_to_remove#/}"
done
+
+ case "$running_distribution" in
+ debian* | ubuntu* | arch*)
+ (if cd "$install_tree/$1"; then rmdir -p --ignore-fail-on-non-empty "${dir_to_remove}"; fi || true)
+ ;;
+ *)
(if cd "$install_tree/$1"; then rpm -qf "${dir_to_remove}" >/dev/null 2>&1 || rmdir -p --ignore-fail-on-non-empty "${dir_to_remove}"; fi || true)
+ ;;
+ esac
else
echo "Module was not found within $install_tree/$1/"
fi