diff --git a/dyfi-openrc.sh b/dyfi-openrc.sh new file mode 100755 index 0000000..c768f82 --- /dev/null +++ b/dyfi-openrc.sh @@ -0,0 +1,14 @@ +#!/sbin/openrc-run + +log_file="/opt/dyfi/log" + +command="/opt/dyfi/run.sh" +command_args="--log ${log_file} --auth /opt/dyfi/auth" +command_background=true +pidfile="/run/${RC_SVCNAME}.pid" + +extra_commands="log" + +log() { + cat "$log_file" +} diff --git a/dyfi.py b/dyfi.py old mode 100644 new mode 100755 diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..b2866dd --- /dev/null +++ b/install.sh @@ -0,0 +1,32 @@ +#!/bin/env sh + +dyfi_dir=$(dirname "$(realpath "$0")") +install_dir='/opt/dyfi/' + + +sudo -- sh -c "\ + alias 'cp'='cp --verbose'; \ + alias 'mkdir'='mkdir --verbose'; \ + + cd "$dyfi_dir"; \ + + mkdir -p /opt/dyfi; \ + cp ./auth "$install_dir"; \ + cp ./dyfi.py "$install_dir"; \ + cp ./run.sh "$install_dir"; \ + cp ./requirements.txt "$install_dir"; \ + cp ./dyfi-openrc.sh /etc/init.d/dyfi; \ + + cd "$install_dir"; \ + + python -m venv ./venv; \ + source ./venv/bin/activate; \ + python -m ensurepip; \ + pip install --upgrade pip; \ + pip install -r ./requirements.txt; \ +" + + +if [ $? != 0 ]; then + ./uninstall.sh +fi diff --git a/run.sh b/run.sh new file mode 100755 index 0000000..6fd9c4b --- /dev/null +++ b/run.sh @@ -0,0 +1,10 @@ +#!/bin/env sh + +path=$(dirname "$(realpath "$0")") + +cd $path + +source ./venv/bin/activate + +python ./dyfi.py $@ + diff --git a/uninstall.sh b/uninstall.sh new file mode 100755 index 0000000..8d019a2 --- /dev/null +++ b/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/env sh + +install_dir=/opt/dyfi/ + +sudo -- sh -c "\ + alias 'rm'='rm --verbose --preserve-root'; \ + + rm -rf ${install_dir}; \ + rm -f /etc/init.d/dyfi; \ +"