From 9b82c65e458baa0768eab9e31c76c6a49a4a7764 Mon Sep 17 00:00:00 2001 From: Linnea Gräf Date: Tue, 20 May 2025 23:48:10 +0200 Subject: snapshot: Di 20. Mai 23:48:10 CEST 2025 --- flake.nix | 2 +- pkgs/default.nix | 1 + pkgs/swaykill/default.nix | 2 ++ pkgs/swayprop/default.nix | 27 +++++++++++++++++++++++++++ pkgs/swayprop/swayprop.sh | 3 +++ 5 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 pkgs/swayprop/default.nix create mode 100644 pkgs/swayprop/swayprop.sh diff --git a/flake.nix b/flake.nix index 722f192..e4217ef 100644 --- a/flake.nix +++ b/flake.nix @@ -95,7 +95,7 @@ }; in { - formatter = pkgs.nixfmt-rfc-style; + formatter = pkgs.nixfmt-tree; } ); in diff --git a/pkgs/default.nix b/pkgs/default.nix index 8611a51..aa1aecb 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,3 +1,4 @@ final: prev: { swaykill = final.callPackage ./swaykill { }; + swayprop = final.callPackage ./swayprop { }; } diff --git a/pkgs/swaykill/default.nix b/pkgs/swaykill/default.nix index e811f65..285065f 100644 --- a/pkgs/swaykill/default.nix +++ b/pkgs/swaykill/default.nix @@ -3,6 +3,7 @@ sway, makeWrapper, jq, + swayprop, coreutils, pkgs, }: @@ -17,6 +18,7 @@ symlinkJoin rec { script sway jq + swayprop coreutils ]; buildInputs = [ makeWrapper ]; diff --git a/pkgs/swayprop/default.nix b/pkgs/swayprop/default.nix new file mode 100644 index 0000000..c0baf01 --- /dev/null +++ b/pkgs/swayprop/default.nix @@ -0,0 +1,27 @@ +{ + symlinkJoin, + slurp, + sway, + makeWrapper, + jq, + coreutils, + pkgs, +}: +let + script-name = "swayprop"; + script = (pkgs.writeScriptBin script-name (builtins.readFile ./swayprop.sh)).overrideAttrs (old: { + buildCommand = "${old.buildCommand}\n patchShebangs $out"; + }); +in +symlinkJoin rec { + name = script-name; + paths = [ + script + sway + jq + slurp + coreutils + ]; + buildInputs = [ makeWrapper ]; + postBuild = "wrapProgram $out/bin/${name} --prefix PATH : $out/bin"; +} diff --git a/pkgs/swayprop/swayprop.sh b/pkgs/swayprop/swayprop.sh new file mode 100644 index 0000000..a2e7d33 --- /dev/null +++ b/pkgs/swayprop/swayprop.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +id=$(swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | "\(.rect.x),\(.rect.y) \(.rect.width)x\(.rect.height) \(.id)"' | slurp -f %l) +swaymsg -t get_tree | jq -r ".. | select(.pid? and .id? and .id == $id)" -- cgit