Skip to content
This repository was archived by the owner on Jul 4, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 32 additions & 20 deletions engine/templates/linux/postrm
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,40 @@ set +e
DATA_FOLDER_NAME=.cortex
CONFIGURATION_FILE_NAME=.cortexrc

echo "Do you want to delete the ~/$DATA_FOLDER_NAME data folder and file ~/$CONFIGURATION_FILE_NAME? (yes/no)"
echo "Do you want to delete the ~/$DATA_FOLDER_NAME data folder and file ~/$CONFIGURATION_FILE_NAME? (yes/no) [default: no]"
read -r answer

# Determine the home directory based on the user
USER_TO_RUN_AS=${SUDO_USER:-$(whoami)}
if [ "$USER_TO_RUN_AS" = "root" ]; then
USER_HOME="/root"
else
USER_HOME="/home/$USER_TO_RUN_AS"
fi

while true; do
case "$answer" in
[yY][eE][sS]|[yY])
echo "Deleting cortex data folders..."
if [ -d "$USER_HOME/$DATA_FOLDER_NAME" ]; then
echo "Removing $USER_HOME/$DATA_FOLDER_NAME"
rm -rf "$USER_HOME/$DATA_FOLDER_NAME" > /dev/null 2>&1
fi
if [ -f "$USER_HOME/$CONFIGURATION_FILE_NAME" ]; then
echo "Removing $USER_HOME/$CONFIGURATION_FILE_NAME"
rm -f "$USER_HOME/$CONFIGURATION_FILE_NAME" > /dev/null 2>&1
fi
break
;;
[nN][oO]|[nN]|"")
echo "Keeping the 'cortex' data folders."
break
;;
*)
echo "Invalid response. Please type 'yes', 'no', 'y', or 'n' (case-insensitive)."
read -r answer
;;
esac
done

case "$answer" in
[yY][eE][sS]|[yY])
echo "Deleting cortex data folders..."
if [ -d "/home/$USER_TO_RUN_AS/$DATA_FOLDER_NAME" ]; then
echo "Removing /home/$USER_TO_RUN_AS/$DATA_FOLDER_NAME"
rm -rf "/home/$USER_TO_RUN_AS/$DATA_FOLDER_NAME" > /dev/null 2>&1
fi
if [ -f "/home/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME" ]; then
echo "Removing /home/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME"
rm -f "/home/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME" > /dev/null 2>&1
fi
;;
[nN][oO]|[nN])
echo "Keeping the 'cortex' data folders."
;;
*)
echo "Invalid response. Please type 'yes' or 'no'."
;;
esac
exit 0
57 changes: 35 additions & 22 deletions engine/templates/macos/cortex-uninstall.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,30 +12,43 @@ fi

USER_TO_RUN_AS=${SUDO_USER:-$(whoami)}

sudo -u $USER_TO_RUN_AS /usr/local/bin/$DESTINATION_BINARY_NAME stop > /dev/null 2>&1
# Use /root if user is root, otherwise /Users/<username>
if [ "$USER_TO_RUN_AS" = "root" ]; then
USER_HOME="/root"
else
USER_HOME="/Users/$USER_TO_RUN_AS"
fi

sudo -u "$USER_TO_RUN_AS" /usr/local/bin/$DESTINATION_BINARY_NAME stop > /dev/null 2>&1
rm /usr/local/bin/$DESTINATION_BINARY_NAME

echo "Do you want to delete the '~/$DATA_FOLDER_NAME' data folder and file '~/$CONFIGURATION_FILE_NAME'? (yes/no)"
echo "Do you want to delete the '$USER_HOME/$DATA_FOLDER_NAME' data folder and file '$USER_HOME/$CONFIGURATION_FILE_NAME'? (y/n) [default: n]"
read -r answer

case "$answer" in
[yY][eE][sS]|[yY])
echo "Deleting cortex data folders..."
if [ -d "/Users/$USER_TO_RUN_AS/$DATA_FOLDER_NAME" ]; then
echo "Removing /Users/$USER_TO_RUN_AS/$DATA_FOLDER_NAME"
rm -rf "/Users/$USER_TO_RUN_AS/$DATA_FOLDER_NAME" > /dev/null 2>&1
fi
if [ -f "/Users/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME" ]; then
echo "Removing /Users/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME"
rm -f "/Users/$USER_TO_RUN_AS/$CONFIGURATION_FILE_NAME" > /dev/null 2>&1
fi
;;
[nN][oO]|[nN])
echo "Keeping the 'cortex' data folders."
;;
*)
echo "Invalid response. Please type 'yes' or 'no'."
;;
esac
# Default to 'no' if no input is provided
while true; do
case "$answer" in
[yY][eE][sS]|[yY])
echo "Deleting cortex data folders..."
if [ -d "$USER_HOME/$DATA_FOLDER_NAME" ]; then
echo "Removing $USER_HOME/$DATA_FOLDER_NAME"
rm -rf "$USER_HOME/$DATA_FOLDER_NAME" > /dev/null 2>&1
fi
if [ -f "$USER_HOME/$CONFIGURATION_FILE_NAME" ]; then
echo "Removing $USER_HOME/$CONFIGURATION_FILE_NAME"
rm -f "$USER_HOME/$CONFIGURATION_FILE_NAME" > /dev/null 2>&1
fi
break
;;
[nN][oO]|[nN]|"")
echo "Keeping the 'cortex' data folders."
break
;;
*)
echo "Invalid response. Please type 'yes', 'no', 'y', or 'n' (case-insensitive)."
read -r answer
;;
esac
done

rm /usr/local/bin/$UNINSTALLER_FILE_NAME
rm /usr/local/bin/$UNINSTALLER_FILE_NAME
Loading