#!/usr/bin/with-contenv bash # make folders mkdir -p \ /config/{comskip,openvpn} # copy config [[ ! -e /config/dvr/config ]] && \ (mkdir -p /config/dvr/config && cp /defaults/7a5edfbe189851e5b1d1df19c93962f0 /config/dvr/config/7a5edfbe189851e5b1d1df19c93962f0) [[ ! -e /config/comskip/comskip.ini ]] && \ cp /defaults/comskip.ini.org /config/comskip/comskip.ini [[ ! -e /config/config ]] && \ (cp /defaults/config /config/config) # extract picons on first run [[ -f /picons.tar.bz2 ]] && \ tar xf \ /picons.tar.bz2 -C \ /picons && rm -f /picons.tar.bz2 # function to randomly sample 5 files for their owner and only chown if not abc chowner () { files=(${1}/*) for i in {1..5}; do user=$(stat -c '%U' $(printf "%s\n" "${files[RANDOM % ${#files[@]}]}")) if [ "${user}" != "abc" ]; then chown -R abc:abc ${1} break fi done } # permissions echo "Setting permissions" abc_dirs=( \ /config \ /picons \ ) for i in "${abc_dirs[@]}"; do if [ "$(ls -A ${i})" ]; then chowner ${i} else chown -R abc:abc ${i} fi done