Slackware: cambiare la localizzazione

Quello che segue vuole semplicemente essere un aiuto per chi, come me, pur avendo l'intenzione di "italianizzare" la sua Slack, non ha idea di dove mettere le mani.

Cambiare localizzazione alla Slackware


Author: Giovanni Mazzamati
Contact: giovanni@majaglug.net
Revision: 0.5
Date: 29/08/2005
Copyright: Questo documento viene rilasciato sotto licenza GPL, versione 2 o successive.

Quello che segue vuole semplicemente essere un aiuto per chi, come me, pur avendo l'intenzione di "italianizzare" la sua Slack, non ha idea di dove mettere le mani.
Come ogni HOW-TO che si rispetti, le indicazoni contenute nel presente testo e/o nei programmi/pacchetti suggeriti, non offrono nessuna garazia per eventuali danni subiti dall'utilizzatore.

Cominciamo

Avete appena installato l'ultima Slack, ma vi siete accorti che non "parla" ancora italiano. Poco male, se seguirete i consigli sotto riportati riuscirete a localizzare in lingua italiana la vostra distro preferita senza sforzi immani.

Le variabili per ogni utente che si logga su un sistema GNU/Linux si trovano in /etc/profile e nel file ~/.profile (ovviamente contenuto nella propria home directory.

Si potrebbero inserire tutte le variabili per la localizzazione semplicemente nel .profile e vivere felici, ma appena creeremo un nuovo utente il problema risalta fuori.

Come avrete capito, ci conviene quindi inserire tutte le modifiche nel profile principale oppure nel /etc/profile.d/lang.sh, ma non la vedo molto pulita, mi piace di più inserire un semplice richiamo per il file /etc/profile.it, che andremo a creare noi, alla fine di /etc/profile.

Il file profile.it dovrà contenere quanto segue:

# /etc/profile.it: Questo file contienne tutte le variabili ambiente
# per la localizzazione del sistema, alcuni alias molto utili
# nell'utilizzo comune ed alcuni abbellimenti alla shell che non
# guastamo mai.

# Localizzazione in italiano
export LC_CTYPE=it_IT@euro
export LC_MONETARY=it_IT@euro
export LC_TIME=it_IT
export LC_NUMERIC=it_IT@euro
export LC_MESSAMES=it_IT@euro
export SUPPORTED=it_IT.ISO-8859:it_IT@euro:it_IT.UTF-8:it_IT:it
export SYSFONTACM=iso15
export LANGUAGE=it_IT@euro
export LOCALE=it_IT@euro
export LC_ALL=

# Setta il prompt della shell:
if [ "$SHELL" = "/bin/bash" ]; then
        if [ "`id -u`" = "0" ]; then
                PS1='\[\033[01;31m\]\u\[\033[00m\]@\[\033[01;31m\]\h:\[\033[01;34m\]\w\$\[\033[00m\] '
        else
                PS1='\[\033[01;32m\]\u\[\033[00m\]@\[\033[01;32m\]\h:\[\033[01;34m\]\w\$\[\033[00m\] '
        fi
fi

## Aggiunge la dir ~/bin alla variabile $PATH
PATH=$PATH:~/bin:/opt/qemu/bin

export PATH PS1

## --ALIAS-- ##

## Generici
alias su="su -l"
alias ll="ls -l --color=auto"
alias la="ls -la --color=auto"
alias lh="ls -lh --color=auto"
alias ls="ls --color=auto"
alias loadcd="eject -t /cdrom"
alias loadcdr="eject -t /cdrecorder"
alias ejectcd="eject /cdrom"
alias ejectcdr="eject /cdrecorder"
alias konsole='konsole -ls'

## Masterizzare

# Creare immagine - uso: mkimg 

alias mkimg='mkisofs -J -r -T -o CD-Rom.iso'

# Masterizzare immagine - uso: master-img 

alias master-img='cdrecord -v dev=ATAPI:/dev/hdc speed=8 -eject -data '

# Masterizzare audio - uso: master-aud   

alias master-aud='cdrecord -v dev=ATAPI:/dev/hdc speed=8 -eject -pad -audio'

# Cancellare CD-RW veloce:
alias blank-fast='cdrecord -v dev=ATAPI:/dev/hdc speed=8 blank=fast '

# Cancellare CD-RW:
alias blank-all='cdrecord -v dev=ATAPI:/dev/hdc speed=8 blank=all '

# Copiare  CD:
alias blank-force='cdrecord -v dev=ATAPI:/dev/hdc speed=8 blank=all -force'

# Video
alias cdcp='cdrecord -v -eject dev=ATAPI:/dev/hdc speed=8 -data /dev/cdrom '

# Visualizza VCD
alias vcd='mplayer vcd://1'

# Visualizza divx su macchine lente
alias divx='mplayer -hardframedrop'

Ora non vi rimane che salvare il vostro /etc/profile.it ed includerlo in /etc/profile con questo semplice comando:

# echo ". /etc/profile.it 2>/dev/null" >> /etc/profile

Come vedete non c'è niente di così ostico, un semplice echo aggiunge per noi la riga che ci interessa alla fine del profile di sistema, se poi volete che alcune variabili siano diverse per il singolo utente non dovete far altro che inserirle nel .profile contenuto nella home.

Ma se voglio utilizzare Un pacchetto?

Si può fare anche se non ne vedo una reale necessità. Per far questo basta creare una directory di lavoro con dentro una directory etc dove salveremo i nostri file e con makepkg creeremo il nostro pacchetto.

Le operazioni da eseguire sono molto semplici, basta creare in una directory temporanea la struttura dei pezzi che si vogliono aggiungere più una dir install dove mettere il file descrittivo del pacchetto e lo script che eventualmente volete far eseguire durante l'installazione, insomma una cosa più o meno così:

etc/
etc/profile.it
install/
install/description
install/doinst.sh

Poi, nella directory temporanea date il comando:

# echo "n" | makepkg profile.it-0.1-noarch-1.tgz

ora potete installare il vostro pacchetto, ma ricordate che se vorrete rimuoverlo dovrete eliminare manualmente la riga aggiunta da:

# echo ". /etc/profile.it 2>/dev/null" >> /etc/profile

Ecco fatto, ora la nostra slack parla italiano... ;-P


Un grazie a Michele M. Asciutti (alias miKe) e Luca Lazzaroni (alias LukenShiro) per i preziosi consigli.

Ovviamente sono graditi feedback. Chiunque vuole può mandarmi suggerimenti a giovanni@majaglug.net.