#!/usr/bin/env bash
# @file Miscellaneous Clean Up
# @brief Removes certain files that should not be necessary
# @description
#     This script removes various files in the `HOME` directory that are either no longer necessary
#     or cluttery.

{{ includeTemplate "universal/profile" }}
{{ includeTemplate "universal/logg" }}

### Remove meta sudo file
if [ -f "$HOME/.sudo_as_admin_successful" ]; then
    rm -f "$HOME/.sudo_as_admin_successful"
fi

### Remove .bash_history file
# New dotfiles specify this to be kept in the ~/.local folder
if [ -f "$HOME/.bash_history" ]; then
    rm -f "$HOME/.bash_history"
fi

### Remove wget history file
# New dotfiles include alias that automatically adds the wget-hsts file in the ~/.local folder
if [ -f "$HOME/.wget-hsts" ]; then
    rm -f "$HOME/.wget-hsts"
fi

### Remove .wrangler
# Not sure how this is populating but the proper environment variables appear to be in place and nothing breaks when its removed
if [ -d "$HOME/.wrangler" ]; then
    rm -rf "$HOME/.wrangler"
fi

if [ -d /Applications ] && [ -d /System ]; then
    ### Empty trash
    if command -v m > /dev/null; then
        logg info 'Emptying trash' && m trash clean
    fi
    logg info 'Checking if there is a pending update'
    defaults read /Library/Updates/index.plist InstallAtLogout || EXIT_CODE=$?
    if [ -n "$EXIT_CODE" ]; then
        logg info 'No pending update discovered by checking /Library/Updates/index.plist'
    fi
elif [ -f /var/run/reboot-required ]; then
    logg info '/var/run/reboot-required is present so a reboot is required'
fi
