- Add ttyd-nerd-font submodule with embedded JetBrains Mono Nerd Font for proper icon rendering in browser via ttyd - Add Ctrl+Shift+V / Shift+Insert paste support in ttyd frontend - Strip Zellij env vars from PTY child processes to prevent workspace terminal from inheriting Zellij session context - Launch PTY commands through login shell for proper PATH resolution - Use /etc/passwd shell lookup instead of $SHELL (Zellij overrides it) - Soften ANSI 256-color palette to match modern dark themes - Handle Nerd Font PUA glyphs as width 1 in pyte terminal emulator - Fix brightmagenta typo in pyte graphics - Update install script to build ttyd from submodule source - Add web deployment TODO items for image paste and context menu Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
35 lines
1.0 KiB
Desktop File
35 lines
1.0 KiB
Desktop File
[Unit]
|
|
Description=Clide Web Terminal (ttyd + zellij)
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=jpmschweitzer
|
|
Group=jpmschweitzer
|
|
WorkingDirectory=/mnt/media/Projects
|
|
|
|
# ttyd options:
|
|
# -p 8888 : Port (same as Jupyter was using)
|
|
# -W : Writable (allows input)
|
|
# -a : Allow URL arguments (passes ?project=X as command arg)
|
|
# -t fontSize=14: Terminal font size
|
|
# -t fontFamily: Use embedded JetBrains Mono Nerd Font (from ttyd-nerd-font fork)
|
|
ExecStart=/usr/local/bin/ttyd -p 8888 -W -a -t fontSize=14 -t 'fontFamily=JetBrains,monospace' /usr/local/bin/clide-launcher
|
|
|
|
# Kill all child processes (ttyd → zellij → clide → claude)
|
|
KillMode=control-group
|
|
KillSignal=SIGTERM
|
|
TimeoutStopSec=5
|
|
SendSIGKILL=yes
|
|
|
|
Restart=on-failure
|
|
RestartSec=3
|
|
|
|
# Environment for 256-color + truecolor
|
|
Environment="TERM=xterm-256color"
|
|
Environment="COLORTERM=truecolor"
|
|
Environment="PATH=/home/jpmschweitzer/.nvm/versions/node/v24.11.0/bin:/usr/local/bin:/mnt/media/Projects/clide/.venv/bin:/usr/bin:/bin"
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|