Hum, não, isso está errado. Você atribui algo à variável $response e depois canaliza essa atribuição para zenity. Experimente
process | tee /tmp/response.txt | zenity --progress --pulsate --auto-close
response=$( cat /tmp/response.txt )
Dessa forma, a saída será armazenada no arquivo /tmp/response.txt , que você poderá ler posteriormente em uma variável.