@@ -422,7 +422,9 @@ nvidia_driver_handler () {
422422			rm -rf " ${nvidia_drivers_dir} " " ${nvidia_drivers_dir} " 
423423
424424			if  [ -s  /usr/lib/libGLX_nvidia.so." ${nvidia_driver_version} " ||  \
425- 			   [ -s  /usr/lib/libGL.so." ${nvidia_driver_version} " ;  then 
425+ 			   [ -s  /usr/lib/libGL.so." ${nvidia_driver_version} " ||  \
426+                            [ -s  /usr/lib/libnvidia-glcore.so." ${nvidia_driver_version} " ||  \
427+ 			   [ -s  /usr/lib/libnvidia-eglcore.so." ${nvidia_driver_version} " ;  then 
426428				cp /usr/lib/tls/libnvidia-tls.so.*  /usr/lib & > /dev/null
427429				cp /usr/lib32/tls/libnvidia-tls.so.*  /usr/lib32 & > /dev/null
428430				echo  " ${nvidia_driver_version} " >  " ${nvidia_drivers_dir} " 
@@ -1203,24 +1205,27 @@ if [ "$(ls "${mount_point}" 2>/dev/null)" ] || launch_wrapper "${mount_command[@
12031205						ldconfig -p >  " ${nvidia_drivers_dir} " 
12041206
12051207						if  [ -s  " ${nvidia_drivers_dir} " ;  then 
1206- 							grep -Ei  " nvidia|libcuda " " ${nvidia_drivers_dir} " |  cut -d " >" >>  " ${nvidia_drivers_dir} " 
1208+ 							grep -i  " nvidia" " ${nvidia_drivers_dir} " |  cut -d " >" >>  " ${nvidia_drivers_dir} " 
12071209
12081210							if  [ -s  " ${nvidia_drivers_dir} " ;  then 
12091211								echo  " Copying Nvidia libraries from the host system, please wait..." 
12101212
1213+  								grep -i " libcuda" " ${nvidia_drivers_dir} " |  cut -d " >" >>  " ${nvidia_drivers_dir} " 
1214+ 
12111215								for  f  in  $( grep " libnv" " ${nvidia_drivers_dir} " |  cut -d " >" ) ;  do 
12121216									if  strings " ${f} " |  grep -qi -m 1 " nvidia" & > /dev/null;  then 
12131217										echo  " ${f} " >>  " ${nvidia_drivers_dir} " 
12141218									fi 
12151219								done 
12161220
1221+ 								nvidia_lib_copied=0
12171222								for  f  in  $( cat " ${nvidia_drivers_dir} " ) ;  do 
12181223									libname=" $( basename " ${f} " ) " 
12191224
12201225									if  file " $( readlink -f " ${f} " ) " |  grep " 32-bit" & > /dev/null;  then 
1221- 										cp -L " ${f} " " ${overlayfs_dir} " " ${libname} " 
1226+ 										cp -L " ${f} " " ${overlayfs_dir} " " ${libname} "   2> /dev/null 
12221227									else 
1223- 										cp -L " ${f} " " ${overlayfs_dir} " " ${libname} " 
1228+ 										cp -L " ${f} " " ${overlayfs_dir} " " ${libname} "   2> /dev/null  &&  nvidia_lib_copied=1 
12241229									fi 
12251230								done 
12261231
@@ -1248,8 +1253,14 @@ if [ "$(ls "${mount_point}" 2>/dev/null)" ] || launch_wrapper "${mount_command[@
12481253									fi 
12491254								done 
12501255
1251- 								echo  " ${nvidia_driver_version} " >  " ${nvidia_drivers_dir} " 
1252- 							fi 
1256+ 								if  [ " ${nvidia_lib_copied} " =  1 ];  then 
1257+ 									echo  " ${nvidia_driver_version} " >  " ${nvidia_drivers_dir} " 
1258+ 	 							else 
1259+ 	 								echo  " Failed to copy Nvidia libraries" 
1260+ 	  							fi 
1261+ 							else 
1262+        								echo  " Nvidia libraries not found on the host system" 
1263+ 	       						fi 
12531264						fi 
12541265					fi 
12551266
0 commit comments