From 619fd81f0e0bb9ceb0b971b5e6a841e47401f42e Mon Sep 17 00:00:00 2001 From: servius Date: Wed, 3 Jun 2026 19:33:18 +0530 Subject: [PATCH] feat: Add kdenlive app; fix `just add` for optionals imports Add home/apps/kdenlive.nix (kdePackages.kdenlive) to the hasGui app set. The `add` recipe's ast-grep rewrite only matched a bare `imports = [ ... ]`, so it aborted (exit 1 under set -e) on home/apps/default.nix where imports is wrapped in `lib.optionals device.hasGui [ ... ]`. Add a fallback pattern for the optionals form. --- home/apps/default.nix | 1 + home/apps/kdenlive.nix | 3 +++ justfile | 4 +++- 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 home/apps/kdenlive.nix diff --git a/home/apps/default.nix b/home/apps/default.nix index 8abdb01..bf103b2 100644 --- a/home/apps/default.nix +++ b/home/apps/default.nix @@ -34,6 +34,7 @@ ./firefox.nix ./ghostty.nix ./hyprpicker.nix + ./kdenlive.nix ./kitty.nix ./localsend.nix ./matrix.nix diff --git a/home/apps/kdenlive.nix b/home/apps/kdenlive.nix new file mode 100644 index 0000000..7fa0de1 --- /dev/null +++ b/home/apps/kdenlive.nix @@ -0,0 +1,3 @@ +{pkgs, ...}: { + home.packages = [pkgs.kdePackages.kdenlive]; +} diff --git a/justfile b/justfile index 23102ec..1b41082 100644 --- a/justfile +++ b/justfile @@ -59,7 +59,9 @@ add path name: # https://ast-grep.github.io/advanced/pattern-parse.html#incomplete-pattern-code # imports doesn't match the whole pattern, use selector binding + attr expr. if [ -t 0 ] && [ -t 1 ]; then sg_flag=-i; else sg_flag=-U; fi - ast-grep run -p '{ imports = [$$$ITEMS] }' --selector binding --rewrite 'imports = [$$$ITEMS ./{{name}}.nix ]' "$dir/default.nix" "$sg_flag" + # Bare `imports = [ ... ]`, falling back to `imports = lib.optionals [ ... ]`. + ast-grep run -p '{ imports = [$$$ITEMS] }' --selector binding --rewrite 'imports = [$$$ITEMS ./{{name}}.nix ]' "$dir/default.nix" "$sg_flag" \ + || ast-grep run -p '{ imports = lib.optionals $COND [$$$ITEMS] }' --selector binding --rewrite 'imports = lib.optionals $COND [$$$ITEMS ./{{name}}.nix ]' "$dir/default.nix" "$sg_flag" alejandra fmt "$dir/{{name}}.nix" "$dir/default.nix" git add "$dir/{{name}}.nix" -- 2.51.2