Come posso modificare i colors del Terminale GNOME each volta che inizia?

Ho sentito parlare di uno script che cambierà i colors del Terminale GNOME each volta che si avvia. Non ricordo where l'ho visto …

Non ho visto lo script che tu menziona. Ma penso che sia ansible creare un tale script.

Gnome Terminal raccoglie il colore di background dal profilo in uso , in modo che qualsiasi modifica influenzerà il colore di background di tutti i terminali utilizzando lo stesso profilo.

Detto questo, la chiave di configuration è memorizzata in / apps / gnome-terminal / profili / Default / background_color , where Default è il profilo attualmente utilizzato.

Può essere impostato in questo modo:

gconftool-2 –set "/ apps / gnome-terminal / profili / default / background_color" – tipo string "# E376DDDDFFFF"

Quindi, indovino che sia ansible scrivere uno script per clonare il profilo predefinito in volo, modificarlo in background_color , invocare il terminal gnome con questo profilo e eliminare il profilo prima di uscire. Avrai anche bisogno di un database di combinazioni di colors di primo piano / background per questo script da utilizzare.


Aggiornamento: Ecco uno script per eseguire ciò che viene discusso in precedenza. Non genera un colore di background random, che dovrai generare usando un elenco.

#!/bin/bash PROFILE_NAME=${RANDOM}_p_${RANDOM} TMP_DIR=/tmp DEFAULT_PROFILE=Default PROFILE_EXPORT_FILE=${TMP_DIR}/${PROFILE_NAME}.xml #replace with program to generate a random background color BACKGROUND_COLOR="#0000AA000" # dump the "Default" profile, replace with new random profile name gconftool-2 --dump /apps/gnome-terminal/profiles/${DEFAULT_PROFILE} > ${PROFILE_EXPORT_FILE} sed -i "s/${DEFAULT_PROFILE}/${PROFILE_NAME}/g" ${PROFILE_EXPORT_FILE} # load the new random profile, change the background color gconftool-2 --load ${PROFILE_EXPORT_FILE} gconftool-2 --set "/apps/gnome-terminal/profiles/${PROFILE_NAME}/background_color" --type string "${BACKGROUND_COLOR}" # add the new random profile to list of profiles PROFILE_LIST=`gconftool-2 --get /apps/gnome-terminal/global/profile_list` NEW_PROFILE_LIST=`echo $PROFILE_LIST | sed "s/]/,${PROFILE_NAME}]/g"` gconftool-2 --set /apps/gnome-terminal/global/profile_list --type list --list-type string "$NEW_PROFILE_LIST" # start gnome-terminal with new random profile, such that the script blocks till terminal is closed. gnome-terminal --window-with-profile=${PROFILE_NAME} --disable-factory # cleanup: remove the new random profile, and remove it from list of profiles gconftool-2 --recursive-unset /apps/gnome-terminal/profiles/${PROFILE_NAME} PROFILE_LIST=`gconftool-2 --all-dirs /apps/gnome-terminal/profiles | sed "s/ \/apps\/gnome-terminal\/profiles\///" | sed -n -e 'H;${x;s/\n/,/g;s/^,//;p;}'` gconftool-2 --set /apps/gnome-terminal/global/profile_list --type list --list-type string '['"${PROFILE_LIST}"']'