[SRU][canonical-kernel-snap/main][PATCH 1/1] nvidia-hooks: clean up scripts

Aaron Jauregui aaron.jauregui at canonical.com
Tue Feb 18 05:27:57 UTC 2025


correct references to nouveau-ko, update script permissions to better
match permissions when installed, quote variables, and replace arch call
with uname -m for consistency with snapcraft.yaml

Signed-off-by: Aaron Jauregui <aaron.jauregui at canonical.com>
---
 hooks/module/install.module                        |  2 +-
 hooks/module/post-refresh.module                   |  2 +-
 hooks/module/remove.module                         |  2 +-
 hooks/nvidia-ko/install.nvidia-ko                  | 10 +++++-----
 hooks/nvidia-ko/post-refresh.nvidia-ko             |  0
 hooks/nvidia-ko/remove.nvidia-ko                   |  0
 hooks/nvidia-user/install.nvidia-user              |  4 ++--
 hooks/nvidia-user/kernel-gpu-2404-provider-mangler |  2 +-
 hooks/nvidia-user/remove.nvidia-user               |  0
 hooks/pc-kernel/install.pc-kernel                  |  4 ++--
 hooks/pc-kernel/post-refresh.pc-kernel             |  4 ++--
 11 files changed, 15 insertions(+), 15 deletions(-)
 mode change 100644 => 100755 hooks/module/install.module
 mode change 100644 => 100755 hooks/module/post-refresh.module
 mode change 100644 => 100755 hooks/module/remove.module
 mode change 100644 => 100755 hooks/nvidia-ko/install.nvidia-ko
 mode change 100644 => 100755 hooks/nvidia-ko/post-refresh.nvidia-ko
 mode change 100644 => 100755 hooks/nvidia-ko/remove.nvidia-ko
 mode change 100644 => 100755 hooks/nvidia-user/install.nvidia-user
 mode change 100644 => 100755 hooks/nvidia-user/kernel-gpu-2404-provider-mangler
 mode change 100644 => 100755 hooks/nvidia-user/remove.nvidia-user
 mode change 100644 => 100755 hooks/pc-kernel/install.pc-kernel
 mode change 100644 => 100755 hooks/pc-kernel/post-refresh.pc-kernel

diff --git a/hooks/module/install.module b/hooks/module/install.module
old mode 100644
new mode 100755
index 44e4394..8fb6b8e
--- a/hooks/module/install.module
+++ b/hooks/module/install.module
@@ -6,7 +6,7 @@ set -eux
 name=$(echo "$SNAP_COMPONENT_NAME" | cut -d+ -f2)
 
 # nouveau needs a special case to override nvidia modules
-if [ "$name" = "nouveau" ] ; then
+if [ "$name" = "nouveau-ko" ] ; then
 	dest="$SNAP_DATA/modules/$(uname -r)/graphics"
 else
 	dest="$SNAP_DATA/modules/$(uname -r)/$name"
diff --git a/hooks/module/post-refresh.module b/hooks/module/post-refresh.module
old mode 100644
new mode 100755
index 44e4394..8fb6b8e
--- a/hooks/module/post-refresh.module
+++ b/hooks/module/post-refresh.module
@@ -6,7 +6,7 @@ set -eux
 name=$(echo "$SNAP_COMPONENT_NAME" | cut -d+ -f2)
 
 # nouveau needs a special case to override nvidia modules
-if [ "$name" = "nouveau" ] ; then
+if [ "$name" = "nouveau-ko" ] ; then
 	dest="$SNAP_DATA/modules/$(uname -r)/graphics"
 else
 	dest="$SNAP_DATA/modules/$(uname -r)/$name"
diff --git a/hooks/module/remove.module b/hooks/module/remove.module
old mode 100644
new mode 100755
index e326e7d..bada5fe
--- a/hooks/module/remove.module
+++ b/hooks/module/remove.module
@@ -4,7 +4,7 @@
 set -eux
 
 name=$(echo "$SNAP_COMPONENT_NAME" | cut -d+ -f2)
-if [ "$name" = "nouveau" ] ; then
+if [ "$name" = "nouveau-ko" ] ; then
 	dest="$SNAP_DATA/modules/$(uname -r)/graphics"
 else
 	dest="$SNAP_DATA/modules/$(uname -r)/$name"
diff --git a/hooks/nvidia-ko/install.nvidia-ko b/hooks/nvidia-ko/install.nvidia-ko
old mode 100644
new mode 100755
index c4b5285..e11d532
--- a/hooks/nvidia-ko/install.nvidia-ko
+++ b/hooks/nvidia-ko/install.nvidia-ko
@@ -5,16 +5,16 @@ set -eux
 
 # First setup the kernel modules
 tmp_dir="/tmp/nvidia-ko"
-rm -rf $tmp_dir
-mkdir $tmp_dir
+rm -rf "$tmp_dir"
+mkdir "$tmp_dir"
 cp -r "$SNAP_COMPONENT"/bits $tmp_dir/bits
 
-cd $tmp_dir/bits
+cd "$tmp_dir/bits"
 
 sed -i "s|/usr/bin/ld.bfd|$SNAP_COMPONENT/bin/ld.bfd|" BUILD
 sed -i "s|make|$SNAP_COMPONENT/bin/make|" BUILD
 
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SNAP_COMPONENT/lib/$(uname -m)-linux-gnu sh BUILD
+LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SNAP_COMPONENT/lib/$(uname -m)-linux-gnu" sh BUILD
 
 # Clean up directory before copying modules
 rm -rf "$SNAP_DATA/modules/$(uname -r)/graphics"
@@ -22,4 +22,4 @@ mkdir -p "$SNAP_DATA/modules/$(uname -r)/graphics"
 
 mv ../*.ko "$SNAP_DATA/modules/$(uname -r)/graphics/"
 
-rm -rf $tmp_dir
+rm -rf "$tmp_dir"
diff --git a/hooks/nvidia-ko/post-refresh.nvidia-ko b/hooks/nvidia-ko/post-refresh.nvidia-ko
old mode 100644
new mode 100755
diff --git a/hooks/nvidia-ko/remove.nvidia-ko b/hooks/nvidia-ko/remove.nvidia-ko
old mode 100644
new mode 100755
diff --git a/hooks/nvidia-user/install.nvidia-user b/hooks/nvidia-user/install.nvidia-user
old mode 100644
new mode 100755
index fab93e5..e58769a
--- a/hooks/nvidia-user/install.nvidia-user
+++ b/hooks/nvidia-user/install.nvidia-user
@@ -6,11 +6,11 @@ set -eux
 # Now setup the userspace libraries via kernel-gpu-2404 interface
 SENTINEL_FILE="$SNAP_COMMON"/kernel-gpu-2404/kernel-gpu-2404-sentinel
 
-mkdir -p "$SNAP_COMMON"/kernel-gpu-2404
-
 # Clean up existing installs
 rm -rf "$SNAP_COMMON"/kernel-gpu-2404/*
 
+mkdir -p "$SNAP_COMMON"/kernel-gpu-2404
+
 cp -r "$SNAP_COMPONENT"/usr "$SNAP_COMMON"/kernel-gpu-2404
 cp "$SNAP_COMPONENT"/kernel-gpu-2404-provider-mangler "$SNAP_COMMON"/kernel-gpu-2404
 
diff --git a/hooks/nvidia-user/kernel-gpu-2404-provider-mangler b/hooks/nvidia-user/kernel-gpu-2404-provider-mangler
old mode 100644
new mode 100755
index ea032fd..f80cf93
--- a/hooks/nvidia-user/kernel-gpu-2404-provider-mangler
+++ b/hooks/nvidia-user/kernel-gpu-2404-provider-mangler
@@ -1,7 +1,7 @@
 #!/bin/bash
 
 
-ARCH_TRIPLET="$(arch)-linux-gnu"
+ARCH_TRIPLET="$(uname -m)-linux-gnu"
 
 export OCL_ICD_VENDORS=${OCL_ICD_VENDORS:+$OCL_ICD_VENDORS:}${COMPONENT_PATH}/etc/OpenCL/vendors
 export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}${COMPONENT_PATH}/usr/lib/${ARCH_TRIPLET}
diff --git a/hooks/nvidia-user/remove.nvidia-user b/hooks/nvidia-user/remove.nvidia-user
old mode 100644
new mode 100755
diff --git a/hooks/pc-kernel/install.pc-kernel b/hooks/pc-kernel/install.pc-kernel
old mode 100644
new mode 100755
index 0523662..08d0067
--- a/hooks/pc-kernel/install.pc-kernel
+++ b/hooks/pc-kernel/install.pc-kernel
@@ -1,6 +1,6 @@
 #!/bin/bash
 
 #install nouveau graphics as default if not already installed
-if [ ! -d "/snap/${SNAP_NAME}/components/mnt/nouveau" ]; then
-	snapctl install +nouveau
+if [ ! -d "/snap/${SNAP_NAME}/components/mnt/nouveau-ko" ]; then
+	snapctl install +nouveau-ko
 fi
diff --git a/hooks/pc-kernel/post-refresh.pc-kernel b/hooks/pc-kernel/post-refresh.pc-kernel
old mode 100644
new mode 100755
index 0523662..08d0067
--- a/hooks/pc-kernel/post-refresh.pc-kernel
+++ b/hooks/pc-kernel/post-refresh.pc-kernel
@@ -1,6 +1,6 @@
 #!/bin/bash
 
 #install nouveau graphics as default if not already installed
-if [ ! -d "/snap/${SNAP_NAME}/components/mnt/nouveau" ]; then
-	snapctl install +nouveau
+if [ ! -d "/snap/${SNAP_NAME}/components/mnt/nouveau-ko" ]; then
+	snapctl install +nouveau-ko
 fi
-- 
2.43.0




More information about the kernel-team mailing list