socktop-webterm/docker/init-config.sh
jasonwitty d3f95b8c52
Some checks failed
Build and Deploy to K3s / test (push) Successful in 2m3s
Build and Deploy to K3s / lint (push) Successful in 1m31s
Build and Deploy to K3s / build-and-push (push) Successful in 5m17s
Build and Deploy to K3s / deploy (push) Failing after 10m8s
patch for missing profiles file
2025-11-30 02:33:43 -08:00

77 lines
2.7 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
set -e
# Init script to copy configuration files to the correct locations
# This handles the discrepancy between where K8s mounts configs
# and where the socktop package expects them (HOME directory)
echo "==================================="
echo "Initializing socktop webterm config"
echo "==================================="
# Determine the actual HOME directory for the socktop user
SOCKTOP_HOME=$(eval echo ~socktop)
echo "Socktop HOME: ${SOCKTOP_HOME}"
# Create necessary directories in the actual HOME
mkdir -p "${SOCKTOP_HOME}/.config/socktop/certs"
mkdir -p "${SOCKTOP_HOME}/.config/alacritty"
# Copy files from mounted locations to actual HOME if they exist
echo "Copying configuration files..."
# Copy profiles.json
if [ -f "/home/socktop/.config/socktop/profiles.json" ]; then
cp /home/socktop/.config/socktop/profiles.json "${SOCKTOP_HOME}/.config/socktop/profiles.json"
echo " ✓ Copied profiles.json"
else
echo " ⚠ profiles.json not found at mount point"
fi
# Copy alacritty.toml
if [ -f "/home/socktop/.config/alacritty/alacritty.toml" ]; then
cp /home/socktop/.config/alacritty/alacritty.toml "${SOCKTOP_HOME}/.config/alacritty/alacritty.toml"
echo " ✓ Copied alacritty.toml"
else
echo " ⚠ alacritty.toml not found at mount point"
fi
# Copy catppuccin-frappe.toml
if [ -f "/home/socktop/.config/alacritty/catppuccin-frappe.toml" ]; then
cp /home/socktop/.config/alacritty/catppuccin-frappe.toml "${SOCKTOP_HOME}/.config/alacritty/catppuccin-frappe.toml"
echo " ✓ Copied catppuccin-frappe.toml"
else
echo " ⚠ catppuccin-frappe.toml not found at mount point"
fi
# Copy certificates if they exist
if [ -d "/home/socktop/.config/socktop/certs" ]; then
for cert in /home/socktop/.config/socktop/certs/*.pem; do
if [ -f "$cert" ]; then
cp "$cert" "${SOCKTOP_HOME}/.config/socktop/certs/"
echo " ✓ Copied $(basename "$cert")"
fi
done
else
echo " No certificates directory found (optional)"
fi
# Set proper ownership
chown -R socktop:socktop "${SOCKTOP_HOME}/.config"
# Fix paths in profiles.json if it exists
if [ -f "${SOCKTOP_HOME}/.config/socktop/profiles.json" ]; then
echo "Rewriting paths in profiles.json..."
# Replace /home/socktop with actual HOME directory and ensure certs/ subdirectory
sed -i "s|/home/socktop/.config/socktop/rpi-|${SOCKTOP_HOME}/.config/socktop/certs/rpi-|g" "${SOCKTOP_HOME}/.config/socktop/profiles.json"
echo " ✓ Updated certificate paths"
fi
echo "==================================="
echo "Configuration initialization complete"
echo "==================================="
echo "Switching to socktop user..."
# Switch to socktop user and execute the main command
exec runuser -u socktop -- "$@"