From 0b65ac224d831cc96da940cce510523c7276a5ec Mon Sep 17 00:00:00 2001 From: Pavel Valena Date: Tue, 25 Apr 2023 14:56:59 +0200 Subject: [PATCH 22/23] feat(hwdb): add hwdb module to install hwdb.bin on demand Module to install hwdb.bin. Further extensions might make only selected part of hwdb installable to save space. The module is not included by default. Including the module adds 2MB of compressed data (on Fedora, the file has 12MB). Installing hwdb.bin is needed in case of custom HW like a keyboard/mouse, or various interfaces. Original PR: https://github.com/dracutdevs/dracut/pull/1681 --- modules.d/95hwdb/module-setup.sh | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100755 modules.d/95hwdb/module-setup.sh diff --git a/modules.d/95hwdb/module-setup.sh b/modules.d/95hwdb/module-setup.sh new file mode 100755 index 00000000..5d3250f3 --- /dev/null +++ b/modules.d/95hwdb/module-setup.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# This file is part of dracut. +# SPDX-License-Identifier: GPL-2.0-or-later + +check() { + return 255 +} + +# called by dracut +install() { + local hwdb_bin + + # Follow the same priority as `systemd-hwdb`; `/etc` is the default + # and `/usr/lib` an alternative location. + hwdb_bin="${udevconfdir}"/hwdb.bin + + if [[ ! -r ${hwdb_bin} ]]; then + hwdb_bin="${udevdir}"/hwdb.bin + fi + + if [[ $hostonly ]]; then + inst_multiple -H "${hwdb_bin}" + else + inst_multiple "${hwdb_bin}" + fi +} -- 2.42.0