Rubrica SISTEMI OPERATIVI

Il Passo Successivo

AfterStep

Per chi usa linux e non può fare a meno dell'interfaccia grafica, per i nostalgici di NextStep, per chi fa collezione di widows manager...

di Francesco Sileno

X Window is not Windows

Quando si parla di X Window, di solito si pensa ad una shell grafica per unix, tanto che qualcuno l'ha definito "un clone di Windows 3.1" (non mi ricordo chi fosse, era un articolo su una qualche presunta rivista di informatica).
In effetti si può considerare X Window (niente 's' finale, attenzione!) come una shell, più o meno al modo in cui lo è la WorkPlace di OS/2. Ma decisamente non come lo è windows[3.1|95] per dos.

Rapidamente, un sistema X si basa su 2 componenti:

X Server - gestisce la scheda video, fornisce delle direttive elementari di disegno su schermo indipendenti da essa. Fornisce un protocollo per comunicare con altri sistemi o applicazioni X. L'X Server è dipendente dall'hardware, attualmente su linux è in uso XFree86, basato su X11R6 dell' X Consortium. Oltre a fare il lavoro dei device driver di Windows (ma non usa device driver, il supporto per la scheda è compilato direttamente nell' X Server), fa si che più sistemi X possano comunicare ed interagire tra loro.

Window Manager - si appoggia sull' X Server, provvede a fornire l'interfaccia vera e propria, la gestione dei menu e delle finestre. E' il Window Manager a decidere come disegnare le finestre, quali bottoni metterci, quale stile usare, etc...

A differenza di Windows, in X Window l'icona esiste esclusivamente per rappresentare un applicazione ridotta, oltre a non esistere folder. Almeno, finora nessuno ha avuto la necessità di fare un WM che facesse queste cose.
Le applicazioni si lanciano o configurando il menu del WM, o da una sessione terminale (che non vuol dire che sta per morire, ma che emula un terminale text mode, una cosole).


AfterStep

Il Windows Manager più diffuso tra la comunità linux è senz'altro FVWM, se non altro perchè fornito di default con la maggior parte delle distribuzioni, e molto leggero.
Basato contemporaneamente su FVWM e sull' interfaccia fornita da NextStep, nasce invece AfterStep.
Mantenenendone le caratteristiche di base, fornisce un ambiente più vivace e in alcuni tratti decisamente più confortevole. AfterStep Logo


Le finestre e i Menù

La prima e unica limitazione che salta all'occhio è la impossibiltà di definire i bottoni che appaiono nella barra titolo di una finestra: mentre con FVWM è possibile inserirne fino a 10, assegnando ad ognuno di essi la funzione desiderata, con AfterStep ve ne sono solo due, uno per chiudere e uno per iconizzare, immutabili. Tutto sommato, più che sufficenti. Per compensare, le icone si deiconifizzano con un solo click.

La barra titolo, così come i menu, rimangono tuttavia personalizzabili nel tipo di colore o sfumatura di colori assegnabili, oltre ovviamente al font. Con la barra principale, oltre a poter massimizzare la finestra, si può anche ottenere l'effetto arrotolamento: rimane solo la barra, la finestra sparisce. Con un paio di click la finestra si srotola.

Le finestre hanno sul lato inferiore una sottile barra che permette di ridimensionarla, lasciando i lati privi di ingombranti suppellettili, tranne un eventuale barra di scorrimento che comunque viene inserita dall'aplicazione lanciata.

I menù sono completamente personalizzabili, con tanto di annidamenti, appaiono clickando col mouse sul desktop, e a differenza di FVWM, lasciando il bottone il menù conitnua a rimanere. Per ogni bottone del mouse, è possibile definire un tipo di menù da visualizzare.
E sono context-sensitive: ovvero si può fare in modo che il menù venga scelto non solo in base al bottone del mouse, ma anche secondo la posizione in cui ci si trovava in quel momento: su una barra di una finetra, sulla cornice, sullo sfondo, etc.

Main Menu


Il Desktop

Come per FVWM, c'è la possibilità di usare più di un desktop, in aggiunta alla capacità dell' X Server di fornire schermi virtuali di dimensioni maggiori della risoluzione usata. Ad esempio, io lavoro ad una risoluzione di 800x600x65000, con schermi virtuali a 1024x768 e 3 desktop. Vi pare tanto? Beh, conosco un paio di persone che lavorano a 1024x768, schermi virtuali a circa 2000x2000 e ben 9 desktop. Mentre la risoluzione virtuale dipende dalla memoria disponibile sulla scheda video, i desktop sono limitati solo dalle vostre necessità, anche se occupano memoria e potrebbero causare swapping.
Desktop

Lo sfondo del desktop non è gestito dal Windows Manager, ma dall'X Server, in effetti il desktop viene visto come una finestra, la finestra root. Quindi, con appositi programmi si possono impostare colori, immagini o cose molto simpatiche, eventualmente differenziando per ogni desktop (anche se qui entra in gioco anche la configurazione del WM). Io uso xheart come sfondo, ovvero una rappresentazione in tempo reale della terra vista dallo spazio, con tanto di illuminazione solare aggiornata ogni 5 minuti. Esiste anche una simulazione di acquario, animata, sullo stile dello screen saver After Dark.


Wharf

Ovvero la barra accessori. Posizionabile in orizzontale o in verticale, in mezzo allo schermo o di lato, completamente configurabile. Si possono creare delle sotto-barre, per cui un bottone fa uscire fuori (con fluidità, per altro), una nuova serie di icone.
Oppure si possono inserire applicazioni funzionanti, invece di una morta icona: nell'immagine di esempio sono attivi rispettivamente un orologio, un semplice analizzatore di carico della macchina, un gestore di desktop. A voi il gusto di riconscerli.


Gli Accessori

C'è un modulo per la gestione degli effetti sonori, uno per l'inserimento di animazioni nella iconificazione delle finestre.
Immancabile la possibilità di muovere una finestra visualizzandola nel suo intero, lasciando eventualmente la possibilità di visualizzare solo i bordi per finestre troppo grosse.
Si possono definire le regioni di desktop in cui devono finire le icone, si può fare in modo che le finestre vengano posizionandole automaticamente su schermo, oppure che sia l'utente a posizionale in fase di apertura, si può decidere di poter passare da un dektop all'altro spostando il mouse sui bordi dello schermo (virtuale o no), o di passare il focus e/o posizionare in primo piano automaticamente la finestra che si trova sotto il puntatore del mouse, si possono definire delle funzioni o comandi o applicazioni da assciare a eventi di mouse o tastiera... dubito seriamente che ci sia qualcosa che non riuscare a fare...


La Configurazione

Tutto quello elecnato finora si definisce in un solo file di configurazione, file ascii da editare a mano (ma esiste in giro un pannello di controllo dedicato appsotiamente ad AfterStep, cosi' come un lettore di CD ed altri ammenicoli). I menu e le funzioni a cui ho accennato vengono definite qui, possono usare una serie di comandi predefiniti di AfterStep, comandi che in genere eseguono le funzioni del WM stesso (aprire/chiudere fineste, spostarsi su un altro desktop, etc.).


Compilazione e Installazione

Decisamente facile, è di serie uno script che configura, compila e installa tutto quanto, tranne forse le immagini per gli sfondi e alcune icone. La compilazione è avvenuta con successo sia su un P133 con SlackWare 3.1, che su una SPARC20 con su RedHat 4.1.
Oh, certo, anche sul 386 funziona tutto perfettamente.


On the Road

Sul mio P133 con 24Mb va decisamente bene, lo andava anche con 16Mb.
Se però si comporta in modo strano, allora molto probabilmente avete deiproblemi di librerie, come era successo a me aggiornando da solo la SlackWare 3.0 al kernel 2.0. Non ho mai identificato con certezza quale fossero le librerie, ma avevo molti altri problemi.
Se privato di Wharf e dei moduli di animazione ed effetti sonori, richiede pressapoco le stesse risorse che chiede FVWM. Comunque, i moduli non sono poi così esigenti:

  PID SIZE  COMMAND
  172  280  /usr/lib/X11/afterstep/Audio 14 5 /home/cthulhu/.steprc 0 0 
  170  580  /usr/lib/X11/afterstep/Animate 10 5 /home/cthulhu/.steprc 0 0 
  171  772  /usr/lib/X11/afterstep/Wharf 12 5 /home/cthulhu/.steprc 0 0 
  168  876  afterstep 
---------------------------------------------------------------------------------
      2508 Kbytes
Mentre il solo FVWM chiede:
  PID SIZE  COMMAND
  309  800  fvwm 
Ovvero 76 KB meno di AfterStep (e si tratta di FVWM 1.2, non della 2.0).
Poi vanno aggiunti gli altri processi come X Server, orologi, gestori di desktop, sfondi interattivi, etc. per avere una visione dell'occupazione TOTALE di X Window, ma questo varia a seconda delle vostre configurazioni.

Personalmente non uso nessun modulo, menù e terminali sono più che sufficenti. L'unico problema che ho riscontrato è quando si tratta di usare il DESTROY su alcuni programmi cattivelli che non vogliono più funzionare (come Netscape quando non trova il DNS, per esempio): alcune volte i processi rimangono come zombie, non vengono correttamente distrutti. Ma non so se si tratta di AfterStep, di risultati imprevedibili dovuti a DESTROY stesso, o di applicazioni mal progettate.


Conclusioni

Provatelo, ne vale la pena:

Home Page ufficiale di AfterStep
invitatamente,
Cthulhu


Ultima modifica il: Tue Jun 2 14:25:01 CEST 1998 da: wwwbeta@beta.it

Copyright © 1994-1997 BETA. Tutti i diritti riservati.


Principale Sommario Informazioni Redazione Browser