diff --git a/check_talkkonnect_fix.sh b/check_talkkonnect_fix.sh new file mode 100755 index 0000000..2bc7859 --- /dev/null +++ b/check_talkkonnect_fix.sh @@ -0,0 +1,56 @@ +#!/bin/bash +################################################################################ +# Check if talkkonnect terminal fix is applied +################################################################################ + +echo "================================" +echo " Talkkonnect Fix Status Check" +echo "================================" +echo + +# Check if service file exists +if [ ! -f /etc/systemd/system/talkkonnect.service ]; then + echo "❌ Service file not found: /etc/systemd/system/talkkonnect.service" + exit 1 +fi + +echo "Service file found. Checking configuration..." +echo + +# Check for TERM=dumb +if grep -q 'Environment="TERM=dumb"' /etc/systemd/system/talkkonnect.service; then + echo "✓ TERM=dumb is configured" + TERM_OK=1 +else + echo "✗ TERM=dumb is MISSING" + TERM_OK=0 +fi + +# Check for StandardInput=null +if grep -q 'StandardInput=null' /etc/systemd/system/talkkonnect.service; then + echo "✓ StandardInput=null is configured" + STDIN_OK=1 +else + echo "✗ StandardInput=null is MISSING" + STDIN_OK=0 +fi + +echo +echo "Current service file:" +echo "-------------------" +cat /etc/systemd/system/talkkonnect.service +echo "-------------------" +echo + +if [ $TERM_OK -eq 1 ] && [ $STDIN_OK -eq 1 ]; then + echo "✓ Fix is properly applied!" + echo + echo "If you're still seeing errors, check:" + echo " sudo journalctl -u talkkonnect -n 100" +else + echo "❌ Fix is NOT applied. Run the fix script:" + echo " cd /home/user/ubk" + echo " sudo bash fix_talkkonnect_terminal.sh" +fi + +echo diff --git a/fix_talkkonnect_terminal.sh b/fix_talkkonnect_terminal.sh new file mode 100755 index 0000000..89ae8eb --- /dev/null +++ b/fix_talkkonnect_terminal.sh @@ -0,0 +1,90 @@ +#!/bin/bash +################################################################################ +# Fix talkkonnect Terminal Initialization Error +################################################################################ +# This script fixes the "Cannot Initialize Terminal" error that occurs when +# talkkonnect is run as a systemd service without a TTY. +# +# The fix adds: +# - Environment="TERM=dumb" to use minimal terminal mode +# - StandardInput=null to prevent terminal initialization +################################################################################ + +set -e + +echo "================================" +echo " Talkkonnect Terminal Fix" +echo "================================" +echo + +# Get kiosk user (usually 'kiosk') +KIOSK_USER=$(ls -l /home | grep '^d' | grep -v lost | head -1 | awk '{print $NF}') + +if [ -z "$KIOSK_USER" ]; then + echo "❌ Error: Could not find kiosk user" + exit 1 +fi + +echo "Kiosk user: $KIOSK_USER" +echo + +# Check if talkkonnect is installed +if ! systemctl list-unit-files | grep -q talkkonnect.service; then + echo "❌ Error: talkkonnect service not found" + echo " Install talkkonnect first using the main install script" + exit 1 +fi + +echo "[1/3] Stopping talkkonnect service..." +sudo systemctl stop talkkonnect + +echo "[2/3] Updating systemd service..." +sudo tee /etc/systemd/system/talkkonnect.service > /dev/null <