#!/usr/bin/env bash # SPDX-License-Identifier: GPL-2.0-only # Created by Tobias Powalowski build () { ### add block device support # pata, sata, scsi, nvme map add_all_modules 'scsi/.*ata' \ 'ata/(ahci|pdc_adma|ata_piix|ata_generic)' add_all_modules -f 'pcmcia|scsi/imm|scsi/ppa|rdma|fabrics|rnbd' '/(block|scsi|fusion|nvme)/' add_all_modules -f 'parport' 'ata/sata_' # usb add_all_modules -f '(_cs|sl811_hcd|isp116x_hcd)' '/usb/host' add_all_modules '/drivers/usb/storage/' # mmc add_all_modules -f '_cs' '/(drivers/mmc|tifm_)' # spi (mmc in spi mode) add_all_modules -f 'butterfly|lm70llp' '/drivers/spi/' # nvdimm add_all_modules '/drivers/nvdimm/' # Intel Volume Management Device add_all_modules 'vmd' map add_binary head id cksum tail test uptime w who whoami xargs \ swapon uniq seq fdisk sfdisk cfdisk parted free less \ chgrp chown dialog dmesg egrep fgrep stty sync hdparm \ dirname chroot expr bzip2 su sdparm tput bsdcpio \ losetup mkfifo mknod readlink lzmadec lzop xz last wall mesg utmpdump \ xzdec switch_root pivot_root chcpu ctrlaltdel gdisk sgdisk cgdisk fixparts findmnt \ lsfd lsblk swaplabel cal chrt col colcrt colrm column fallocate flock getopt \ ionice ipcmk ipcrm ipcs swapoff look lscpu mcookie namei prlimit rename \ renice rev script scriptreplay setarch setsid setterm taskset ul unshare \ uuidgen whereis write addpart delpart ldattach partx readprofile rtcwake uuidd \ sysctl pkill pmap pwdx slabtop tload vmstat watch eject keyctl request-key \ tac sulogin resizepart lslocks wdctl zless zgrep fold hexdump ldd \ shred blockdev blkdiscard newgrp nsenter runuser vigr vipw diff depmod \ linux32 linux64 lsmod lzcat lzcmp lzdiff lzegrep lzfgrep lzgrep lzegrep \ lzless lzmore lzma modinfo reset unlzma unxz xzcat lastb \ blkzone chmem choom fincore hardlink irqtop lsipc lsirq lslogins lsmem lsns mkfs \ scriptlive setpriv uclampset uname26 uuidparse zramctl [ b2sum base32 base64 \ basenc chcon comm csplit dircolors expand factor fmt hostid join link \ logname md5sum nice nl nohup nproc numfmt paste pathchk pinky pr printenv ptx realpath \ runcon sha1sum sha224sum sha256sum sha384sum sha512sum shuf split stdbuf sum timeout truncate \ tsort unexpand unlink users vdir pwait fuser prtstat pslog pstree newgidmap newuidmap \ lzmainfo xzcmp xzgrep xzegrep xzfgrep gzexe uncompress zcmp zdiff zegrep zfgrep zforce zmore znew \ bunzip2 bzcat bzdiff bzgrep bzip2recover bzmore chacl getfacl setfacl attr getfattr \ setfattr pzstd unzstd zstdcat zstdgrep zstdless zstdmt lz4 lz4c lz4cat unlz4 gunzip zcat wipe \ capsh getcap getpcaps setcap file [[ "$(uname -m)" == "x86_64" ]] && map add_binary i386 x86_64 peekfd [[ "$(uname -m)" == "aarch64" ]] && add_binary peekfd ### add C.UTF-8 locale add_dir /usr/lib/locale add_full_dir /usr/lib/locale/C.UTF-8 ### add custom locale [[ -e "/usr/lib/locale/locale-archive" ]] && add_file "/usr/lib/locale/locale-archive" ### add shadow map add_binary groups chage chfn chsh expiry faillog gpasswd lastlog \ chgpasswd chpasswd groupadd groupdel groupmems groupmod grpck grpconv grpunconv \ newusers pwck pwconv pwunconv useradd userdel usermod sg getsubids ### fix licenses map add_file "/usr/share/licenses/file/COPYING" "/usr/share/licenses/bzip2/LICENSE" \ "/usr/share/licenses/hdparm/LICENSE.TXT" "/usr/share/licenses/ncurses/COPYING" \ "/usr/share/licenses/sdparm/LICENSE" "/usr/share/licenses/zlib/LICENSE" } help () { cat <