device-base

device v3.0.0

Device base layer and defaults

Relationships

Required by:

image-rota rpi-device-base

Requires Provider: device

Configuration Variables

Declares (prefix: device):

Variable Description Default Validation Policy
IGconf_device_vendor Device vendor vendor Non-empty string value lazy
IGconf_device_class Device classification generic Non-empty string value lazy
IGconf_device_variant Device variant none Non-empty string value lazy
IGconf_device_hostname Sets the network hostname for the device ${IGconf_device_class}-$(tr -dc 'a-z' < /dev/urandom | head -c 6) Non-empty string value immediate
IGconf_device_user1 A user account with this name will be created on the device. pi Non-empty string value immediate
IGconf_device_user1pass Password required to log into the user1 account. If neither user1pass nor user1passhash is set, the account will be locked. Password requirements are as follows. At least 8 characters. At least one lowercase letter. At least one uppercase letter. At least one digit. At least one special character from @$!%*?& <disabled> Must match regex pattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$ skip
IGconf_device_user1passhash A pre-hashed password for the user1 account. Generate using the provided genpasswd utility, or supply a hash created with the same algorithm used by the chroot. If neither user1pass nor user1passhash is set, the account will be locked. <disabled> Non-empty string value skip
IGconf_device_user1sudo Controls sudo access for the user1 account. 'none' disables sudo access entirely. 'passwd' requires a password for sudo. 'nopasswd' grants passwordless sudo. If user1pass or user1passhash is set, defaults to 'passwd'. Note: setting 'nopasswd' without a password is permitted but inadvisable. none Must be one of: none, passwd, nopasswd lazy
IGconf_device_user1uid The UID assigned to the user1 account. If unset, one will be assigned automatically. <disabled> Integer value in range 1000 to 65533 skip
IGconf_device_user1gid The GID assigned to the user1 account. If unset, one will be assigned automatically. <disabled> Integer value in range 1000 to 65533 skip
IGconf_device_storage_type Declares the storage media the image is intended for, as seen by the OS. For example, an NVMe backed disk connected via USB would be usb, not nvme. Whether this restricts where the image can be written to or booted from depends on downstream layers. This may seed the configuration and behaviour of run-time boot media detection, device provisioning, etc. sd Must be one of: sd, emmc, nvme, usb lazy
IGconf_device_sector_size Logical sector size (in bytes) of the target storage device. Used to guide image layout decisions (e.g. alignment, padding, and sector-based structure placement) so the image matches the intended media. Common values: 512 (for 512n/512e) or 4096 (for 4Kn). 512 Integer value in range 512 to 512 immediate
IGconf_device_assetdir Device specific asset location. Use this directory to hold configuration files, scripts, certificates, Device Tree source, wifi regulatory domains, firmware blobs, overlays, etc particular to the device. /dev/null Non-empty string value lazy

Attributes

File: base/device-base.yaml

Type: static