Codebase list matrix-synapse / f1760e4
Properly escape variables in scripts Andrej Shadura 3 years ago
3 changed file(s) with 35 addition(s) and 27 deletion(s). Raw diff Collapse all Expand all
6464 $PYTHON -m "synapse.app.homeserver" $CONFIGS --generate-keys || return 2
6565 fi
6666 # Make sure the key file is owned by the user running synapse
67 chown $USER:nogroup $KEYFILE
68 chmod 0600 $KEYFILE
67 chown $USER:nogroup "$KEYFILE"
68 chmod 0600 "$KEYFILE"
6969
7070 # Return
7171 # 0 if daemon has been started
7373 # 2 if daemon could not be started
7474 PIDFILE=$(get_config_key pid_file)
7575 RETVAL=$?
76 if [ "$RETVAL" != 0 ]; then
76 if [ "$RETVAL" != 0 ]
77 then
7778 return $RETVAL
7879 fi
79 if [ -r "$PIDFILE" ]; then
80 kill -0 $(cat $PIDFILE) 2>/dev/null && return 1
80 if [ -r "$PIDFILE" ]
81 then
82 kill -0 $(cat "$PIDFILE") 2>/dev/null && return 1
8183 fi
8284
8385 export PYTHONPATH
8486
8587 # Create the PID file so that synapse can write to it as nonroot
86 touch $PIDFILE
87 chown $USER:nogroup $PIDFILE
88 chown $USER:nogroup $SHAREDIR/media/
88 touch "$PIDFILE"
89 chown $USER:nogroup "$PIDFILE"
90 chown $USER:nogroup "$SHAREDIR/media/"
8991 mkdir -p "$SHAREDIR/uploads"
90 chown $USER:nogroup $SHAREDIR/uploads/
91
92 start-stop-daemon --start --background --make-pidfile --pidfile $PIDFILE --chuid $USER \
92 chown $USER:nogroup "$SHAREDIR/uploads/"
93
94 start-stop-daemon --start --background --make-pidfile --pidfile "$PIDFILE" --chuid "$USER" \
9395 --exec $PYTHON -- -m "synapse.app.homeserver" $CONFIGS || return 2
9496
9597 return 0
107109 # other if a failure occurred
108110 PIDFILE=$(get_config_key pid_file)
109111 RETVAL=$?
110 if [ "$RETVAL" != 0 ]; then
112 if [ "$RETVAL" != 0 ]
113 then
111114 return $RETVAL
112115 fi
113116
114 start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --user $USER
117 start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$PIDFILE" --user "$USER"
115118 RETVAL="$?"
116119 [ "$RETVAL" = 2 ] && return 2
117120
118121 # Many daemons don't delete their pidfiles when they exit.
119 rm -f $PIDFILE
122 rm -f "$PIDFILE"
120123 return "$RETVAL"
121124 }
122125
1010 case "$1" in
1111 configure|reconfigure)
1212 # Set server name in config file
13 mkdir -p "/etc/matrix-synapse/conf.d/"
13 mkdir -p /etc/matrix-synapse/conf.d
1414 db_get matrix-synapse/server-name
1515
16 if [ "$RET" ]; then
17 echo "server_name: $RET" > $CONFIGFILE_SERVERNAME
16 if [ "$RET" ]
17 then
18 echo "server_name: $RET" > "$CONFIGFILE_SERVERNAME"
1819 fi
1920
2021 db_get matrix-synapse/report-stats
21 if [ "$RET" ]; then
22 echo "report_stats: $RET" > $CONFIGFILE_REPORTSTATS
22 if [ "$RET" ]
23 then
24 echo "report_stats: $RET" > "$CONFIGFILE_REPORTSTATS"
2325 fi
2426
25 if ! getent passwd $USER >/dev/null; then
26 adduser --quiet --system --no-create-home --home /var/lib/matrix-synapse $USER
27 if ! getent passwd "$USER" >/dev/null
28 then
29 adduser --quiet --system --no-create-home --home /var/lib/matrix-synapse "$USER"
2730 fi
2831
29 for DIR in /var/lib/matrix-synapse /var/log/matrix-synapse /etc/matrix-synapse; do
30 if ! dpkg-statoverride --list --quiet $DIR >/dev/null; then
31 dpkg-statoverride --force-all --quiet --update --add $USER nogroup 0755 $DIR
32 for DIR in /var/lib/matrix-synapse /var/log/matrix-synapse /etc/matrix-synapse
33 do
34 if ! dpkg-statoverride --list --quiet "$DIR" >/dev/null
35 then
36 dpkg-statoverride --force-all --quiet --update --add "$USER" nogroup 0755 "$DIR"
3237 fi
3338 done
3439
77
88 if [ "$1" = "purge" ]
99 then
10 rm -f $CONFIGFILE_SERVERNAME $CONFIGFILE_REPORTSTATS
11 if [ -d $CONFIG_DIR ]
10 rm -f "$CONFIGFILE_SERVERNAME" "$CONFIGFILE_REPORTSTATS"
11 if [ -d "$CONFIG_DIR" ]
1212 then
13 rmdir --ignore-fail-on-non-empty $CONFIG_DIR
13 rmdir --ignore-fail-on-non-empty "$CONFIG_DIR"
1414 fi
1515
1616 for DIR in /var/lib/matrix-synapse /var/log/matrix-synapse /etc/matrix-synapse; do