Di recente ho aggiornato (con apt-get dist-upgrade) le mie scatole Kubuntu e Lubuntu Linux, e ora ogni volta che accedo a una di queste macchine, ricevo questo messaggio:
tput: No value for $TERM and no -T specified
Ecco uno screenshot del messaggio esatto:

Questo è successo sia sulla mia macchina Lubuntu che su Kubuntu, e non è stato un problema fino a quando non ho effettuato l'aggiornamento; quindi sospetto che non sia stato un errore dell'utente.
Come posso risolvere questo problema?
AGGIORNARE
Ho rintracciato questo nel mio file .bashrc, che viene chiamato dal mio file .profile. Tuttavia, il fatto che il mio file .bashrc ora venga eseguito quando eseguo un accesso alla GUI, mentre non è stato prima di eseguire l'aggiornamento è un po 'strano. E no, non ho modificato il mio file .bashrc o il mio .profile di recente. Inoltre, bash non è la mia shell predefinita.
Il problema è che sto chiamando tputnel mio file .bashrc per impostare le variabili da utilizzare per aggiungere colore al prompt. Ma al momento (inappropriato) in cui il mio file .bashrc ora viene eseguito, $TERMnon è impostato.
fgRed=$(tput setaf 1) ; fgGreen=$(tput setaf 2) ; fgBlue=$(tput setaf 4)
fgMagenta=$(tput setaf 5) ; fgYellow=$(tput setaf 3) ; fgCyan=$(tput setaf 6)
fgWhite=$(tput setaf 7) ; fgBlack=$(tput setaf 0)
bgRed=$(tput setab 1) ; bgGreen=$(tput setab 2) ; bgBlue=$(tput setab 4)
bgMagenta=$(tput setab 5) ; bgYellow=$(tput setab 3) ; bgCyan=$(tput setab 6)
bgWhite=$(tput setab 7) ; bgBlack=$(tput setab 0)
Domanda aggiornata: come devo risolvere questo problema? Dovrei $TERMmettermi? O non dovrei semplicemente impostare queste variabili se $TERMnon è impostato?
AGGIORNAMENTO 2
Una soluzione che ho provato è stata verificare se è $TERMstato impostato. Ma questo non sembra funzionare; Ho ancora ricevuto lo stesso messaggio di errore. Ecco il codice:
if [ ! "$TERM" = "" ]; then
#Do stuff here
fi
A quanto pare è $TERM stato impostato, ma ha tputcomunque concluso che non lo era.
.profilecorre indipendentemente dalla shell predefinita