#!/usr/bin/env bash

ENABLED=yes
[ "$ENABLED" != "yes" ] && exit 0

chmod_ublinux() {
    local PATH_ROOT_UBLINUX=$1
    if [[ -w ${PATH_ROOT_UBLINUX} ]]; then
        install -dm0750 -o root -g root \
            "${PATH_ROOT_UBLINUX}/base" \
            "${PATH_ROOT_UBLINUX}/machines/dynamic" \
            "${PATH_ROOT_UBLINUX}/machines/static" \
            "${PATH_ROOT_UBLINUX}/modules" \
            "${PATH_ROOT_UBLINUX}/optional"
#        chmod -fR 0600 "${PATH_ROOT_UBLINUX}"/base/* "${PATH_ROOT_UBLINUX}"/machines/* "${PATH_ROOT_UBLINUX}"/modules/* "${PATH_ROOT_UBLINUX}"/optional/* 2>/dev/null
        find "${PATH_ROOT_UBLINUX}"/{base,machines,modules,optional,upgrade}/ -type f -exec chmod -f 0640 {} + 2>/dev/null
#        chown -fR root:root "${PATH_ROOT_UBLINUX}"/base "${PATH_ROOT_UBLINUX}"/machines "${PATH_ROOT_UBLINUX}"/modules "${PATH_ROOT_UBLINUX}"/optional
        chown -fR root:root "${PATH_ROOT_UBLINUX}"/{base,machines,modules,optional,upgrade} 2>/dev/null
        chmod -f 0644 "${PATH_ROOT_UBLINUX}"/LICENSE*; chown -f root:root "${PATH_ROOT_UBLINUX}"/LICENSE*
        chmod -f 0640 "${PATH_ROOT_UBLINUX}"/VERSION*; chown -f root:root "${PATH_ROOT_UBLINUX}"/VERSION*
        chmod -f 0640 "${PATH_ROOT_UBLINUX}"/boot*; chown -f root:root "${PATH_ROOT_UBLINUX}"/boot*
        chmod -f 0640 "${PATH_ROOT_UBLINUX}"/ublinux*; chown -f root:root "${PATH_ROOT_UBLINUX}"/ublinux*
        chmod -f 0640 "${PATH_ROOT_UBLINUX}"/vmlinuz*; chown -f root:root "${PATH_ROOT_UBLINUX}"/vmlinuz*
    fi
}
chmod_ublinux_data() {
    local PATH_ROOT_UBLINUX_DATA=$1
    if [[ -w ${PATH_ROOT_UBLINUX_DATA} ]]; then
        install -dm0750 -o root -g root \
            "${PATH_ROOT_UBLINUX_DATA}/cache" \
            "${PATH_ROOT_UBLINUX_DATA}/modules" \
            "${PATH_ROOT_UBLINUX_DATA}/optional" \
            "${PATH_ROOT_UBLINUX_DATA}/upgrade"
        install -dm0755 -o root -g root \
    	    "${PATH_ROOT_UBLINUX_DATA}/homes" \
            "${PATH_ROOT_UBLINUX_DATA}/changes" \
            "${PATH_ROOT_UBLINUX_DATA}/machines/dynamic" \
            "${PATH_ROOT_UBLINUX_DATA}/machines/static" \
            "${PATH_ROOT_UBLINUX_DATA}/rootcopy"
#        chmod -fR 0600 "${PATH_ROOT_UBLINUX_DATA}"/machines/* "${PATH_ROOT_UBLINUX_DATA}"/modules/* "${PATH_ROOT_UBLINUX_DATA}"/optional/* "${PATH_ROOT_UBLINUX_DATA}"/upgrade/* 2>/dev/null
        find "${PATH_ROOT_UBLINUX_DATA}"/{machines,modules,optional,upgrade}/ -type f -exec chmod -f 0640 {} + 2>/dev/null
#        chown -fR root:root "${PATH_ROOT_UBLINUX_DATA}"/machines "${PATH_ROOT_UBLINUX_DATA}"/modules "${PATH_ROOT_UBLINUX_DATA}"/optional "${PATH_ROOT_UBLINUX_DATA}"/upgrade
        chown -fR root:root "${PATH_ROOT_UBLINUX_DATA}"/{machines,modules,optional,upgrade} 2>/dev/null
        chmod -f 0640 "${PATH_ROOT_UBLINUX_DATA}"/ublinux*; chown -f root:root "${PATH_ROOT_UBLINUX_DATA}"/ublinux*
    fi
}

    chmod_ublinux "/memory/layer-base/0"
    chmod_ublinux_data "/memory/layer-base/1"
