A small Go tool that wraps the `/etc/hosts` + `once deploy --disable-tls` recipe needed to host a Once app on a single-label `<name>.local`. Adds the hosts entry, runs the deploy, polls /up, and on removal cleans the hosts line that the Once UI orphans (including the orphan-only case, where the app is already gone). Bubble Tea TUI for interactive use; non-interactive CLI for scripts. Curated apps live in /etc/once-add/apps.toml; seeded with Writebook + Campfire on first run.
22 lines
823 B
Go
22 lines
823 B
Go
package tui
|
|
|
|
import "github.com/charmbracelet/lipgloss"
|
|
|
|
// ANSI palette indices so colours adapt to the terminal theme (omaterm-friendly).
|
|
var (
|
|
accent = lipgloss.Color("12") // bright blue
|
|
good = lipgloss.Color("10") // green
|
|
bad = lipgloss.Color("9") // red
|
|
subtle = lipgloss.Color("8") // grey
|
|
)
|
|
|
|
var (
|
|
titleStyle = lipgloss.NewStyle().Bold(true).Foreground(accent)
|
|
selectedStyle = lipgloss.NewStyle().Bold(true).Foreground(accent)
|
|
descStyle = lipgloss.NewStyle().Foreground(subtle)
|
|
helpStyle = lipgloss.NewStyle().Foreground(subtle)
|
|
hintStyle = lipgloss.NewStyle().Foreground(subtle).Italic(true)
|
|
errStyle = lipgloss.NewStyle().Foreground(bad)
|
|
okStyle = lipgloss.NewStyle().Foreground(good)
|
|
urlStyle = lipgloss.NewStyle().Bold(true).Underline(true).Foreground(good)
|
|
)
|