40 lines
1.4 KiB
Bash
Executable File
40 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
run_directory=$(dirname $(readlink -f "$0"))
|
|
|
|
if [ -f $run_directory/.disabled ]; then
|
|
echo "Installation is disabled. Exiting..."
|
|
exit 0
|
|
fi
|
|
|
|
echo "Copying Systemd units to system directory..."
|
|
for f in $run_directory/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 $run_directory/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 mkdir /etc/systemd/system/systemd-cryptsetup@${mount[mapper]}.service.d
|
|
sudo cp $run_directory/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
|