From 1b7ad9651e9cbd508d020af62411edda21098539 Mon Sep 17 00:00:00 2001 From: Sam Rolfe Date: Fri, 13 Feb 2026 15:40:54 +1100 Subject: [PATCH] Add niri startup layout script --- home/sam/bin/niri-startup-layout | 48 ++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 home/sam/bin/niri-startup-layout diff --git a/home/sam/bin/niri-startup-layout b/home/sam/bin/niri-startup-layout new file mode 100644 index 0000000..c242a39 --- /dev/null +++ b/home/sam/bin/niri-startup-layout @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +set -euo pipefail + +spawn() { + # Detach; avoid blocking. + ( "$@" >/dev/null 2>&1 & ) +} + +# Give niri a moment to finish bringing up IPC. +for _ in $(seq 1 50); do + niri msg version >/dev/null 2>&1 && break + sleep 0.1 +done + +# Ensure we start from the leftmost monitor (DP-6 in your layout). +for _ in $(seq 1 6); do + niri msg action focus-monitor-left >/dev/null 2>&1 || true +done + +# DP-6 -> workspace 6: 2 kitty terminals +niri msg action focus-workspace 6 +spawn kitty --directory "$HOME/organizer" +spawn kitty --directory /etc/nixos +sleep 1 + +# DP-7 -> workspace 7: 2 firefox windows +niri msg action focus-monitor-right +niri msg action focus-workspace 7 +spawn firefox --new-window "https://x.com/" +sleep 1 +spawn firefox --new-window "https://www.youtube.com/" +sleep 1 + +# DP-4 -> workspace 4: firefox with tabs +niri msg action focus-monitor-right +niri msg action focus-workspace 4 +spawn firefox \ + --new-window "https://gitea.lab.audasmedia.com.au/" \ + --new-tab "https://t3.chat/" \ + --new-tab "https://grok.com/" \ + --new-tab "https://gemini.google.com/" +sleep 1 + +# DP-5 -> workspace 5: kitty + thunar +niri msg action focus-monitor-right +niri msg action focus-workspace 5 +spawn kitty --directory /etc/nixos +spawn thunar "$HOME"