# Ubuntu Linux Role Configuration # This file defines role assignments for Ubuntu Linux systems # Default roles for all Ubuntu systems DEFAULT_ROLES=( "DEVELOPMENT" "TERMINAL" ) # Hostname-specific role assignments configure_roles_for_hostname() { local hostname="$1" case "$hostname" in "CMBOX"|"LABBOX"|"STEAMBOX"|"SIMONBOX") # These are primarily Arch systems, but provide fallback Ubuntu config ROLES[DEVELOPMENT]="yes" ROLES[TERMINAL]="yes" if [ "${SYSTEM_INFO[WSL]}" != "yes" ] && supports_feature "desktop"; then ROLES[DESKTOP_BASE]="yes" fi ;; *) # Default configuration for Ubuntu systems ROLES[DEVELOPMENT]="yes" ROLES[TERMINAL]="yes" # Enable desktop roles if not in WSL and desktop is available if [ "${SYSTEM_INFO[WSL]}" != "yes" ] && supports_feature "desktop"; then ROLES[DESKTOP_BASE]="yes" fi # Enable WSL-specific roles if in WSL if [ "${SYSTEM_INFO[WSL]}" == "yes" ]; then ROLES[WSL]="yes" fi # Enable Bluetooth if available if supports_feature "bluetooth"; then ROLES[BT]="yes" fi ;; esac }