_builders=( builder builduser main-builder ) _groups=( flutter flutteruser ) post_install() { # primary flutter group groupadd -f flutter for i in "${_groups[@]}"; do if grep -q "$i" /etc/passwd > /dev/null; then setfacl -R -m "g:$i:rwX" /opt/flutter fi done # clean chroot/container builders for i in "${_builders[@]}"; do if grep -q "$i" /etc/passwd > /dev/null; then setfacl -R -m "u:$i:rwX" /opt/flutter fi done echo "Users may be added to the 'flutter' group:" echo " sudo usermod -a -G flutter [username]" echo echo "Warning: Do not store important data in '/opt/flutter'" } post_upgrade() { post_install } pre_install() { chmod -R u+rwX,go+rX,go-w opt/flutter } pre_upgrade() { chmod -R u+rwX,go+rX,go-w opt/flutter } pre_remove() { # remove extra permissions for i in ${_builders[@]} ${_groups[@]}; do if grep -q "group:$i" <<< $(getfacl -ac /opt/flutter 2> /dev/null); then sudo setfacl -R -x "g:$i" /opt/flutter fi if grep -q "user:$i" <<< $(getfacl -ac /opt/flutter 2> /dev/null); then sudo setfacl -R -x "u:$i" /opt/flutter fi done chmod -R u+rwX,go+rX,go-w opt/flutter } post_remove() { rm -rf opt/flutter echo "If no longer needed, remove the 'flutter' group:" echo " sudo groupdel flutter" }