crypt-mounts/install.sh

32 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
echo "Copying Systemd units to system directory..."
for f in $(dirname "$0")/mounts.conf.d/*.conf; do
if [ ! -e "$f" ]; then
continue
fi
source $f
mountfile=$(echo ${mount[target]} | sed -e "s:/:-:g")
mountfile=${mountfile:1}.mount
sudo cp $(dirname "$0")/template.mount /etc/systemd/system/$mountfile
sudo sed -i -e "s/PH_MAPPER/${mount[mapper]}/g" /etc/systemd/system/$mountfile
sudo sed -i -e "s:PH_TARGET:${mount[target]}:g" /etc/systemd/system/$mountfile
if [ "${mount[friendly]}" != '' ]; then
sudo sed -i -e "s/PH_FRIENDLY/${mount[friendly]}/g" /etc/systemd/system/$mountfile
else
sudo sed -i -e "s/PH_FRIENDLY/${mount[mapper]}/g" /etc/systemd/system/$mountfile
fi
if [ ${mount[autolock]} -eq 1 ]; then
sudo cp $(dirname "$0")/close-vault.conf.template \
/etc/systemd/system/systemd-cryptsetup@${mount[mapper]}.service.d/close-vault.conf
sudo sed -i -e "s/PH_MOUNTFILE/$mountfile/g" \
/etc/systemd/system/systemd-cryptsetup@${mount[mapper]}.service.d/close-vault.conf
fi
done
echo "Reloading Systemd..."
sudo systemctl daemon-reload
echo "Finished install. Exiting..."
exit 0