feat: switch from ttyd to real kitty via Xpra HTML5
Replaced the tmux+ttyd web terminal with actual kitty running through Xpra's HTML5 streaming. Full GPU rendering, native kitty tabs/splits, persistent sessions, and multi-client support.
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
[Unit]
|
||||
Description=Kitty terminal via Xpra HTML5 (kitty.sethpc.xyz)
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=rdp
|
||||
Group=rdp
|
||||
WorkingDirectory=/home/rdp
|
||||
Environment=XDG_RUNTIME_DIR=/run/user/1002
|
||||
|
||||
ExecStart=/usr/bin/xpra start \
|
||||
--bind-ws=0.0.0.0:7681 \
|
||||
--start="kitty" \
|
||||
--html=on \
|
||||
--no-notifications \
|
||||
--no-pulseaudio \
|
||||
--no-mdns \
|
||||
--no-printing \
|
||||
--sharing=yes \
|
||||
--readonly=no \
|
||||
--no-daemon
|
||||
|
||||
ExecStop=/usr/bin/xpra stop :0
|
||||
|
||||
Restart=on-failure
|
||||
RestartSec=5
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -1,29 +0,0 @@
|
||||
[Unit]
|
||||
Description=ttyd web terminal (kitty.sethpc.xyz)
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=rdp
|
||||
Group=rdp
|
||||
|
||||
ExecStartPre=/bin/bash -c "/usr/bin/tmux kill-session -t kitty 2>/dev/null; sleep 0.5; /usr/bin/tmux new-session -d -s kitty -x 120 -y 40"
|
||||
ExecStart=/usr/local/bin/ttyd \
|
||||
--port 7681 \
|
||||
--interface 0.0.0.0 \
|
||||
--index /opt/ttyd/index-with-toolbar.html \
|
||||
--writable \
|
||||
--check-origin \
|
||||
--max-clients 5 \
|
||||
--ping-interval 30 \
|
||||
--client-option titleFixed=sethpc.xyz \
|
||||
--client-option fontSize=18 \
|
||||
--client-option fontFamily=monospace \
|
||||
--client-option enableSixel=true \
|
||||
/usr/bin/tmux attach-session -t kitty
|
||||
|
||||
Restart=always
|
||||
RestartSec=3
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user