Você está clicando no botão antes de self.instvar
ser definido. O manipulador on_textbox_changed
provavelmente nunca é chamado. Inicialize Glade e selecione sua entrada de texto. No editor de propriedades à direita, selecione a guia signals
e conecte o sinal GtkEditable
changed
ao manipulador correto.
Você também deve colocar um comando print dentro de on_textbox_changed
para ver se ele realmente é chamado.
Além disso, esta linha não faz o que você pensa:
command2 = 'xterm -e sudo apt-get install ' and self.instvar
Veja esta sessão interativa:
>>> instvar = "firefox"
>>> "xterm -e sudo apt-get install" and instvar # Your code, wrong output
'firefox'
>>> "xterm -e sudo apt-get install %s" % instvar # Choose one of these
'xterm -e sudo apt-get install firefox'
>>> "xterm -e sudo apt-get install " + instvar
'xterm -e sudo apt-get install firefox'
>>> "xterm -e sudo apt-get install {}".format(instvar)
'xterm -e sudo apt-get install firefox'