Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.
Some article numbers may have changed. If this isn't what you're looking for, try searching all articles. Search articles

Driver pack catalog

Summary: Dell Command | Deploy Catalog for Enterprise Client Operating System Deployment.

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

The Dell Command | Deploy Catalog (a.k.a Driver Pack Catalog) 1.0 (Release Notes) is metadata about the latest System and WinPE Driver Packs released by Dell. It supports Dell Tablets, Latitude, OptiPlex and Precision systems. It allows customers to locate and download the current Dell Command | Deploy Driver Packs (a.k.a Driver Packs) with the automation method of their choice. 

Driver Pack Catalog and Driver Packs are updated as per the release schedule. Driver Pack Catalog is available for download at any of the three links below:

https://downloads.dell.com/catalog/DriverPackCatalog.cab

ftps://downloads.dell.com/catalog/DriverPackCatalog.cab
 

ftps://ftps.dell.com/catalog/DriverPackCatalog.cab  

Driver Pack Catalog is an XML file "DriverPackCatalog.xml" and is a traversable list of System and WinPE Driver Packs applicable to Dell Enterprise class systems (Latitude, OptiPlex, Precision and Tablets). The "DriverPackCatalog.xml" is compressed, digitally signed and delivered over the Internet as "DriverPackCatalog.cab". The XML-Schema for "DriverPackCatalog.xml" is available for download at DriverPackManifest.xsd (referenced XSDs are available at same location: DataModelCore.xsd and Package.xsd).

Check out the blog of Dell TechCenter RockStar, Dustin Hedges where he "automagically" gets his driver CABs by using the driver pack catalog. MDT guru, Keith Garner has a script for MDT (with a video tutorial) as well!

The content of "DriverPackCatalog.xml" can be of two categories:

1.       Metadata about Driver Pack Catalog: 

This section serves as parent node to the Driver Pack releases and contains metadata about the catalog itself. Significant information or attributes present in this section are described below: 

  • baseLocation:

URL component, to locate the root folder while downloading a Driver Pack.

  • baseLocationAccessProtocols

 Network Protocols allowed on base location. By Default HTTP and FTP are allowed.

  • dateTime:

Information about the date and time of the Catalog build.

  • Version:

Release version of the catalog. Version number is in the following format: Year.Month.ReleaseNumber (YYYY.MM.RN).

 

  • schemaVersion:

Information about the XML Schema version used to build the catalog.

2.       Metadata about Driver Packs: 

Each "Driver Package" node represents a Driver Pack as an entity. Information or data present as attributes and child nodes serve for two basic purposes:

  • Find or locate a Driver Pack for download.
  • Evaluate the applicability of the driver pack. 

Based on the mentioned purpose, some of the significant attributes and child nodes are explained in detail: 

Significant Attribute of "Driver Package" node

  • format:

The default value is "DUP" as Driver Packs are delivered as .EXE file. 

  • hashMD5:

MD5 for .EXE file. 

  • size:

Size of .EXE file. 

  • dateTime:

Release date of Driver Pack. 

  • vendorVersion:

Generally the default value is: 1.0. But, the version changes if the internal structure of Driver Pack changes. 

  • dellVersion:

Dell assigned version of the Driver Pack Release. The version number is usually assigned from A00 to A99 incrementally. 

  • path:

Displays information about the relative URL from the root download location or the "baselocation" of "DriverPackManifest" node. 

  • releaseID:

Dell assigned unique identification to the Driver Pack. 

  • type:

Driver Pack Catalog supports System and WinPE Driver Packs, type will be "Win" for System Driver Packs and "WinPE" for WinPE Driver Packs. 

 

Significant Child nodes of "Driver Package" node:

 

  • SupportedSystems:

"SupportedSystems" node defines the applicability of a Driver Pack with respect to the Model. "Brand" (child) node provides information about the Line of Business and "Model" (grandchild) node provides information about the Model. 

Key attributes of "Brand" & "Model" node used to evaluate the Model applicability are:

  • key & prefix

 

Dell assigned identification key and prefix of Line of Business.

 

Key

Prefix

Line of Business

4

LAT

Latitude

1

OP

OptiPlex

11

PRE

Precision

90

TABLET

Tablet

72

XPSNOTEBOOK

XPS Notebook

 

  • systemID

Dell assigned unique identification to a System BIOS of a Model.

  • name

Dell assigned Name of a Model.

 

Note: Both, "systemID" and "name" are flashed on to the BIOS, but "systemID" is not readily accessible WMI query. Hence use of "name" is recommended.

Note: Use of "Display" node’s CDATA programmatically is not recommended. 

 

  • SupportedOperatingSystems:

Operating System applicability of a Driver Pack is defined by "SupportedOperatingSystems" and "OperatingSystem" nodes.

 

Key attributes of "Operating System" node used to evaluate the Operating System applicability are:

 

  • osVendor:

As Driver Packs are targeting only Microsoft Windows Operating Systems, the default value is Microsoft.

 

  •  osArch:

System and WinPE Driver Packs from Dell support 32-bit(x86) and 64-bit(x64) operating system architecture.

 

  •  majorVersionminorVersionspMajorVersionspMinorVersion:

These attributes represent Windows Operating System’s major, minor, service pack major and service pack minor version.  For more information, see Operating System Version.

 

Note: Driver Packs are built and released only for client operating systems such as Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1, etc. Driver Packs for all operating systems for a given Model, may not be available due to hardware-software compatibility and so on.

 

Note: The uses of other data that are present in the xml file such as Language, Name or Title, etc. are not recommended i.e. "majorVersion", "minorVersion", "osArch" and "osVendor" should be used to identify the OS applicability.

 

1. How to "Download DriverPackCatalog.cab" from Dell?

 

Note: The latest Driver Pack Catalog-"DriverPackCatalog.cab" file is available at Dell support site. The earlier versions are removed from the site with every update.

 

PowerShell Script Snippet:

 

Description: Use http://downloads.dell.com/catalog/DriverPackCatalog.cab or ftp://downloads.dell.com/catalog/DriverPackCatalog.cab or ftp://ftp.dell.com/catalog/DriverPackCatalog.cab to download the Catalog to current directory. 

 

$source = "http://downloads.dell.com/catalog/DriverPackCatalog.cab"

$destination = "$pwd" + "\DriverPackCatalog.cab"

$wc = New-Object System.Net.WebClient

$wc.DownloadFile($source, $destination)

 

 

2. How to get "DriverPackCatalog.xml" from "DriverPackCatalog.cab" ?

 Driver Pack Catalog ("DriverPackCatalog.xml") is digitally signed and delivered as "DriverPackCatalog.cab" file that can be unzipped.

 

PowerShell Script Snippet:

 

Description: Extracts "DriverPackCatalog.xml" from "DriverPackCatalog.cab" to the current directory.

 

$catalogCABFile = "$pwd" + "\DriverPackCatalog.cab"

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

EXPAND $catalogCABFile $catalogXMLFile

 

3. How to find the list of Models supported by "DriverPackCatalog.xml"?

Note: Although, LOB title and model codes are present in child nodes, we recommend you to use the BIOS/System ID and Name to evaluate the applicability of the Driver Pack.

Description: Get Mapping between Model name and BIOS/System ID along with Line of Business, for system supported by the catalog from "DriverPackCatalog.xml" available in current directory.

 

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

[xml]$catalogXMLDoc = Get-Content $catalogXMLFile

$catalogXMLDoc.DriverPackManifest.DriverPackage | Select-Object @{Expression={$_.SupportedSystems.Brand.key};Label="LOBKey";},  @{Expression={$_.SupportedSystems.Brand.prefix};Label="LOBPrefix";}, @{Expression={$_.SupportedSystems.Brand.Model.systemID};Label="SystemID";}, @{Expression={$_.SupportedSystems.Brand.Model.name};Label="SystemName";} –unique

 

Note: One Model name can be associated with more than one System ID and vice versa. Such cases are possible because configurations/features are controlled by BIOS/System ID and more than one configuration may be available for some Model.

Recommendations: Driver Pack Catalog should be traversed using SystemID or SystemName as described in the above script i.e. ‘SystemID’ and ‘Name’ attributes of the Model node. But as SystemID is not accessible via Microsoft’s WMI Classes readily, hence Name attributes is preferred. 

  

4. How to locate or find Driver Packs for a System from "DriverPackCatalog.xml"?

After the "DriverPackCatalog.xml" is made available in current directory, the xml can be parsed to find all Driver Packs applicable for a model using BIOS/System ID or Name.

 

PowerShell Script Snippet:

 

Description:  In order to get all applicable System and WinPE Driver Packs for a given System, replace the ‘BIOS ID’ or ‘System Name’ in the script.

 

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

[xml]$catalogXMLDoc = Get-Content $catalogXMLFile

$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.systemID -eq "BIOS ID") -or ($_.type -eq "WinPE")} |sort type

Or

$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.name -eq "System Name") -or ($_.type -eq "WinPE")} |sort type

 

 5. How to find System Driver Pack for a System and an Operating System from "DriverPackCatalog.xml"?

 Driver Pack Catalog contains only the latest Driver Packs for a given Model and Operating System.

 

PowerShell Script Snippet:

 

Description: Replace ‘OS Major Version’, ‘OS Minor Version’ and ‘BIOS ID’ or ‘System Name’ to get the System Cab for a Model and an operating system.

 

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

[xml]$catalogXMLDoc = Get-Content $catalogXMLFile

$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.systemID -eq "BIOS ID") -and ($_.type -ne "WinPE") -and ($_.SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version" ) -and ($_.SupportedOperatingSystems.OperatingSystem.minorVersion -eq "OS Minor Version" )}

Or

$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.name -eq "System Name") -and ($_.type -ne "WinPE") -and ($_.SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version" ) -and ($_.SupportedOperatingSystems.OperatingSystem.minorVersion -eq "OS Minor Version" )}

 

 6. How to find WinPE Driver Packs for Operating System from "DriverPackCatalog.xml"?

 

Note:  WinPE Cabs that support all the models in the Catalog do not have the list of supported systems.

PowerShell Script Snippet:

 

Description: Replace the ‘OS Major Version’ and ‘OS Minor Version’ to get WinPE Cab for an operating system.

 

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

[xml]$catalogXMLDoc = Get-Content $catalogXMLFile

$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.type -eq "WinPE") -and ($_.SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version" ) -and ($_.SupportedOperatingSystems.OperatingSystem.minorVersion -eq "OS Minor Version"  )}

 

 

7. How to download the link for Driver Packs for a model, operating system and type from "DriverPackCatalog.xml"?

 

After a Driver Pack is located for (Type)-(BIOS/System ID or System Name)-(Operating System), you can easily download it.

 

PowerShell Script Snippet:

 Description: The example demonstrates downloading of a WinPE Cab. Replace ‘OS Major Version’ and ‘OS Minor Version’ to get WinPE Cab for a model and operating system and download the same to current directory.

 

$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"

[xml]$catalogXMLDoc = Get-Content $catalogXMLFile

$cabSelected = $catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.type -eq " WinPE ") -and ($_.SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version" ) -and ($_.SupportedOperatingSystems.OperatingSystem.minorVersion -eq "OS Minor Version")}

 

$cabDownloadLink = "http://" + $catalogXMLDoc.DriverPackManifest.baseLocation + $cabSelected.path

$cabDownloadLink = "http://" + $catalogXMLDoc.DriverPackManifest.baseLocation + "/" + $cabSelected.path

$Filename = [System.IO.Path]::GetFileName($cabDownloadLink)

$downlodDestination = "$pwd" + "\" + $Filename

$wc = New-Object System.Net.WebClient

$wc.DownloadFile($cabDownloadLink, $downlodDestination)

 

Article Properties


Last Published Date

31 Jan 2023

Version

7

Article Type

How To