Isso deve funcionar, eu testei na saída que você postou. Note que eu usei zenity
desde yad
não está nos repositórios da Debian. Isso também é bash
.
(
exec {fd}>&1
stdbuf -oL pacaur -S clementine |
stdbuf -oL tee /dev/fd/$fd |
stdbuf -oL sed -n '/\.\.\.$/ s/^/# /p' |
zenity --progress --title="pacaur progress" --pulsate \
--width=450 --auto-close
)
Uma coisa que pode dar errado é que pacaur
pode imprimir dados de progresso para stderr
em vez de stdout
, caso em que a segunda linha provavelmente precisará ser:
stdbuf -eL -oL pacaur -S clementine 2>&1 |
Eu adicionei as linhas exec {fd}>&1
e tee /dev/fd/$fd
para que a saída também seja impressa no terminal. Sem isso, este script será simplesmente:
stdbuf -oL pacaur -S clementine |
stdbuf -oL sed -n '/\.\.\.$/ s/^/# /p' |
zenity --progress --title="pacaur progress" --pulsate \
--width=450 --auto-close
Por acaso, na minha opinião, o terminal é o melhor lugar para procurar o progresso da instalação, mas desde que você perguntou, zenity
é uma coisa boa para brincar.