Adicionando esta linha ao final de uma cópia do seu script:
echo "r: '$response'; v: '$var'; b: '$reboot'"
fornece esta saída:
r: 'button returned:yes'; v: 'button returned:yes '; b: 'False'
Parece que osascript
está anexando um espaço à saída e, como "string"
não é igual a "string "
, seu teste não funciona como esperado.