#!/bin/sh

repositories=$(git-pending "$@" \
	| grep '^ahead' \
	| lua -e 'for line in io.lines() do print(line:match("[^/]+$")); print((line:gsub("^[^ ]* ", ""))) end' \
)
if [ -z "$repositories" ]
then
	notify-send Git "No pending repositories"
	exit
fi
echo "$repositories" \
	| zenity --list --column Repository --column Path --text "Repositories that need pushing:" --multiple --title "Git" --separator ';' --width 800 --height 300 --print-column=2 2>/dev/null \
	| tr ';' '\n' \
	| xargs -P`nproc` -L 1 -Iā‚¬ sh -c 'cd ā‚¬ && git push'
notify-send Git 'Pushed everything šŸŽ‰'