wlsunset: Fix pass through time variables to service
Passing them through as individual arguments on the commandline. Previously quoting would pass them through as a single argument, making it not work correctly. Could switch to using bash arrays for this (to make it more robust against word-splitting) but a) I prefer the portability of sh for such a simple script and b) there _should_ never be a time when we pass through anything that has weird word-splitting issues. Either the location is passed through or the times.
This commit is contained in:
parent
19577a7c83
commit
96757895dc
1 changed files with 4 additions and 4 deletions
|
@ -1,16 +1,16 @@
|
||||||
#!/bin/sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
[ -r ./conf ] && . ./conf
|
[ -r ./conf ] && . ./conf
|
||||||
|
|
||||||
TIME_OPTS='-S \"09:00\" -s \"21:00\" -d \"3600\"'
|
TIME_OPTS="-S 08:00 -s 21:00 -d 3600"
|
||||||
if command -v curl >/dev/null 2>&1; then
|
if command -v curl >/dev/null 2>&1; then
|
||||||
loc=$(curl -s ipinfo.io | grep -e '"loc": ' | sed -e 's/^.*"loc": "\(.*\)",$/\1/')
|
loc=$(curl -s ipinfo.io | grep -e '"loc": ' | sed -e 's/^.*"loc": "\(.*\)",$/\1/')
|
||||||
if [ -n "$loc" ]; then
|
if [ -n "$loc" ]; then
|
||||||
lat="$(echo "$loc" | cut -d, -f1)"
|
lat="$(echo "$loc" | cut -d, -f1)"
|
||||||
long="$(echo "$loc" | cut -d, -f2)"
|
long="$(echo "$loc" | cut -d, -f2)"
|
||||||
TIME_OPTS="-l \"$lat\" -L \"$long\""
|
TIME_OPTS="-l $lat -L $long"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exec 2>&1
|
exec 2>&1
|
||||||
exec chpst -e "$TURNSTILE_ENV_DIR" wlsunset $TIME_OPTS "$@"
|
exec chpst -e "$TURNSTILE_ENV_DIR" wlsunset ${TIME_OPTS} "$@"
|
||||||
|
|
Loading…
Reference in a new issue