Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "AmbienteGrafico/I3"
Differenze tra le versioni 18 e 19
Versione 18 del 22/01/2015 22.55.55
Dimensione: 13454
Commento:
Versione 19 del 22/01/2015 22.57.46
Dimensione: 13609
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
#format wiki
#LANGUAGE it
<<BR>>
<<Indice(depth=1)>>

<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=591113"; rilasci="")>>


Problemi in questa pagina? Segnalali in questa discussione

Introduzione

i3 è un tiling window manager, leggero, veloce e personalizzabile.

Installazione

Installare il pacchetto i3.

Avvio

Nella finestra di login selezionare la voce i3 ed effettuare il login.

Per le installazioni minimali, modificare con un edior di testo il file nascosto ~/.xinitrc ed aggiungere la stringa

exec i3

Se il file non esiste crearlo.

Modificare come segue:

  #!/bin/sh
  #
  # ~/.xinitrc
  #
  # Executed by startx (run your window manager from here)
  
  if [ -d /etc/X11/xinit/xinitrc.d ]; then
    for f in /etc/X11/xinit/xinitrc.d/*; do
      [ -x "$f" ] && . "$f"
    done
    unset f
  fi
  
  # exec gnome-session
  # exec startkde
  # exec startxfce4
  # ...or the Window Manager of your choice
  #exec startxfce4
  exec i3

salvare il file ed avviare i3 con "startx".

All'avvio della prima sessione di i3, seguire il wizard iniziale per impostare il tasto Modificatore (tasto Super o Alt).

Scorciatoie utili per iniziare:

Mod+d aprire il menu (dmenu)

Mod+Invio aprire una finestra di terminale

Mod+Shift+e logout

Mod+Shift+c ricaricare il file di configurazione

Mod+Shift+r riavviare i3

Per maggiori informazioni sulle scorciatoie visitare questa pagina

Configurazione

Il file di configurazione di i3 si trova nella cartella nascosta ~/.i3 presene nella propria Home.

Spegnimento, riavvio, blocca schermo, sospensione, ibernazione, logout

Installare il pacchetto consolekit. Aggiungere al file di configurazione (fonte):

set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
mode "$mode_system" {
    bindsym l exec --no-startup-id ~/.i3/i3exit lock, mode "default"
    bindsym e exec --no-startup-id ~/.i3/i3exit logout, mode "default"
    bindsym s exec --no-startup-id ~/.i3/i3exit suspend, mode "default"
    bindsym h exec --no-startup-id ~/.i3/i3exit hibernate, mode "default"
    bindsym r exec --no-startup-id ~/.i3/i3exit reboot, mode "default"
    bindsym Shift+s exec --no-startup-id ~/.i3/i3exit shutdown, mode "default"  

    # back to normal: Enter or Escape
    bindsym Return mode "default"
    bindsym Escape mode "default"
}
bindsym $mod+Pause mode "$mode_system"

Modificare la scorciatoia secondo le proprie esigenze. In questo esempio viene usato il tasto Pausa.

Creare nella cartella .i3/ un file chiamato i3exit e aggiungere al suo interno:

lock() {
    i3lock
}

case "$1" in
    lock)
        lock
        ;;
    logout)
        i3-msg exit
        ;;
    suspend)
        lock && dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
        ;;
    hibernate)
        lock && dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate
        ;;
    reboot)
        dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
        ;;
    shutdown)
        dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
        ;;
    *)
        echo "Usage: $0 {lock|logout|suspend|hibernate|reboot|shutdown}"
        exit 2
esac

exit 0

Rendere eseguibile il file i3exit con

chmod +x ~/.i3/i3exit

di default la funzione lock, e di conseguenza anche sospensione e ibernazione, presentano una schermata bianca. Per sbloccare lo schermo, inserire la propria password e premere INVIO.

Personalizzazione

Configurare il proprio terminale

Per impostazione predefinita i3 usera' il terminale predefinito nel sistema. Per avviare il proprio emulatore di terminale è possibile impostare una variabile nel proprio .bashrc, aggiungendo:

export TERMINAL=nome_emulatore_terminale

Oppure, più semplicemente, modificare ~/.i3/config cambiando:

bindsym $mod+Return exec i3-sensible-terminal

con

bindsym $mod+Return exec xfce4-terminal

per avviare (ad esempio) il terminale di Xfce.

Modificare il menu

Il menu di default, accessibile con i tasti mod+d, è dmenu. Il pregio/difetto di questo menu è che mostra tutti gli eseguibili presenti nel sistema, inclusi i comandi del terminale. È possibile cambiare il comportamento del menu, modificando la seguente riga nel file di configurazione:

bindsym $mod+d exec dmenu_run

con

bindsym $mod+d exec --no-startup-id i3-dmenu-desktop

i3-dmenu desktop cerca e mostra solo le applicazioni fornite di file '.desktop', ottenendo così il comportamento dei menu sui più comuni ambienti desktop.

Un'alternativa ad i3-dmenu-desktop è j4-dmenu-desktop, che potra' essere installato scaricandone il sorgente e compilandolo seguendo le istruzioni presenti su github alla pagina ufficiale del progetto.

Impostare lo sfondo

Installare il pacchetto feh. A questo punto, dal terminale impostare lo sfondo con:

feh --bg-fill /percorso/per/immagine/di/sfondo.png

È possibile usare altre opzioni secondo le proprie necessità:

feh --bg-scale

feh --bg-center

feh --bg-max

feh --bg-tile

Per ripristinare lo sfondo ad ogni avvio, con un editor di testo, aprire il file ~/.i3/config ed inserire la riga seguente:

exec --no-startup-id sh ~/.fehbg

In alternativa e' possibile impostare lo sfondo con nitrogen.

Installare il pacchetto nitrogen. Lanciare nitrogen dal terminale con:

nitrogen /percorso/cartella/immagini/

Impostare lo sfondo desiderato. Per ripristinare lo sfondo ad ogni avvio, aprire il file di configurazione e inserire la riga seguente:

exec --no-startup-id nitrogen --restore &

Personalizzare la barra di stato di i3

Copiare il file di configurazione globale nella cartella di configurazione della propria home:

cp /etc/i3status.conf ~/.i3

Modificare a proprio piacimento il file di configurazione. Aprire il file di configurazione di i3 ~/.i3/config e modificare la seguente riga

status_command i3status

in

status_command i3status --config ~/.i3/i3status.conf

Per impostare i colori usati nella barra, aggiungere le righe seguenti al file di configurazione, nella sezione bar:

  colors {
separator #ffffff
background #000000
statusline #ffffff
#colorclass           <border> <background> <text>
focused_workspace       #000000 #52AD91 #000000
inactive_workspace      #000000 #000000 #31658C         
urgent_workspace        #333333 #95A7CC #000000
}

Modificare i colori secondo i propri gusti.

E' inoltre possibile usare conky al posto di i3status. Per l'esempio che segue abbiamo seguito la guida ufficiale, modificando solamente il percorso dei files per maggiore comodita' e ordine (per avere tutti i files nella stessa cartella). Installare il pacchetto conky.

Creare un file vuoto nella cartella nascosta ~/.i3/ chiamato conky-i3bar. Aprire il file con un editor di testo e aggiungere:

# Send the header so that i3bar knows we want to use JSON:
echo '{"version":1}'

# Begin the endless array.
echo '['

# We send an empty first array of blocks to make the loop simpler:
echo '[],'

# Now send blocks with information forever:
exec conky -c $HOME/.i3/conkyrc

Salvare le modifiche e dare i permessi di esecuzione al file con il comando:

chmod +x ~/.i3/conky-i3bar

Aprire il file di configurazione di i3 e modificare la riga

status_command i3status --config ~/.i3/i3status.conf

Con

status_command $HOME/.i3/conky-i3bar

Creare il file conkyrc nella cartella ~/.i3 e, come suggerito dalla guida ufficiale, aggiungere:

out_to_x no
own_window no
out_to_console yes
background no
max_text_width 0

# Update interval in seconds
update_interval 2.0

# This is the number of times Conky will update before quitting.
# Set to zero to run forever.
total_run_times 0

# Shortens units to a single character (kiB->k, GiB->G, etc.). Default is off.
short_units yes

# How strict should if_up be when testing an interface for being up?
# The value is one of up, link or address, to check for the interface
# being solely up, being up and having link or being up, having link
# and an assigned IP address. 
if_up_strictness address

# Add spaces to keep things from moving about?  This only affects certain objects.
# use_spacer should have an argument of left, right, or none
use_spacer left

# Force UTF8? note that UTF8 support required XFT
override_utf8_locale no

# number of cpu samples to average
# set to 1 to disable averaging
cpu_avg_samples 2

# Stuff after 'TEXT' will be formatted on screen
TEXT

# JSON for i3bar

 [{ "full_text" : "Home ${fs_free /home} Free" , "color" : "\#ffffff" },
  { "full_text" : "RAM ${memperc}%" , "color" :
    ${if_match ${memperc}<90}"\#ffffff"${else}"\#ff0000"${endif} }],

Modificare conkyrc secondo le proprie esigenze.

Impostare colori finestre

Per impostare i colori dei bordi e della barra del titolo delle finestre, aggiungere queste righe al file di configurazione:

# Colors
#class                 border  backgr. text    indicator
client.focused          #ffffff #31658C #ffffff #31658C
client.focused_inactive #4D4D4D #4D4D4D #4D4D4D #4D4D4D
client.unfocused        #4D4D4D #4D4D4D #4D4D4D #4D4D4D
client.urgent           #4D4D4D #4D4D4D #4D4D4D #4D4D4D

Modificare i colori a proprio piacimento.

Regolare il volume

Aggiungere le seguenti righe al proprio file di configurazione:

bindsym $mod+Page_Up exec --no-startup-id amixer -q set Master 3%+ -q
bindsym $mod+Page_Down exec --no-startup-id amixer -q set Master 3%- -q
bindsym $mod+End exec --no-startup-id amixer -q set Master toggle

In alternativa e' possibile avere un tradizionale pulsante nella tray bar installando il pacchetto volumeicon-alsa. Avviarlo aggiungendo al file di configurazione:

exec --no-startup-id volumeicon

Gestione connessioni

Per gestire facilmente le proprie connessioni (come le reti wifi) si può aggiungere una comoda icona nella tray bar. Aprire il file di configurazione ed aggiungere:

exec --no-startup-id nm-applet

Clipboard manager

Per usare le normali funzionalità di copia/incolla è necessario installare un clipboard manager.

Installare il pacchetto parcellite. Avviare il demone di parcellite all'avvio aggiungendo la riga che segue al proprio file di configurazione:

exec --no-startup-id parcellite -d

Se si preferisce è possibile utilizzare il clipboard manager di XFCE. Installare il pacchetto xfce4-clipman. Avviarlo con

exec --no-startup-id xfce4-clipman

Assegnare scorciatoie per avviare applicazioni

Aggiungere al proprio file di configurazione:

bindsym $mod+tasto exec --no-startup-id eseguibile

Esempio per firefox

bindsym $mod+Return exec --no-startup-id firefox

Lanciare applicazioni all'avvio di i3

Aggiungere al proprio file di configurazione:

exec --no-startup-id eseguibile

Avviare applicazione in uno specifico workspace

Per conoscere la stringa class usare il comando xprop contenuto in x11-utils. Avviare xprop in un terminale e cliccare sulla finestra del programma interessato (Skype in questo esempio). Cercare alla fine dell'output generato la riga:

WM_CLASS(STRING) = "skype", "Skype"

copiare la voce in maiuscolo.

Assign [class="Applicazione"] workspace

Esempio per skype

assign [class="Skype"] 1

Avviare applicazioni in floating mode

for_window [class="Applicazione"] floating enable

Esempio per skype

for_window [class="Skype"] floating enable

Selezionare finestre al passaggio del mouse

Le impostazioni di default di i3 permettono di selezionare una finestra posizionando il cursore del mouse su di essa. Se questo non è il comportamento desiderato, i3 permette di selezionare la finestra con un click o con la tastiera. Aggiungere al file di configurazione:

focus_follows_mouse no

Ulteriori risorse