30-config 1006 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/with-contenv bash
  2. # make folders
  3. mkdir -p \
  4. /config/comskip
  5. # copy config
  6. [[ ! -e /config/dvr/config ]] && \
  7. (mkdir -p /config/dvr/config && cp /defaults/7a5edfbe189851e5b1d1df19c93962f0 /config/dvr/config/7a5edfbe189851e5b1d1df19c93962f0)
  8. [[ ! -e /config/comskip/comskip.ini ]] && \
  9. cp /defaults/comskip.ini.org /config/comskip/comskip.ini
  10. [[ ! -e /config/config ]] && \
  11. (cp /defaults/config /config/config)
  12. # function to randomly sample 10 files for their owner and only chown if not abc
  13. chowner () {
  14. files=(${1}/*)
  15. for i in {1..10}; do
  16. user=$(stat -c '%U' $(printf "%s\n" "${files[RANDOM % ${#files[@]}]}"))
  17. if [ "${user}" != "abc" ]; then
  18. chown -R abc:abc ${1}
  19. break
  20. fi
  21. done
  22. }
  23. # permissions
  24. echo "Setting permissions"
  25. abc_dirs=( \
  26. /config \
  27. /picons \
  28. )
  29. for i in "${abc_dirs[@]}"; do
  30. if [ "$(ls -A ${i})" ]; then
  31. chowner ${i}
  32. else
  33. chown -R abc:abc ${i}
  34. fi
  35. done