Skip to content

Commit

Permalink
Merge pull request #22209 from systemd/wip/hadess/chassis-override
Browse files Browse the repository at this point in the history
hostname: Allow overriding the chassis type from hwdb
  • Loading branch information
yuwata committed Jan 22, 2022
2 parents 8fe9dbb + bdf182d commit f939a89
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
4 changes: 4 additions & 0 deletions hwdb.d/20-dmi-id.hwdb
Expand Up @@ -4,3 +4,7 @@
dmi:bvnLENOVO*
ID_SYSFS_ATTRIBUTE_MODEL=product_version
ID_VENDOR_FROM_DATABASE=Lenovo

# Microsoft Surface 1's chassis type
dmi:bvnMicrosoft Corporation*:pvrSurface with Windows 8 Pro*
ID_CHASSIS=tablet
12 changes: 7 additions & 5 deletions src/hostname/hostnamed.c
Expand Up @@ -725,16 +725,18 @@ static int property_get_chassis(
sd_bus_error *error) {

Context *c = userdata;
const char *name;
_cleanup_free_ char *dmi_chassis = NULL;
const char *name = NULL;

context_read_machine_info(c);

if (isempty(c->data[PROP_CHASSIS]))
name = fallback_chassis();
else
if (isempty(c->data[PROP_CHASSIS])) {
if (get_dmi_data("ID_CHASSIS", NULL, &dmi_chassis) <= 0)
name = fallback_chassis();
} else
name = c->data[PROP_CHASSIS];

return sd_bus_message_append(reply, "s", name);
return sd_bus_message_append(reply, "s", name ?: dmi_chassis);
}

static int property_get_uname_field(
Expand Down

0 comments on commit f939a89

Please sign in to comment.