aboutsummaryrefslogtreecommitdiffstats
path: root/config.toml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-11-10 10:03:00 +0100
committerDanilo M. <danix@danix.xyz>2026-11-10 10:03:00 +0100
commit819745a39220b49e848422b4bf0ee71dc317fc4d (patch)
tree17475ac554a44eec1f9adee45ad0be3a437509d3 /config.toml
parent5ebfb5850713c038e37baddbadde3320aca2c4e4 (diff)
downloaddeck-it-819745a39220b49e848422b4bf0ee71dc317fc4d.tar.gz
deck-it-819745a39220b49e848422b4bf0ee71dc317fc4d.zip
feat: dashboard-only mode and keystone settings integration
The second display is now optional: [display] enabled = false skips the headless output, wayvnc, AVNC and the VNC tunnel, so the tablet runs the dashboard alone. `deck-it env` reports it as EXTEND. Keystone's new deck-it page (quickshell, desktop/modules/deckit) edits the config and the autostart line, which needed: - The user config is merged over the shipped config.toml key by key within each table instead of replacing it whole, so the page writes a sparse file and an unset key falls back to the default. - `deck-it defaults` prints the shipped config as JSON for the page's placeholders, so keystone never copies the defaults. - `deck-it status` prints one JSON line (server, display, waiting, tablet, extend) for the page's status line and restart check. - [launch] is now `apps`, a list of desktop ids run with gtk-launch, with name and icon read from the .desktop file, so the page can pick launchers from the installed apps. The old command tables are gone; the client still sends only an id, which must be listed and installed. A launcher whose icon the theme lacks shows its name. - [wifi] address gives the tablet's address in config. The last address that worked is kept in ~/.config/deck-it/last-wifi: `stop` deletes the runtime serial file, so a restart from the page used to wait forever. - `stop` also ends a login's `wifi --wait`, matched by its own command line only, so repeated restarts do not pile up waiters. Also fixed: `deck-it env` fell through into the usage text, and the usage text printed the license header since the header was added. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'config.toml')
-rw-r--r--config.toml22
1 files changed, 13 insertions, 9 deletions
diff --git a/config.toml b/config.toml
index 797d3d8..17a907d 100644
--- a/config.toml
+++ b/config.toml
@@ -1,10 +1,13 @@
# deck-it configuration.
-# Copy to ~/.config/deck-it/config.toml to customize; that file replaces this one entirely.
+# Override any key in ~/.config/deck-it/config.toml: that file needs only the
+# keys it changes, and keystone's deck-it page writes it.
# "auto" picks "lua" when ~/.config/hypr/hyprland.lua exists, otherwise "classic".
hyprland = "auto"
[display]
+# false runs the dashboard only: no virtual monitor, wayvnc or AVNC.
+enabled = true
# Resolution of the virtual monitor. "auto" reads it from the tablet over adb.
resolution = "auto"
# "auto-below" centers the tablet under the first monitor; any Hyprland
@@ -15,6 +18,11 @@ refresh = 60
# Hyprland output name for the virtual monitor.
name = "TAB"
+[wifi]
+# The tablet's Wireless debugging address, ip:port, tried first by
+# `deck-it wifi`. Empty: the last address used, then mDNS discovery.
+address = ""
+
[ports]
# Ports on the tablet's localhost, tunneled with adb reverse.
command_center = 8765
@@ -66,11 +74,7 @@ workspaces = [1, 2, 3, 4, 5, 6, 7, 8]
theme = "candy-icons"
[launch]
-# Buttons on the Windows tab. `icon` is an app icon name from the icon theme;
-# with one, the button is icon-only. `command` is a string (sh -c) or a list
-# (run direct). The client sends the key, never a command.
-terminal = { icon = "kitty", command = "kitty" }
-files = { icon = "file-manager", command = "xdg-open ~" }
-obs = { icon = "obs", command = "obs" }
-firefox = { icon = "firefox-icon", command = "firefox" }
-signal = { icon = "signal-desktop", command = "signal-desktop" }
+# Buttons on the Windows tab: desktop ids, the .desktop file names without the
+# extension, in order. Each shows its app's icon and runs through gtk-launch;
+# the client sends the id, never a command.
+apps = ["kitty", "pcmanfm-qt", "com.obsproject.Studio", "firefox", "signal-desktop"]