#!/bin/bash

# KNEL SSH Keys Initializer
# Sets up SSH authorized keys for users

set -euo pipefail

echo "Running SSH keys initializer..."

# Create SSH directories
mkdir -p $ROOT_SSH_DIR

# Setup root SSH keys
if [[ -f ./configs/root-ssh-authorized-keys ]]; then
    cp ./configs/root-ssh-authorized-keys $ROOT_SSH_DIR/authorized_keys
    chmod 400 $ROOT_SSH_DIR/authorized_keys
    chown root: $ROOT_SSH_DIR/authorized_keys
fi

# Setup localuser SSH keys
if [[ $LOCALUSER_CHECK -gt 0 ]]; then
    mkdir -p $LOCALUSER_SSH_DIR
    
    if [[ -f ./configs/localuser-ssh-authorized-keys ]]; then
        cp ./configs/localuser-ssh-authorized-keys $LOCALUSER_SSH_DIR/authorized_keys
        chmod 400 $LOCALUSER_SSH_DIR/authorized_keys
        chown localuser $LOCALUSER_SSH_DIR/authorized_keys
    fi
fi

# Setup subodev SSH keys
if [[ $SUBODEV_CHECK -gt 0 ]]; then
    mkdir -p $SUBODEV_SSH_DIR
    
    if [[ -f ./configs/localuser-ssh-authorized-keys ]]; then
        cp ./configs/localuser-ssh-authorized-keys $SUBODEV_SSH_DIR/authorized_keys
        chmod 400 $SUBODEV_SSH_DIR/authorized_keys
        chown subodev: $SUBODEV_SSH_DIR/authorized_keys
    fi
fi

echo "SSH keys initializer completed"