SDT-FILE-DETECTION(7) SUSE Driver Tools

Scott Bahling

19-03-2019

NAME

sdt file detection - how SUSE Driver Tools detects files

SYNOPSIS

Related to: sdt [cmd] -u--updatedir UPDATEDIR -a--addon ADDONDIR

DESCRIPTION

When scanning the UPDATEDIR or ADDONDIR for files to be added to the driver kit, certain files will be automatically detected and specific actions taken. Below is a list of files that are detected by SUSE Driver Tools and how they are used. For each file type list, the SUSE Driver Tools command(s) that they apply to are listed in square brackets next to the title.

Driver Kit files

Content File [driverkit]
A file named content will be assumed to be a full or partial SUSE standard content file. When generating a driver kit the info provided in this content file will be used for setting up the product meta data that is ultimately passed to KIWI. Only a skeleton content file is required. For further information on the content file see: http://en.opensuse.org/openSUSE:Standards_YaST2_Repository_Metadata_content
GPG Keys and Keyrings [driverkit/kiso]
Files ending in .gpg or .asc will be assumed to be gpg keys or keyrings and will be added to the installkey.gpg keyring used by YaST as known/trusted keys during installation. If the file is named installkey.gpg it will replace the file on the media instead of appending to it. This replacement happens before any subsequent adding of keys to this keyring.
README files [driverkit/kiso]
Any file with a name starting with README will be copied to the root of the driverkit image.
nextmedia file [driverkit/kiso]

A file with the name nextmedia will be copied to the root of the initrd. The nextmedia file specifies the popup message that occurs when doing an optical media install and the installer requests to insert the media of the base distribution. The format of the file is XML like with the message provided between <text> entities.

Multiple languages can be provided by adding adding multiple <text> entities with the appropriate lang= attribute. English is the fallback language. Example:

addon.iso file [driverkit]
A file named addon.iso contained in in the updates directory will be used as an add-on product in the same way as passing the –addon option to the sdt media driverkit command.

Linuxrc Files

init file [driverkit/kiso/initrd]
A file named init can be used to update to the linuxrc executable (init file in the initrd).
*_setup files [driverkit/kiso/initrd]
Files with names ending in _setup can be used to update or add linuxrc setup scripts to the initrd.
linuxrc.options file [driverkit/kiso]

A file with the name linuxrc.options can be used to add options (lines) to the linuxrc.config file. The linuxrc.options file will be simply concatenated to the linuxrc.config file in the initrd.

Example: To add a command to load a specific module create a linuxrc.options file with the following content:

    Exec:           insmod /modules/mlx4_en.ko

Kernel Specific Files

Kernel Module Packages (-kmp) [driverkit/dud/kiso/pxe]
Kernel module packages will be added to the installation repository of the driver kit. If creating an installation kit, the .ko binaries will be extracted and added to the initrd of the boot structure so that the driver module is used at boot time.
Kernel Packages [driverkit/dud/kiso/pxe]
Kernel packages will be added to the installation repository of the driver kit. If creating an installation kit, then the kernel image from the -default kernel flavor will be extracted and added to the boot structure at boot/[arch]/loader/linux. This kernel will be used when booting the driver kit. When using the pxe command, the linux image will be extracted as above and placed in the specified OUTPUTDIR.

Update Media Files

The following files will be added to the driver update file systems when created. For more information on these files please see: http://ftp.suse.com/pub/people/hvogel/Update-Media-HOWTO/

[driverkit/dud/kiso/pxe]

Update Media scripts (update.{pre,post,post2}) ie die OS-Installations-Disc 1 ein update.post2 will be assumed to be relevant driver update media scripts. These scripts can be used to perform special actions during the installation process.

Driver Update Config
A file named dud.config will be assumed to be a driver update config file and will be placed in the dud
YaST2 modules
Files that end with the .ybc or .ycp file extension will be assumed to be YaST2 modules and will be added to the y2update/modules section of the driver update section of the initrd.

Overlays

Overlays are file archives provided by the user that are unpacked into parts of the driver kit image. These overlays will overwrite any existing files. Currently only gzipped tar files with extension .tgz are supported.

Media Overlays [driverkit]
All tar files that begin with the name media- will be unpacked into the root of the driver kit image. This step happens at the very end of the image creation.
Initrd Overlays [driverkit/kiso/pxe]
All tar files that begin with the name initrd- will be unpacked into the root of the initrd image used on installation kits. This step happens after all other processing of the initrd file system has completed and just before it is packed.
Inst-sys Overlays [driverkit/dud/kiso/pxe]
All tar files that begin with the name instsys- will be unpacked into the inst-sys location of the driver update location on the driver kit media. This happens after all other processing and preparation of the driver update.

Directories

The SUSE Driver Tools will descend into sub-directories under the top-level UPDATEDIR when scanning for update files. Certain sub-directory names instruct SUSE Driver Tools to treat the files found below this directory in specific ways.

The following subdirectory names are detected:

meta
RPM packages found under the directory named meta will be considered meta-packages for driver kit creation using kiwi.
inst-sys
RPM packages under the inst-sys directory will only be targeted for unpacking into the inst-sys location of the driver update structure. These packages will not be included in any package repositories for installation. Kernel or KMP packages under the inst-sys directory will not be processed for addition to initrd and boot loader.