fix_owner_perms() { chmod 440 /etc/homegear/rpcclients.conf chown homegear:homegear /etc/homegear/rpcclients.conf mkdir -p /var/run/homegear chown homegear:homegear /var/run/homegear chmod 750 /var/run/homegear mkdir -p /var/lib/homegear chown homegear:homegear /var/lib/homegear chmod 750 /var/lib/homegear mkdir -p /var/log/homegear chown homegear:homegear /var/log/homegear chmod 750 /var/log/homegear chown -R homegear:homegear /var/lib/homegear/scripts chmod -R 550 /var/lib/homegear/scripts chmod -R 550 /var/lib/homegear/firmware chown -R homegear:homegear /var/lib/homegear/modules chmod -R 550 /var/lib/homegear/modules find /var/lib/homegear/www -type d -exec chmod 550 {} \; find /var/lib/homegear/www -type f -exec chmod 440 {} \; } post_install() { result=`id -u homegear 2>/dev/null` if [ "0$result" -eq "0" ]; then useradd --system --shell /bin/false homegear >/dev/null 2>&1 [ $? -ne 0 ] && exit 1 usermod -a -G dialout homegear 2>/dev/null usermod -a -G gpio homegear 2>/dev/null usermod -a -G spi homegear 2>/dev/null fi if test ! -e /var/lib/homegear/scripts; then rm -Rf /tmp/HomegearScriptsDir [ $? -ne 0 ] && exit 1 mkdir /tmp/HomegearScriptsDir [ $? -ne 0 ] && exit 1 wget -P /tmp/HomegearScriptsDir/ http://homegear.eu/downloads/Homegear_PHP_XMLRPC_Client.zip [ $? -ne 0 ] && exit 1 unzip -d /tmp/HomegearScriptsDir /tmp/HomegearScriptsDir/Homegear_PHP_XMLRPC_Client.zip [ $? -ne 0 ] && exit 1 rm /tmp/HomegearScriptsDir/Homegear_PHP_XMLRPC_Client.zip mkdir /var/lib/homegear/scripts [ $? -ne 0 ] && exit 1 mv /tmp/HomegearScriptsDir/* /var/lib/homegear/scripts [ $? -ne 0 ] && exit 1 chown -R homegear:homegear /var/lib/homegear/scripts chmod -R 550 /var/lib/homegear/scripts rm -Rf /tmp/HomegearScriptsDir fi pip2 install python-lzo if test ! -e /etc/homegear/devices/0/rf_s.xml; then echo "Downloading device description files..." /var/lib/homegear/GetDeviceFiles.sh fi echo "Downloading current firmware updates..." /var/lib/homegear/firmware/GetFirmwareUpdates.sh [ $? -ne 0 ] && exit 1 if test ! -e /etc/homegear/homegear.crt; then openssl genrsa -out /etc/homegear/homegear.key 2048 openssl req -batch -new -key /etc/homegear/homegear.key -out /etc/homegear/homegear.csr openssl x509 -req -in /etc/homegear/homegear.csr -signkey /etc/homegear/homegear.key -out /etc/homegear/homegear.crt rm /etc/homegear/homegear.csr chown homegear:homegear /etc/homegear/homegear.key chmod 400 /etc/homegear/homegear.key openssl dhparam -check -text -5 1024 -out /etc/homegear/dh1024.pem chown homegear:homegear /etc/homegear/dh1024.pem chmod 400 /etc/homegear/dh1024.pem fi fix_owner_perms } post_upgrade() { fix_owner_perms } post_remove() { if test -e /etc/homegear; then chown -R root:root /etc/homegear fi if test -e /var/lib/homegear; then chown -R root:root /var/lib/homegear fi userdel homegear > /dev/null 2>&1 }