archboot/usr/lib/initcpio/install/archboot_init

55 lines
2.6 KiB
Text
Raw Normal View History

2023-02-09 11:58:17 +01:00
#!/usr/bin/env bash
# SPDX-License-Identifier: GPL-2.0-only
# created by Tobias Powalowski <tpowa@archlinux.org>
build() {
2023-04-26 07:30:41 +02:00
### block and filesystem modules
map add_module vfat? iso9660? nls_cp437? nls_ascii? cdrom?
2023-04-26 07:30:41 +02:00
### pata, sata, scsi, nvme, usb, mmc, spi (for mmc mode), virtio
2023-05-01 19:06:18 +02:00
map add_all_modules 'scsi/.*ata' \
2023-05-01 18:09:37 +02:00
'ata/(ahci|pdc_adma|ata_piix|ata_generic)' '(_cs|sl811_hcd|isp116x_hcd)' \
2023-05-01 20:00:23 +02:00
'/usb/host' '/drivers/usb/storage/'
add_all_modules -f 'butterfly|lm70llp' '/drivers/spi/'
add_all_modules -f 'pcmcia|scsi/imm|scsi/ppa|rdma|fabrics|rnbd' '/(block|scsi|fusion|nvme)/'
2023-05-01 19:27:41 +02:00
add_all_modules -f '_cs' '/(drivers/mmc|tifm_)'
2023-05-01 19:08:39 +02:00
add_all_modules -f 'parport|pata_pcmcia' 'ata/[ps]ata_'
add_all_modules -f '9pnet||bluetooth|sound' 'virtio'
2023-02-13 11:22:21 +01:00
map add_binary bash sh blkid mount switch_root bsdcpio mkfs.btrfs setfont \
2023-02-12 16:04:19 +01:00
/usr/lib/systemd/systemd-udevd udevadm systemd-tmpfiles kmod insmod modprobe \
2023-02-14 20:29:32 +01:00
gzip uname cat cp dmesg grep ln ls mv rm umount lsblk rmmod cut sed find
add_file "/usr/share/kbd/consolefonts/ter-v16n.psf.gz" "/consolefont-16.psf.gz"
add_file "/usr/share/kbd/consolefonts/ter-v32n.psf.gz" "/consolefont-32.psf.gz"
rules_d=/usr/lib/udev/rules.d
map add_file ${rules_d}/50-udev-default.rules ${rules_d}/60-persistent-storage.rules \
${rules_d}/64-btrfs.rules ${rules_d}/80-drivers.rules /usr/lib/udev/ata_id \
/usr/lib/udev/scsi_id
2023-02-09 11:58:17 +01:00
add_file "/usr/share/archboot/base/init" "/init"
map add_dir /mnt /cdrom /sysroot
2023-02-13 08:31:00 +01:00
map add_file /etc/bash.bash_logout /etc/bash.bashrc /etc/profile /etc/shells
# add default bash setup
for i in .bashrc .bash_profile .bash_logout; do
add_file "/etc/skel/${i}" "/root/${i}"
done
2023-02-13 06:55:17 +01:00
# add custom bash options
2023-04-17 14:52:21 +02:00
echo ". /root/.bashrc" >> "${BUILDROOT}/etc/bash.bashrc"
echo ". /etc/profile.d/custom-bash-options.sh" >> "${BUILDROOT}/root/.bashrc"
echo "alias reboot='echo b >/proc/sysrq-trigger'" >> "${BUILDROOT}/root/.bashrc"
echo "alias poweroff='echo o >/proc/sysrq-trigger'" >> "${BUILDROOT}/root/.bashrc"
echo "root:x:0:root" > "${BUILDROOT}/etc/group"
echo "root:x:0:0:/root:/bin/bash" > "${BUILDROOT}/etc/passwd"
2023-02-13 06:55:17 +01:00
add_file "/usr/share/archboot/base/etc/profile.d/custom-bash-options.sh" \
"/etc/profile.d/custom-bash-options.sh"
2023-02-13 10:56:49 +01:00
basic_config="os-release modprobe.d/modprobe.conf"
2023-02-13 06:55:17 +01:00
for i in $basic_config; do
add_file "/usr/share/archboot/base/etc/${i}" "/etc/${i}"
done
2023-02-09 11:58:17 +01:00
}
help() {
cat <<HELPEOF
Inital setup for archboot ISO booting.
HELPEOF
}
# vim: set ft=sh ts=4 sw=4 et: