2323# Source: https://github.com/intel/linux-npu-driver/releases/latest
2424NPU_VERSION=" 1.23.0"
2525NPU_BUILD_ID=" 20250827-17270089246"
26- LEVEL_ZERO_VERSION=" v1.22.4"
2726
2827# Auto-detect Ubuntu version
2928UBUNTU_VERSION=" "
@@ -50,7 +49,6 @@ detect_ubuntu_version() {
5049display_version_info () {
5150 print_info " Using NPU Driver Version Information:"
5251 print_info " NPU Version: ${NPU_VERSION} | Build: ${NPU_BUILD_ID} "
53- print_info " Level Zero Version: ${LEVEL_ZERO_VERSION} "
5452 print_info " Ubuntu Package: ${UBUNTU_VERSION} "
5553 print_info " "
5654 print_info " Note: To update versions, edit the global variables at the top of this script"
@@ -108,12 +106,6 @@ cleanup_old_packages() {
108106 # Remove NPU packages with force to handle conflicts
109107 dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu 2> /dev/null || true
110108
111- # Remove conflicting libze1 package
112- apt remove -y libze1 2> /dev/null || true
113-
114- # Fix any broken dependencies
115- apt install --fix-broken -y
116-
117109 print_success " Old packages and conflicts cleaned up"
118110 return 0
119111}
@@ -167,42 +159,6 @@ download_npu_packages() {
167159 return 0
168160}
169161
170- # Check if Level Zero is installed
171- check_level_zero () {
172- print_info " Checking Level Zero installation..."
173- if dpkg -l level-zero 2> /dev/null | grep -q " ^ii" ; then
174- print_success " Level Zero is already installed"
175- return 0
176- else
177- print_info " Level Zero not found, will need to install"
178- return 1
179- fi
180- }
181-
182- # Download oneAPI Level Zero package
183- download_level_zero_package () {
184- print_info " Downloading oneAPI Level Zero ${LEVEL_ZERO_VERSION} ..."
185- print_info " DEBUG: Level Zero version variable: '${LEVEL_ZERO_VERSION} '"
186-
187- # Extract version number without 'v' prefix for filename
188- local lz_version_num
189- # shellcheck disable=SC2001
190- lz_version_num=$( echo " $LEVEL_ZERO_VERSION " | sed ' s/^v//' )
191- print_info " DEBUG: Extracted version number: '${lz_version_num} '"
192-
193- # Use Ubuntu 24.04 package
194- local lz_url=" https://github.com/oneapi-src/level-zero/releases/download/${LEVEL_ZERO_VERSION} /level-zero_${lz_version_num} +u24.04_amd64.deb"
195- print_info " DEBUG: Download URL: ${lz_url} "
196-
197- if wget -q --timeout=30 " ${lz_url} " ; then
198- print_success " Downloaded Level Zero package"
199- return 0
200- else
201- print_error " Failed to download Level Zero from ${lz_url} "
202- return 1
203- fi
204- }
205-
206162# Install NPU packages
207163install_npu_packages () {
208164 print_info " Installing NPU driver packages..."
@@ -221,20 +177,6 @@ install_npu_packages() {
221177 fi
222178}
223179
224- # Install Level Zero package
225- install_level_zero_package () {
226- print_info " Installing oneAPI Level Zero package..."
227-
228- if ! dpkg -i ./level-zero* .deb; then
229- print_warning " Level Zero installation failed, fixing dependencies..."
230- apt install --fix-broken -y
231- dpkg -i ./level-zero* .deb
232- fi
233-
234- print_success " Level Zero package installed"
235- return 0
236- }
237-
238180# Setup device permissions
239181setup_device_permissions () {
240182 print_info " Configuring NPU device permissions..."
@@ -355,29 +297,18 @@ install_npu() {
355297
356298 print_info " Step 4: Installing NPU packages..."
357299 install_npu_packages || { print_error " Failed to install NPU packages" ; exit 1; }
358-
359- print_info " Step 5: Checking Level Zero installation..."
360- if ! check_level_zero; then
361- print_info " Step 6: Downloading Level Zero package..."
362- download_level_zero_package || { print_error " Failed to download Level Zero package" ; exit 1; }
363-
364- print_info " Step 7: Installing Level Zero package..."
365- install_level_zero_package || { print_error " Failed to install Level Zero package" ; exit 1; }
366- else
367- print_info " Step 6-7: Level Zero already installed, skipping download and installation"
368- fi
369-
370- print_info " Step 8: Setting up device permissions..."
300+
301+ print_info " Step 5: Setting up device permissions..."
371302 setup_device_permissions || { print_error " Failed to setup device permissions" ; exit 1; }
372303
373304 # Cleanup
374- print_info " Step 9 : Cleaning up temporary files..."
305+ print_info " Step 6 : Cleaning up temporary files..."
375306 cd / || exit 1
376307 rm -rf " $temp_dir "
377308 print_success " Cleanup completed"
378309
379310 # Verify installation
380- print_info " Step 10 : Verifying installation..."
311+ print_info " Step 7 : Verifying installation..."
381312 verify_installation
382313
383314 print_info " "
0 commit comments