Files
snigdhaos-system-config/usr/local/bin/snigdhaos-lsb-release
2025-01-09 15:32:22 +05:30

45 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Define the source and target files
SOURCE_FILE="/usr/local/share/snigdhaos/release/lsb-release-snigdhaos"
TARGET_FILE="/etc/lsb-release"
# Function to display a message with a timestamp
log_message() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $1"
}
echo
log_message "Starting the lsb-release update process..."
# Check if the source file exists
if [[ ! -f "$SOURCE_FILE" ]]; then
log_message "Error: Source file '$SOURCE_FILE' does not exist."
exit 1
fi
# Check if the target file is writable (or replaceable)
if [[ -e "$TARGET_FILE" && ! -w "$TARGET_FILE" ]]; then
log_message "Error: Target file '$TARGET_FILE' exists but is not writable. Please check permissions."
exit 1
fi
# Attempt to copy the source file to the target location
if sudo cp "$SOURCE_FILE" "$TARGET_FILE"; then
log_message "Successfully copied $SOURCE_FILE to $TARGET_FILE."
else
log_message "Error: Failed to copy $SOURCE_FILE to $TARGET_FILE."
exit 1
fi
# Verify if the file was successfully copied
if [[ -f "$TARGET_FILE" ]]; then
log_message "Verification successful: '$TARGET_FILE' exists."
else
log_message "Error: Verification failed. '$TARGET_FILE' does not exist after copying."
exit 1
fi
log_message "Task Completed!"
echo