claude 04d999642c
All checks were successful
check / check (push) Successful in 1m37s
Justering/expand/marginaler, hover-popup med peek, appikon
- Ny layoutmodell: alignment (center/start/end längs kanten), expand
  (ö eller täck hela kanten) och tre marginaler — A från kanten,
  B/C i början/slutet av kanten. Funkar för alla fyra positionerna.
- Settings → Layout har en ritad illustration (cairo) som visar vad
  A/B/C betyder för vald position och uppdateras live.
- Fönsterlistan för grupper kan öppnas vid hover (group_popup) och
  stängs när pekaren lämnar den; hover på en rad kan peeka (alla andra
  fönster tonas ner via Wayfires alpha-plugin) eller fokusera fönstret
  (list_hover: peek/focus/none).
- Appikon (assets/waydock.svg) + .desktop-fil; installeras av
  install.sh och används av settings-fönstret.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-30 00:03:15 +02:00

waydock

Modern, resurssnål och genomkonfigurerbar dock för Wayfire — transparent Plasma 6-känsla, byggd i Rust/GTK4 som en enda binär. Pinnade appar, körande fönster med gruppering, per-skärm-kontext, konfigurerbara menyer, settings-GUI och live-omladdning av JSON-configen.

Beroenden (Arch/Garuda)

sudo pacman -S --needed gtk4 gtk4-layer-shell
rustup default stable   # Rust ≥ 1.85

Kör kräver en wlroots-compositor med zwlr_foreign_toplevel_manager_v1 (Wayfire, Sway, …). Wayfire IPC-funktionerna (översikt, dodge) kräver ipc-pluginen i wayfire.ini.

Bygga & köra

git clone https://gitea.brasse-pc.eu/brasse/waydock.git
cd waydock
cargo build --release          # binär: target/release/waydock
./target/release/waydock       # eller: cargo run

I VS Code: Ctrl+Shift+B kör build-tasken (lägger binären i build/).

Loggning: waydock --log debug eller env WAYDOCK_LOG=debug, --log-file ~/.cache/waydock.log för fil.

Installera (release-binär)

curl -fsSL https://gitea.brasse-pc.eu/brasse/waydock/raw/branch/master/install.sh | sh

Hur det funkar (kort)

En GTK4-process ritar ett layer-shell-fönster per skärm. En egen Wayland-anslutning lyssnar på zwlr_foreign_toplevel_manager_v1 för fönsterlistan (aktivera/minimera/stäng går samma väg). .desktop-filer och ikoner slås upp via gio/ikontemat. All styling genereras som CSS från JSON-configen; en filewatcher gör att ändringar (för hand eller via settings-GUI:t) slår igenom direkt. Wayfire IPC används för scale/expo-toggle och fönstergeometri till intelligent autohide.

Släpp

./release.sh v0.1.0   # taggar och pushar — CI bygger och publicerar

All CI kör på byggnoden på brasse-linux01 (x64-runnern, label linux-amd64) — waydock byggs bara för x86_64, aldrig på Pi5:ns arm-runner. Push till master kör cargo check/clippy/test; en vX.Y.Z-tagg bygger release-binären och laddar upp den till släppsidan (+ rullande latest).

Description
docker par transparent centrerad "ö" av appar
Readme 6.8 MiB
2026-08-30 15:38:15 +02:00
Languages
Rust 98.6%
Shell 1.4%