Rendiamo il terminale di Fedora 15 più funzionale e accattivante


Terminale Fedora 15

Bene rieccoci qui a scrivere di Fedora 15, che ormai uso felicemente da qualche tempo.

Una delle cose che non mi andavano giù di questa distribuzione GNU/Linux è il terminale, che ha un prompt dei comandi predefinito minimale e non si capisce mai in quale directory ci si trova e poi, a mio parere, troppo anonimo e poco divertente.

Quindi mi sono messo all’opera è ho trovato un fantastico script che fa proprio al caso mio, rendendo il terminale molto simile a quello di Linux Mint.

Bene ora vediamo come ho fatto per ottenere il risultato che vedete in figura.

Innanzitutto installiamo i programmi che servono per vedere gli animali che parlano nel terminale, quindi apriamo il terminale e digitiamo il seguente comando:

sudo yum install fortune-mod cowsay

A questo punto se vogliamo che fortune parli in italiano bisogna installarne la lingua, che nei repository di Fedora non ho trovato, per cui scarichiamo il file rpm direttamente dal sito del progetto fortune cliccando qui e poi lo installiamolo andando nella cartella dove lo abbiamo scaricato, facendoci doppio click e seguendo le istruzioni di installazione.

A questo punto però mi sono accorto che non funzionava e parlava ancora inglese quindi ho cercato l’errore, molto semplicemente bisogna rinominare la cartella con la lingua italiana.

Quindi sempre da terminale diamo il seguente comando:

sudo mv /usr/share/games/fortune/fortune-it /usr/share/games/fortune/it

Perfetto ora che i preparativi sono terminati passiamo allo script per il terminale.

Ora dobbiamo creare o modificare, nel caso esista già, il file di configurazione del terminale quindi da esso diamo il seguente comando:

gedit ~/.bashrc

In teoria dovrebbe risultare vuoto ma se c’è scritto qualcosa sostituitela con lo script qui sotto e salvate il file.

Attenzione per motivi di visualizzazione dovuta all’impaginazione del tema di WordPress, lo script non viene visualizzoto completamente, quindi vi consiglio di fare copia e incolla per averlo completo e non avere problemi, per capire dove inizia  e dove finisce lo script metto dei trattini da non copiare.

————————————————————————————-

# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

# It's NOT good idea to change this file unless you know what you
# are doing. Much better way is to create custom.sh shell script in
# /etc/profile.d/ to make custom changes to environment. This will
# prevent need for merging in future updates.

# By default, we want this to get set.
# Even for non-interactive, non-login shells.
if [ "`id -gn`" = "`id -un`" -a `id -u` -gt 99 ]; then
	umask 002
else
	umask 022
fi

# are we an interactive shell?
if [ "$PS1" ]; then
    case $TERM in
	xterm*)
	    PROMPT_COMMAND='echo -ne "33]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}"; echo -ne "07"'
	    ;;
	screen)
	    PROMPT_COMMAND='echo -ne "33_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}"; echo -ne "33\\"'
	    ;;
	*)
	    ;;
    esac
    [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
    # You might want to have e.g. tty in prompt (e.g. more virtual machines)
    # and console windows
    # If you want to do so, just add e.g.
    # if [ "$PS1" ]; then
    #   PS1="[\u@\h:\l \W]\\$ "
    # fi
    # to your custom modification shell script in /etc/profile.d/ directory
    
    if [ -z "$loginsh" ]; then # We're not a login shell
	# Not all scripts in profile.d are compatible with other shells
	# TODO: make the scripts compatible or check the running shell by
	# themselves.
	if [ -n "${BASH_VERSION}${KSH_VERSION}${ZSH_VERSION}" ]; then
            for i in /etc/profile.d/*.sh; do
	        if [ -r $i ]; then
	            . $i
	        fi
	    done
	    unset i
	fi
    fi
fi

# Colors in Terminal
if [ $USER = root ]; then
	PS1='\[\e[1;31m\][\u@\h \W]\$\[\e[0m\] '
else
	PS1='\[\e[01;32m\]\u@\h\[\e[00m\] \[\e[01;34m\]\W\[\e[00m\]\[\e[1;32m\]\$\[\e[m\] '
fi
# Display Fortune
if [ "$PS1" ]; then
fortune | cowsay -f $(ls /usr/share/cowsay | shuf -n1)
fi

——————————————————————————————–

Benissimo ora se tutto è andato liscio, una volta salvato e chiuso il file, chiudete e riaprite il terminale e dovreste avere un risultato simile al mio, se invece riscontrate dei problemi non esitate a segnalarmeli e per ritornare allo stato precedente è sufficiente cancellare il file creato in precedenza, aprendo la vostra cartella home date la combinazione di tasti Ctrl+h per vedere i file nascosti e cancellate il file .bashrc (il punto all’inizio dei files o cartelle indica che sono files o cartelle nascosti)

Se avete variazioni sul tema siamo sempre qui ad accogliere qualunque suggerimento.

Buon divertimento che con Linux si può.

Autore: Luciano Boccacciari

Io vengo dal futuro...

8 pensieri riguardo “Rendiamo il terminale di Fedora 15 più funzionale e accattivante”

  1. Ciao Luciano e grazie come sempre. 😀
    Ho fedora 15 e dopo un pò ho cercato di eliminare fortune.
    Da come spieghi nel trd …basta andare a cancellare il file creato in precedenza. “.bashrc”
    ma fatto questo ,il terminale non mi funziona più .
    Quando apro il terminale (gnome) non mi viene fuori più il mio nome ecc. ma solo la scritta ” bash-4.2$ ”
    devo ricompilare quel file con all’interno le mie credenziali?
    stò girando un pò nel vuoto.
    Ti sarei grato se potessi aiutarmi.
    Grazie e buon lavoro.

    "Mi piace"

      1. Grazie mille 😀
        dando uno sguardo al file avevo già eliminato quelle righe..
        Comunque grazie per il link, veramente carino….
        Ot+richiesta 😀
        una miniguida su screenfetch per fedora???
        perchè per arch si trova in pacchetto nei repo non ufficiali ma per fedora non saprei dove collocare la cartella estratta dal tar.
        Scusami per le continue richieste.
        Grazie anticipatamente. 😀

        "Mi piace"

        1. Allora vai su questo sito http://git.silverirc.com/cgit.cgi/screenfetch-dev.git/ scarichi il tar.gz più aggiornato
          Lo estrai e controlli se il file screenfetch-dev è eseguibile, altrimenti lo rendi eseguibile, tasto destro sul file, Proprietà, Permessi…
          A questo punto apri il terminale nella cartella dove c’è il file screenfetch-dev e dai questo comando:
          sudo cp screenfetch-dev /usr/bin/screenfetch
          Ok ora se tutto è andato bene dai nel terminale il comando screenfetch
          Se poi vuoi sostituirlo a fortune all’avvio del terminale, aggiungi il comando screenfetch alla fine del file .bashrc

          Buon divertimento 😉

          "Mi piace"

      1. Si però se messo in file .sh … e si creano per Debian …, poi si ricopia nello stesso foglio e si sostituiscono tutti gli apt con i yum … poi il Linux stesso riconosce e non riconosce i propri comandi e anzi : si potrebbe usare il plug in di Gestione snippet di gedit per velocizzare e aggiungere ad esempio “apt-get*” e i comandi … poi sostituire “apt-get*” con “Yuom e altri” e dopo sostituire infine * con nulla che si cancella (veloce veloce ) . comunque i comandi erano questi :sudo su o su
        mkdir /home/UP/
        mv FILE /usr/bin/
        aptitude install Dipendenza (penso che aptitude sia universale ,se no come detto pocanzi )

        "Mi piace"

Lascia un commento