#!/bin/bash # SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. set -e USER="dgx-dashboard-service-user" GROUP="dgx-dashboard-service-group" # Only stop services on removal, not on upgrade case "$1" in remove|deconfigure) # Disable dashboard admin service /usr/bin/systemctl disable dgx-dashboard-admin || true /usr/bin/systemctl stop dgx-dashboard-admin || true /usr/bin/systemctl daemon-reload || true # Disable dashboard service /usr/bin/systemctl disable dgx-dashboard.service || true /usr/bin/systemctl stop dgx-dashboard.service || true /usr/bin/systemctl daemon-reload || true # Kill any processes running as the user sudo killall -u $USER -s KILL || true rm -rf /opt/nvidia/dgx-dashboard rm -rf /opt/nvidia/dgx-dashboard-service # Delete user deluser "$USER" if getent group "$GROUP" > /dev/null 2>&1; then # Get the list of users in the group USERS_IN_GROUP=$(getent group "$GROUP" | awk -F: '{ print $4 }' | tr ',' ' ') # Remove each user from the group for user in $USERS_IN_GROUP; do if id "$user" >/dev/null 2>&1; then deluser "$user" "$GROUP" fi done # Delete the group delgroup "$GROUP" fi # Remove the directory used for storing keys rm -rf /etc/dgx-dashboard/keys ;; upgrade|failed-upgrade) # Do nothing - let services continue running ;; *) echo "prerm called with unknown argument '$1'" >&2 exit 1 ;; esac #DEBHELPER# exit 0