Tanto quanto eu posso dizer execi deve funcionar, não sei por que isso não acontece. De qualquer forma, recebo conky para mostrar meu IP público da seguinte forma:
${texeci 3600 wget -qO - http://cfajohnson.com/ipaddr.cgi}
Tente substituir execi por texeci , veja se isso ajuda.
Outro possível problema é que conky pode ser carregado antes de sua conexão ser estabelecida. Em caso afirmativo, irá executar o comando execi na inicialização, mas não obterá resultados, pois você ainda não está conectado. Eu consigo contornar este tipo de problema, lançando conky através de um script wrapper que se parece com isso:
#!/bin/bash
sleep 20
conky