diff --git a/quickshell/Modules/Greetd/assets/dms-greeter b/quickshell/Modules/Greetd/assets/dms-greeter index ea6a34b4..66336645 100755 --- a/quickshell/Modules/Greetd/assets/dms-greeter +++ b/quickshell/Modules/Greetd/assets/dms-greeter @@ -125,6 +125,7 @@ case "$COMPOSITOR" in niri) if [[ -z "$COMPOSITOR_CONFIG" ]]; then TEMP_CONFIG=$(mktemp) + # base/default config cat > "$TEMP_CONFIG" << NIRI_EOF hotkey-overlay { skip-at-startup @@ -134,8 +135,6 @@ environment { DMS_RUN_GREETER "1" } -spawn-at-startup "sh" "-c" "$QS_CMD; niri msg action quit --skip-confirmation" - debug { keep-max-bpc-unchanged } @@ -154,12 +153,27 @@ NIRI_EOF else TEMP_CONFIG=$(mktemp) cat "$COMPOSITOR_CONFIG" > "$TEMP_CONFIG" + fi + # Append includes if override_files exist + OVERRIDE_FILES=( + /usr/share/greetd/niri_overrides.kdl # for building into a system image + /etc/greetd/niri_overrides.kdl # for local overrides + ) + for override_file in "${OVERRIDE_FILES[@]}"; do + if [[ -e "$override_file" ]]; then + # TODO: maybe move to optional=true when Niri Next drops, so we can avoid these checks ;-) + cat >> "$TEMP_CONFIG" << NIRI_EOF + +include "$override_file" +NIRI_EOF + fi + done + # Append spawn command cat >> "$TEMP_CONFIG" << NIRI_EOF spawn-at-startup "sh" "-c" "$QS_CMD; niri msg action quit --skip-confirmation" NIRI_EOF COMPOSITOR_CONFIG="$TEMP_CONFIG" - fi exec niri -c "$COMPOSITOR_CONFIG" ;;