mirror of
https://gitlab.archlinux.org/tpowa/archboot.git
synced 2024-09-20 12:00:37 +02:00
47 lines
1.5 KiB
Bash
47 lines
1.5 KiB
Bash
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
# created by Tobias Powalowski <tpowa@archlinux.org>
|
|
|
|
build() {
|
|
map add_module sd_mod? sr_mod? usb_storage? mmc_block? virtio_blk? vfat btrfs
|
|
# pata, sata, scsi, nvme
|
|
for filter in 'scsi/.*ata' '/(block|scsi|fusion|nvme)/' 'ata/[ps]ata_' \
|
|
'ata/(ahci|pdc_adma|ata_piix|ata_generic)'; do
|
|
add_checked_modules "$filter"
|
|
done
|
|
# usb
|
|
add_checked_modules -f '(_cs|sl811_hcd|isp116x_hcd)' '/usb/host'
|
|
add_checked_modules '/drivers/usb/storage/'
|
|
# mmc
|
|
add_checked_modules '/(drivers/mmc|tifm_)'
|
|
# spi (mmc in spi mode)
|
|
add_checked_modules '/drivers/spi/'
|
|
# virtio
|
|
add_checked_modules 'virtio'
|
|
add_binary /usr/lib/initcpio/busybox /bin/busybox
|
|
for applet in $(/usr/lib/initcpio/busybox --list); do
|
|
add_symlink "/usr/bin/$applet" busybox
|
|
done
|
|
# add kmod with applet symlinks
|
|
add_binary kmod
|
|
for applet in {dep,ins,rm,ls}mod mod{probe,info}; do
|
|
add_symlink "/usr/bin/$applet" kmod
|
|
done
|
|
map add_binary blkid mount switch_root bsdcpio mkfs.btrfs \
|
|
/usr/lib/systemd/systemd-udevd udevadm systemd-tmpfiles
|
|
|
|
map add_udev_rule '50-udev-default.rules' '60-persistent-storage.rules' \
|
|
'64-btrfs.rules' '80-drivers.rules'
|
|
|
|
map add_file '/usr/lib/udev/ata_id' '/usr/lib/udev/scsi_id'
|
|
add_dir /mnt
|
|
add_file "/usr/share/archboot/base/init" "/init"
|
|
}
|
|
|
|
help() {
|
|
cat <<HELPEOF
|
|
Inital setup for archboot ISO booting.
|
|
HELPEOF
|
|
}
|
|
|
|
# vim: set ft=sh ts=4 sw=4 et:
|