#!/usr/bin/bash check() { return 0 } depends() { echo "systemd plymouth" return 0 } install() { # Interactive script inst_simple "$moddir/scripts/reliant-initramfs.sh" "/usr/local/share/scripts/reliant-initramfs.sh" # Main service inst_simple "$moddir/reliant.service" "/etc/systemd/system/reliant.service" systemctl --root="$initdir" enable reliant.service # Shufflecake inst_binary /usr/local/sbin/shufflecake # Patched create-snapshot script necessary for the system to function inst_simple "$moddir/patches/create-snapshot.sh" "/usr/local/share/scripts/create-snapshot.sh" # Early hook to set all block devices readonly before they're mounted inst_hook cmdline 01 "$moddir/scripts/readonly.sh" # TODO: Do we need udev rules to --setro newly attached devices? # Reliant for file in "/usr/local/share/scripts/reliant-*" "/usr/local/sbin/reliant-*" "/usr/local/bin/surgeon-*"; do inst_binary "$file" done inst_simple "/etc/reliant.conf" # Other binaries inst_multiple dmesg lsblk blockdev mount dd wc sed sleep md5sum find modprobe cut grep mkdir rm tail return 0 } installkernel() { # Shufflecake kernel module hostonly='' instmods -c dm-sflc return 0 }