ask questions last
This commit is contained in:
parent
7530325d0a
commit
87da6e0208
|
@ -73,54 +73,6 @@ if [ "root" == $(whoami) ] || [ 0 == $(id -u) ]; then
|
||||||
sudo_cmde=""
|
sudo_cmde=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "${my_email}" ]; then
|
|
||||||
echo ""
|
|
||||||
echo ""
|
|
||||||
echo "Telebit uses Greenlock for free automated ssl through Let's Encrypt."
|
|
||||||
echo ""
|
|
||||||
echo "To accept the Terms of Service for Telebit, Greenlock and Let's Encrypt,"
|
|
||||||
echo "please enter your email."
|
|
||||||
echo ""
|
|
||||||
$read_cmd -p "email: " my_email
|
|
||||||
echo ""
|
|
||||||
# UX - just want a smooth transition
|
|
||||||
sleep 0.25
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "${my_relay}" ]; then
|
|
||||||
echo "What relay will you be using? (press enter for default)"
|
|
||||||
echo ""
|
|
||||||
$read_cmd -p "relay [default: telebit.cloud]: " my_relay
|
|
||||||
echo ""
|
|
||||||
my_relay=${my_relay:-telebit.cloud}
|
|
||||||
# UX - just want a smooth transition
|
|
||||||
sleep 0.25
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$my_relay" ] && [ "$my_relay" != "telebit.cloud" ]; then
|
|
||||||
if [ -z "${my_servernames}" ]; then
|
|
||||||
#echo "What servername(s) will you be relaying here? (press enter for default)"
|
|
||||||
echo "What servername(s) will you be relaying here?"
|
|
||||||
echo ""
|
|
||||||
#$read_cmd -p "domain [default: <random>.telebit.cloud]: " my_servernames
|
|
||||||
$read_cmd -p "domain: " my_servernames
|
|
||||||
echo ""
|
|
||||||
# UX - just want a smooth transition
|
|
||||||
sleep 0.25
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "${my_secret}" ]; then
|
|
||||||
#echo "What's your authorization for the relay server? (press enter for default)"
|
|
||||||
echo "What's your authorization for the relay server?"
|
|
||||||
echo ""
|
|
||||||
#$read_cmd -p "auth [default: new account]: " my_secret
|
|
||||||
$read_cmd -p "secret: " my_secret
|
|
||||||
echo ""
|
|
||||||
# UX - just want a smooth transition
|
|
||||||
sleep 0.25
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
if [ -z "${TELEBIT_PATH:-}" ]; then
|
if [ -z "${TELEBIT_PATH:-}" ]; then
|
||||||
|
@ -245,6 +197,143 @@ else
|
||||||
fi
|
fi
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
# ~/.config/systemd/user/
|
||||||
|
# %h/.config/telebit/telebit.yml
|
||||||
|
echo "### Adding $my_app as a system service"
|
||||||
|
# TODO detect with type -p
|
||||||
|
my_system_launcher=""
|
||||||
|
if [ -d "/Library/LaunchDaemons" ]; then
|
||||||
|
my_system_launcher="launchd"
|
||||||
|
my_app_launchd_service="Library/LaunchDaemons/${my_app_pkg_name}.plist"
|
||||||
|
echo "${sudo_cmde}$rsync_cmd $TELEBIT_PATH/usr/share/dist/$my_app_launchd_service /$my_app_launchd_service"
|
||||||
|
$sudo_cmd $rsync_cmd "$TELEBIT_PATH/usr/share/dist/$my_app_launchd_service" "/$my_app_launchd_service"
|
||||||
|
|
||||||
|
echo "${sudo_cmde}chown root:wheel $my_root/$my_app_launchd_service"
|
||||||
|
$sudo_cmd chown root:wheel "$my_root/$my_app_launchd_service"
|
||||||
|
echo "${sudo_cmde}launchctl unload -w $my_root/$my_app_launchd_service >/dev/null 2>/dev/null"
|
||||||
|
$sudo_cmd launchctl unload -w "$my_root/$my_app_launchd_service" >/dev/null 2>/dev/null
|
||||||
|
echo "${sudo_cmde}launchctl load -w $my_root/$my_app_launchd_service"
|
||||||
|
$sudo_cmd launchctl load -w "$my_root/$my_app_launchd_service"
|
||||||
|
|
||||||
|
elif [ -d "$my_root/etc/systemd/system" ]; then
|
||||||
|
my_system_launcher="systemd"
|
||||||
|
echo "${sudo_cmde}$rsync_cmd $TELEBIT_PATH/usr/share/dist/etc/systemd/system/$my_app.service /etc/systemd/system/$my_app.service"
|
||||||
|
$sudo_cmd $rsync_cmd "$TELEBIT_PATH/usr/share/dist/etc/systemd/system/$my_app.service" "/etc/systemd/system/$my_app.service"
|
||||||
|
|
||||||
|
$sudo_cmd systemctl daemon-reload
|
||||||
|
echo "${sudo_cmde}systemctl enable $my_app"
|
||||||
|
$sudo_cmd systemctl enable $my_app
|
||||||
|
echo "${sudo_cmde}systemctl start $my_app"
|
||||||
|
$sudo_cmd systemctl restart $my_app
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
echo "=============================================="
|
||||||
|
echo " Launcher Configuration "
|
||||||
|
echo "=============================================="
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
my_stopper=""
|
||||||
|
if [ "systemd" == "$my_system_launcher" ]; then
|
||||||
|
|
||||||
|
my_stopper="${sudo_cmde}systemctl stop $my_app"
|
||||||
|
echo "Edit the config and restart, if desired:"
|
||||||
|
echo ""
|
||||||
|
echo " ${sudo_cmde}$my_edit $TELEBIT_PATH/etc/$my_app.yml"
|
||||||
|
echo " ${sudo_cmde}systemctl restart $my_app"
|
||||||
|
echo ""
|
||||||
|
echo "Or disabled the service and start manually:"
|
||||||
|
echo ""
|
||||||
|
echo " ${sudo_cmde}systemctl stop $my_app"
|
||||||
|
echo " ${sudo_cmde}systemctl disable $my_app"
|
||||||
|
echo " $my_app --config $TELEBIT_PATH/etc/$my_app.yml"
|
||||||
|
|
||||||
|
elif [ "launchd" == "$my_system_launcher" ]; then
|
||||||
|
|
||||||
|
my_stopper="${sudo_cmde}launchctl unload $my_root/$my_app_launchd_service"
|
||||||
|
echo "Edit the config and restart, if desired:"
|
||||||
|
echo ""
|
||||||
|
echo " ${sudo_cmde}$my_edit $TELEBIT_PATH/etc/$my_app.yml"
|
||||||
|
echo " ${sudo_cmde}launchctl unload $my_root/$my_app_launchd_service"
|
||||||
|
echo " ${sudo_cmde}launchctl load -w $my_root/$my_app_launchd_service"
|
||||||
|
echo ""
|
||||||
|
echo "Or disabled the service and start manually:"
|
||||||
|
echo ""
|
||||||
|
echo " ${sudo_cmde}launchctl unload -w $my_root/$my_app_launchd_service"
|
||||||
|
echo " $my_app daemon --config $TELEBIT_PATH/etc/$my_app.yml"
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
my_stopper="not started"
|
||||||
|
echo "Edit the config, if desired:"
|
||||||
|
echo ""
|
||||||
|
echo " ${sudo_cmde}$my_edit $my_config"
|
||||||
|
echo ""
|
||||||
|
echo "Run the service manually (we couldn't detect your system service to do that automatically):"
|
||||||
|
echo ""
|
||||||
|
echo " $my_app --config $my_config"
|
||||||
|
|
||||||
|
fi
|
||||||
|
sleep 3
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
echo "==============================================="
|
||||||
|
echo " Service Configuration "
|
||||||
|
echo "==============================================="
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
if [ -z "${my_email}" ]; then
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
echo "Telebit uses Greenlock for free automated ssl through Let's Encrypt."
|
||||||
|
echo ""
|
||||||
|
echo "To accept the Terms of Service for Telebit, Greenlock and Let's Encrypt,"
|
||||||
|
echo "please enter your email."
|
||||||
|
echo ""
|
||||||
|
$read_cmd -p "email: " my_email
|
||||||
|
echo ""
|
||||||
|
# UX - just want a smooth transition
|
||||||
|
sleep 0.25
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${my_relay}" ]; then
|
||||||
|
echo "What relay will you be using? (press enter for default)"
|
||||||
|
echo ""
|
||||||
|
$read_cmd -p "relay [default: telebit.cloud]: " my_relay
|
||||||
|
echo ""
|
||||||
|
my_relay=${my_relay:-telebit.cloud}
|
||||||
|
# UX - just want a smooth transition
|
||||||
|
sleep 0.25
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$my_relay" ] && [ "$my_relay" != "telebit.cloud" ]; then
|
||||||
|
if [ -z "${my_servernames}" ]; then
|
||||||
|
#echo "What servername(s) will you be relaying here? (press enter for default)"
|
||||||
|
echo "What servername(s) will you be relaying here?"
|
||||||
|
echo ""
|
||||||
|
#$read_cmd -p "domain [default: <random>.telebit.cloud]: " my_servernames
|
||||||
|
$read_cmd -p "domain: " my_servernames
|
||||||
|
echo ""
|
||||||
|
# UX - just want a smooth transition
|
||||||
|
sleep 0.25
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${my_secret}" ]; then
|
||||||
|
#echo "What's your authorization for the relay server? (press enter for default)"
|
||||||
|
echo "What's your authorization for the relay server?"
|
||||||
|
echo ""
|
||||||
|
#$read_cmd -p "auth [default: new account]: " my_secret
|
||||||
|
$read_cmd -p "secret: " my_secret
|
||||||
|
echo ""
|
||||||
|
# UX - just want a smooth transition
|
||||||
|
sleep 0.25
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# TODO don't create this in TMP_PATH if it exists in TELEBIT_PATH
|
# TODO don't create this in TMP_PATH if it exists in TELEBIT_PATH
|
||||||
my_config="$TELEBIT_PATH/etc/$my_app.yml"
|
my_config="$TELEBIT_PATH/etc/$my_app.yml"
|
||||||
mkdir -p "$(dirname $my_config)"
|
mkdir -p "$(dirname $my_config)"
|
||||||
|
@ -318,37 +407,25 @@ fi
|
||||||
echo "${sudo_cmde}chown -R $my_user '$TELEBIT_PATH' # '/etc/$my_app'"
|
echo "${sudo_cmde}chown -R $my_user '$TELEBIT_PATH' # '/etc/$my_app'"
|
||||||
$sudo_cmd chown -R $my_user "$TELEBIT_PATH" # "/etc/$my_app"
|
$sudo_cmd chown -R $my_user "$TELEBIT_PATH" # "/etc/$my_app"
|
||||||
|
|
||||||
# ~/.config/systemd/user/
|
|
||||||
# %h/.config/telebit/telebit.yml
|
|
||||||
echo "### Adding $my_app as a system service"
|
|
||||||
# TODO detect with type -p
|
|
||||||
my_system_launcher=""
|
|
||||||
if [ -d "/Library/LaunchDaemons" ]; then
|
|
||||||
my_system_launcher="launchd"
|
|
||||||
my_app_launchd_service="Library/LaunchDaemons/${my_app_pkg_name}.plist"
|
|
||||||
echo "${sudo_cmde}$rsync_cmd $TELEBIT_PATH/usr/share/dist/$my_app_launchd_service /$my_app_launchd_service"
|
|
||||||
$sudo_cmd $rsync_cmd "$TELEBIT_PATH/usr/share/dist/$my_app_launchd_service" "/$my_app_launchd_service"
|
|
||||||
|
|
||||||
echo "${sudo_cmde}chown root:wheel $my_root/$my_app_launchd_service"
|
|
||||||
$sudo_cmd chown root:wheel "$my_root/$my_app_launchd_service"
|
|
||||||
echo "${sudo_cmde}launchctl unload -w $my_root/$my_app_launchd_service >/dev/null 2>/dev/null"
|
|
||||||
$sudo_cmd launchctl unload -w "$my_root/$my_app_launchd_service" >/dev/null 2>/dev/null
|
|
||||||
echo "${sudo_cmde}launchctl load -w $my_root/$my_app_launchd_service"
|
|
||||||
$sudo_cmd launchctl load -w "$my_root/$my_app_launchd_service"
|
|
||||||
|
|
||||||
elif [ -d "$my_root/etc/systemd/system" ]; then
|
# TODO run 'telebit status'
|
||||||
my_system_launcher="systemd"
|
if [ "telebit.cloud" == $my_relay ]; then
|
||||||
echo "${sudo_cmde}$rsync_cmd $TELEBIT_PATH/usr/share/dist/etc/systemd/system/$my_app.service /etc/systemd/system/$my_app.service"
|
echo ""
|
||||||
$sudo_cmd $rsync_cmd "$TELEBIT_PATH/usr/share/dist/etc/systemd/system/$my_app.service" "/etc/systemd/system/$my_app.service"
|
echo ""
|
||||||
|
echo "=============================================="
|
||||||
$sudo_cmd systemctl daemon-reload
|
echo " Hey, Listen! "
|
||||||
echo "${sudo_cmde}systemctl enable $my_app"
|
echo "=============================================="
|
||||||
$sudo_cmd systemctl enable $my_app
|
echo ""
|
||||||
echo "${sudo_cmde}systemctl start $my_app"
|
echo "GO CHECK YOUR EMAIL"
|
||||||
$sudo_cmd systemctl restart $my_app
|
echo ""
|
||||||
|
echo "You MUST verify your email address to activate this device."
|
||||||
|
echo "(if the activation link expires, just run 'telebit restart' and check your email again)"
|
||||||
|
echo ""
|
||||||
|
$read_cmd -p "hit [enter] once you've clicked the verification" my_ignore
|
||||||
|
sleep 30
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sleep 2
|
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
|
@ -371,71 +448,5 @@ echo "Please edit the config file to meet your needs before starting."
|
||||||
echo ""
|
echo ""
|
||||||
sleep 3
|
sleep 3
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo ""
|
|
||||||
echo "=============================================="
|
|
||||||
echo " Launcher Configuration "
|
|
||||||
echo "=============================================="
|
|
||||||
echo ""
|
|
||||||
echo "You MUST verify your email address to activate this device for your account"
|
|
||||||
|
|
||||||
my_stopper=""
|
|
||||||
if [ "systemd" == "$my_system_launcher" ]; then
|
|
||||||
|
|
||||||
my_stopper="${sudo_cmde}systemctl stop $my_app"
|
|
||||||
echo "Edit the config and restart, if desired:"
|
|
||||||
echo ""
|
|
||||||
echo " ${sudo_cmde}$my_edit $TELEBIT_PATH/etc/$my_app.yml"
|
|
||||||
echo " ${sudo_cmde}systemctl restart $my_app"
|
|
||||||
echo ""
|
|
||||||
echo "Or disabled the service and start manually:"
|
|
||||||
echo ""
|
|
||||||
echo " ${sudo_cmde}systemctl stop $my_app"
|
|
||||||
echo " ${sudo_cmde}systemctl disable $my_app"
|
|
||||||
echo " $my_app --config $TELEBIT_PATH/etc/$my_app.yml"
|
|
||||||
|
|
||||||
elif [ "launchd" == "$my_system_launcher" ]; then
|
|
||||||
|
|
||||||
my_stopper="${sudo_cmde}launchctl unload $my_root/$my_app_launchd_service"
|
|
||||||
echo "Edit the config and restart, if desired:"
|
|
||||||
echo ""
|
|
||||||
echo " ${sudo_cmde}$my_edit $TELEBIT_PATH/etc/$my_app.yml"
|
|
||||||
echo " ${sudo_cmde}launchctl unload $my_root/$my_app_launchd_service"
|
|
||||||
echo " ${sudo_cmde}launchctl load -w $my_root/$my_app_launchd_service"
|
|
||||||
echo ""
|
|
||||||
echo "Or disabled the service and start manually:"
|
|
||||||
echo ""
|
|
||||||
echo " ${sudo_cmde}launchctl unload -w $my_root/$my_app_launchd_service"
|
|
||||||
echo " $my_app daemon --config $TELEBIT_PATH/etc/$my_app.yml"
|
|
||||||
|
|
||||||
else
|
|
||||||
|
|
||||||
my_stopper="not started"
|
|
||||||
echo "Edit the config, if desired:"
|
|
||||||
echo ""
|
|
||||||
echo " ${sudo_cmde}$my_edit $my_config"
|
|
||||||
echo ""
|
|
||||||
echo "Run the service manually (we couldn't detect your system service to do that automatically):"
|
|
||||||
echo ""
|
|
||||||
echo " $my_app --config $my_config"
|
|
||||||
|
|
||||||
fi
|
|
||||||
sleep 3
|
|
||||||
|
|
||||||
# TODO run 'telebit status'
|
|
||||||
if [ "telebit.cloud" == $my_relay ]; then
|
|
||||||
echo ""
|
|
||||||
echo ""
|
|
||||||
echo "=============================================="
|
|
||||||
echo " Hey, Listen! "
|
|
||||||
echo "=============================================="
|
|
||||||
echo ""
|
|
||||||
echo "GO CHECK YOUR EMAIL"
|
|
||||||
echo ""
|
|
||||||
echo "You MUST verify your email address to activate this device."
|
|
||||||
echo "(if the activation link expires, just run 'telebit restart' and check your email again)"
|
|
||||||
echo ""
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|
Loading…
Reference in New Issue