Add laptop waybar layout gated by {{laptop}} + $hostname #1

Merged
greembow merged 1 commit from laptop-waybar into main 2026-09-09 16:29:59 +00:00
Owner

Import the Slablet's touch waybar stack (config.jsonc + style.css,
nwg-bar power menu, greembow-yad GTK theme, ~/.local/bin scripts) and
wire activation through dotdotdot conditionals so it deploys to every
laptop but only lights up the touch-only pieces on the tablet.

hyprland.lua (Lua -- comments):

  • {{laptop}} -> autostart start-waybar.sh
  • $hostname == "Slablet" -> autostart hypr-superbutton.sh + hypr-autorotate.sh

waybar/config.jsonc (JSONC // comments):

  • $hostname == "Slablet" gates custom/osk + custom/menu modules,
    the brightness/volume slider on-click popups, and swaps the
    launcher on-click (bar-launch.sh touch vs plain walker).
    Comma placement keeps the JSON valid whether or not each block is
    emitted (leading-comma-inside-conditional pattern).

Keying the touch features off $hostname (a dotdotdot built-in) rather
than a hand-set per-host var means a fresh clone just works on the
tablet with no out-of-repo config.toml edit. laptop stays a real
cross-host variable. Markers use each file's native comment syntax so
LSPs/formatters don't strip them.

Import the Slablet's touch waybar stack (config.jsonc + style.css, nwg-bar power menu, greembow-yad GTK theme, ~/.local/bin scripts) and wire activation through dotdotdot conditionals so it deploys to every laptop but only lights up the touch-only pieces on the tablet. hyprland.lua (Lua `--` comments): - {{laptop}} -> autostart start-waybar.sh - $hostname == "Slablet" -> autostart hypr-superbutton.sh + hypr-autorotate.sh waybar/config.jsonc (JSONC `//` comments): - $hostname == "Slablet" gates custom/osk + custom/menu modules, the brightness/volume slider on-click popups, and swaps the launcher on-click (bar-launch.sh touch vs plain walker). Comma placement keeps the JSON valid whether or not each block is emitted (leading-comma-inside-conditional pattern). Keying the touch features off $hostname (a dotdotdot built-in) rather than a hand-set per-host var means a fresh clone just works on the tablet with no out-of-repo config.toml edit. `laptop` stays a real cross-host variable. Markers use each file's native comment syntax so LSPs/formatters don't strip them.
Import the Slablet's touch waybar stack (config.jsonc + style.css,
nwg-bar power menu, greembow-yad GTK theme, ~/.local/bin scripts) and
wire activation through dotdotdot conditionals so it deploys to every
laptop but only lights up the touch-only pieces on the tablet.

hyprland.lua (Lua `--` comments):
  - {{laptop}}                -> autostart start-waybar.sh
  - $hostname == "Slablet"    -> autostart hypr-superbutton.sh + hypr-autorotate.sh

waybar/config.jsonc (JSONC `//` comments):
  - $hostname == "Slablet" gates custom/osk + custom/menu modules,
    the brightness/volume slider on-click popups, and swaps the
    launcher on-click (bar-launch.sh touch vs plain walker).
  Comma placement keeps the JSON valid whether or not each block is
  emitted (leading-comma-inside-conditional pattern).

Keying the touch features off $hostname (a dotdotdot built-in) rather
than a hand-set per-host var means a fresh clone just works on the
tablet with no out-of-repo config.toml edit. `laptop` stays a real
cross-host variable. Markers use each file's native comment syntax so
LSPs/formatters don't strip them.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
greembow/dotfiles!1
No description provided.