2023-04-26 07:19:41 +02:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
# Created by Tobias Powalowski <tpowa@archlinux.org>
|
|
|
|
|
|
|
|
build ()
|
|
|
|
{
|
2023-04-26 21:46:21 +02:00
|
|
|
### add pcspkr
|
|
|
|
add_module "pcspkr"
|
2023-04-26 07:30:41 +02:00
|
|
|
### add init modules
|
2023-05-01 22:01:55 +02:00
|
|
|
map add_module zram? btrfs? zstd? libcrc32c?
|
2023-04-26 07:19:41 +02:00
|
|
|
### keyboard modules
|
2023-05-02 14:44:06 +02:00
|
|
|
add_all_modules -f '_cs|ssb-hcd' '/usb/host'
|
2023-05-05 21:17:45 +02:00
|
|
|
add_all_modules '/hid/hid-(alps|apple|asus|belkin|cherry|chicony|corsair|elan|hyperv|kensignton|lenovo|logitech|magicmouse|microsoft|razer|redragon|roccat|samsung|sony|speedlink|steelseries)'
|
2023-04-26 07:19:41 +02:00
|
|
|
add_module 'usbhid'
|
2023-05-05 21:29:35 +02:00
|
|
|
add_all_modules -f 'parkbd' '/input/serio|keyboard/(applespi|atkbd)'
|
2023-05-02 10:43:36 +02:00
|
|
|
add_all_modules -f '9pnet|bluetooth|fs' 'virtio'
|
2023-05-07 21:40:35 +02:00
|
|
|
# add firmware files and licenses
|
|
|
|
map add_full_dir "/lib/firmware/amdgpu" "/lib/firmware/i915" "/lib/firmware/nvidia" \
|
|
|
|
"/lib/firmware/radeon" "/usr/share/licenses/linux-firmware"
|
2023-04-26 07:19:41 +02:00
|
|
|
### kmx modules
|
|
|
|
# AGP and DRM modules for GPUs
|
|
|
|
map add_all_modules '/drivers/char/agp/' '/drivers/gpu/drm/'
|
|
|
|
# modules that implement the privacy screen interface
|
|
|
|
# TODO: Replace with dynamic lookup of modules that depend on the drm_privacy_screen_register symbol
|
|
|
|
# See https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio/-/issues/132
|
|
|
|
map add_all_modules 'chromeos_privacy_screen?' 'thinkpad_acpi?'
|
|
|
|
}
|
|
|
|
|
|
|
|
help ()
|
|
|
|
{
|
|
|
|
cat <<HELPEOF
|
2023-05-07 21:40:35 +02:00
|
|
|
This hook includes init, keyboard, kms and pcspkr support
|
2023-04-26 07:19:41 +02:00
|
|
|
for an archboot image.
|
|
|
|
DO NOT remove this one unless you know what you're doing.
|
|
|
|
HELPEOF
|
|
|
|
}
|
|
|
|
# vim: set ft=sh ts=4 sw=4 et:
|