[arch-commits] Commit in dkms/trunk (PKGBUILD hook.sh)

Sébastien Luttringer seblu at archlinux.org
Thu May 21 08:25:06 UTC 2020


    Date: Thursday, May 21, 2020 @ 08:25:06
  Author: seblu
Revision: 387358

upgpkg: dkms 2.8.1-3

- fix FS#66653
- fix FS#62879

Modified:
  dkms/trunk/PKGBUILD
  dkms/trunk/hook.sh

----------+
 PKGBUILD |   12 ++++++------
 hook.sh  |   22 ++++++++++++++--------
 2 files changed, 20 insertions(+), 14 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2020-05-21 07:27:40 UTC (rev 387357)
+++ PKGBUILD	2020-05-21 08:25:06 UTC (rev 387358)
@@ -3,7 +3,7 @@
 
 pkgname=dkms
 pkgver=2.8.1
-pkgrel=2
+pkgrel=3
 pkgdesc='Dynamic Kernel Modules System'
 arch=('any')
 url='https://github.com/dell/dkms'
@@ -21,11 +21,11 @@
         'hook.remove'
         'hook.sh'
         '0001-Revert-Make-newly-installed-modules-available-immedi.patch')
-md5sums=('SKIP'
-         'be9784c5c5bbc92fa2d18f0b5f4cd0c4'
-         'b7b9f471a84aecbe063065db98f45162'
-         '80632f6a454b35bcade2bed287f13c7b'
-         'd3b91ef709f567a375f4bbdbd3291d2b')
+sha256sums=('SKIP'
+            '047e0e46967e98fbf3ff8860a80f259c28693d5989373d5a5395714495b59844'
+            'c3e3a20857e628116bde499af1b3614bcafb49dbe9b5775cfcf0aa862af1750a'
+            '3463adfe18dad0805a806c2fb0fc4faf88924056168980a3c7cbc28a27c8867b'
+            '124b821b1b44ba365d915945825bcf32c1077655c3a98eb1644de56b6abfcd09')
 
 prepare() {
   cd dkms

Modified: hook.sh
===================================================================
--- hook.sh	2020-05-21 07:27:40 UTC (rev 387357)
+++ hook.sh	2020-05-21 08:25:06 UTC (rev 387358)
@@ -1,7 +1,7 @@
 #!/bin/bash
 
 #
-# Copyright © 2018 Sébastien Luttringer
+# Copyright © 2018-2020, Sébastien Luttringer
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -21,6 +21,8 @@
 run() {
 	echo "==> $*"
 	"$@" > /dev/null
+	local ret=$?
+	(( $ret )) && echo "==> Warning, \`$*' returned $ret"
 }
 
 # check whether the dependencies of a module are installed
@@ -28,8 +30,10 @@
 # $2: kernel version
 check_dependency() { (
 	source "$source_tree/${1/\//-}/dkms.conf"
+	local state
 	for dep in "${BUILD_DEPENDS[@]}"; do
-		if ! [[ "$(dkms status -m "$dep" -k "$2")" =~ :[[:space:]]installed$ ]]; then
+		state=$(dkms status -m "$dep" -k "$2")
+		if ! [[ "$state" =~ "$mod, $mver, $kver, "[^:]+': installed' ]]; then
 			exit 1
 		fi
 	done
@@ -113,13 +117,15 @@
 
 # remove registered modules when built/installed
 dkms_remove() {
-	local nvk mod kver
+	local nvk mod mver kver state
 	for nvk in "${!DKMS_MODULES[@]}"; do
-		mod=${nvk%/*}
-		kver=${nvk##*/}
-		state=$(dkms status -m "$mod" -k "$kver")
-		if [[ "$state" =~ :[[:space:]](built|installed)$ ]]; then
-			run dkms remove "$mod" -k "$kver"
+		[[ "$nvk" =~ ([^/]+)/([^/]+)/(.+) ]]
+		mod="${BASH_REMATCH[1]}"
+		mver="${BASH_REMATCH[2]}"
+		kver="${BASH_REMATCH[3]}"
+		state=$(dkms status -m "$mod" -v "$mver" -k "$kver")
+		if [[ "$state" =~ "$mod, $mver, $kver, "[^:]+": "(built|installed) ]]; then
+			run dkms remove "$mod" -v "$mver" -k "$kver"
 		fi
 		unset DKMS_MODULES[$nvk]
 	done



More information about the arch-commits mailing list