=============================================================================== ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::. ::: :::::::::::: .,-::::: :: .: .,:: .: ;;;'';;' ;;; ;;;;;;;;'''',;;;'````' ,;; ;;, `;;;, .,;; [[[__[[\. [[[ [[ [[[ ,[[[,,,[[[ '[[,,[[' $$""""Y$$ $$$ $$ $$$ "$$$"""$$$ Y$$$P _88o,,od8P 888 88, `88bo,__,o, 888 "88o oP"``"Yo, ""YUMMMP" MMM MMM "YUMMMMMP"MMM YMM ,m" "Mm, Italian HOWTO. [ g e t .P o w e r .W i t h .T h e .B i t c h .O f .I R C ] ============================================================================== ----------------------------------------------------------------- Questo documento illustra come installare ed usare BitchX a grandi linee, e come risolvere alcuni problemi ad esso correlati, su un sistema Intel Linux. -=============================[mailto:nk@bitchx.it] ----------------------------------------------------------------- 1. introduzione 1.1 cos'e' BitchX? 1.2 ok, ho capito cos'e' BitchX, ma cos'e' irc? 1.3 dove scarico BitchX? 2. compilazione ed installazione 3. uso pratico 3.1 hidden windows 3.2 query e dcc 3.3 configurazione 4. personalizzare il proprio client 4.1 scripting & .bitchxrc 4.2 file particolari 5. help on-line --[ 1. introduzione ] ---[ 1.1 cos'e' BitchX? ] BitchX e' un client irc molto simile a ircII, ma a differenza di quest'ultimo ha di default molte opzioni utili, come un server XDCC per lo scambio dei file, protezioni da flood, e molte altre funzioni, inoltre e' molto meno spartano di suo fratello ircII =). Come egli stesso si presenta: BitchX :it isn't only my script, its also my client. ---[ 1.2 Ok, ho capito cos'e' BitchX, ma cos'e' irc? ] Mmmmm. Se vi siete fatti questa domanda forse avete sbagliato a scaricare guida. Tornate ad usare il mIRC. ---[ 1.3 dove scarico BitchX? ] Potete scaricare BX in sorgente o precompilato dai seguenti indirizzi: http://www.bitchx.org/ ftp://ftp.bitchx.org/pub/BitchX/ Al momento in cui sto scrivendo, l'ultima versione e' questa: ftp://ftp.bitchx.org/pub/BitchX/source/ircii-pana-1.0c17.tar.gz ed e' quella alla quale faro' riferimento durante tutto il testo. --[ 2. compilazione ed installazione ] Se volete usare BitchX al massimo delle sue potenzialita', vi conviene sempre scaricare i sorgenti, in modo da poterlo manipolare secondo le vostre esigenze. Se siete capaci di installare un pacchetto dai sorgenti passate avanti, altrimenti di seguito viene spiegato come fare. Una volta preso il pacchetto, scompattatelo in una directory, in questo modo: [root@nembokid]:/tmp# tar xzvf ircii-pana-1.0c17.tar.gz verra' creata la cartella BitchX, entrateci: [root@nembokid]:/tmp# cd BitchX Adesso lanciate il configure con l'opzione --help: [root@nembokid]:/tmp/BitchX# ./configure --help Vi verra' presentata una serie di opzioni per la compilazione di BitchX. Tutte le opzioni che sceglierete ovviamente influenzeranno il risultato finale, quello che sara' il vostro nuovo, fiammante client irc. Potete benissimo lanciare ./configure senza argomenti, se volete fare presto e non avete preferenze particolari. Altrimenti ecco alcune delle opzioni e il loro significato, giusto per fare qualche esempio. --with-tcl Enable Tcl support --with-plugins[=LIST] Build additional BitchX plugins [...] --enable-ipv6 Enable IPv6 support (Linux/FreeBSD only). --with-socks Compile with external SOCKS firewall [...] --enable-cdrom Enable CD-ROM support (Linux only) Quindi, se vogliamo che il nostro caro irc client abbia il supporto per tcl, quello per il napster [ o altri "plugin" che trovate nella directory BitchX/dll ], che possa usare server che supportano il protocollo ipv6, che possa usare i socks per "cammuffare" la connessione, dovremmo lanciare configure piu' o meno cosi': [nembok@nembokid]:/tmp/BitchX$ ./configure --with-tcl --with-plugins=nap --enable-ipv6 --with-socks --enable-cdrom [ ecco cosa succede ] creating cache ./config.cache Welcome to the BitchX-1.0c17 configuration checking for gcc... gcc checking whether the C compiler (gcc ) works... yes [...] ecc ecc ecc... Alla fine vi uscira' una scritta del tipo "The configuration script has finished. You should look through and make any necessary changes to the file "./include/config.h". Significa che se vogliamo, possiamo modificare i sorgenti del client un attimo prima che sia compilato. Se volete potete farlo, andando nella directory include/ ed editando il file config.h .Vi conviene farlo solo nel caso sappiate _realmente_ cosa volete cambiare. Se non avete esigenze particolari, tralasciate questa parte e digitate il classico "make", che provvedera' a fornire gli eseguibili, seguito da un "make install"(da root) che installera' gli eseguibili nella directory /usr/local/bin/ . Ok, adesso siete pronti a rokkeggiare. =) --[ 3. uso pratico ] Lanciamo il nostro bel client per la prima volta, l'unico argomento che gli passiamo per adesso e' il server sul quale collegarsi. [nembok@nembokid]:~$ BitchX irc.bitchx.it [..] nEMBOkiD-BitchX: Auto Response is set to - n[k] Connecting to port 6667 of server irc.bitchx.it [refnum 0] Lo schermo si spezza in 3 parti: La grande parte superiore e' dove leggeremo i messaggi degli utenti e del server,la parte direttamente piu' in basso [ status bar ] ci dara' le statistiche del canale o informazioni sulle query. Alla fine, in basso c'e' la riga di comando, dove scriveremo tutto il nostro input. Dopo di cio', usciranno una serie di scritte che ci dicono su che server siamo, quanti utenti ed ircop sono connessi, etc etc... Adesso scegliamoci un nick: [0] /nick nembokid poi entriamo in un canale a caso [0] /j #bitchx -:- nembokid [nembok@***.nembokid.org] has joined #bitchx -:- [Users(#bitchx:13)] [ nembokid ] [ mitieo ] [@ChRoMe ] [@Ogekuri ] [@Jobber ] [@[LuNa]OuT ] [@DeBiAn ] [@Cassy_Away] [@Kab00m ] [@MaStEr-[sl] [@MusicBox ] [@JukeBox ] [@FAQ ] [@vITE ] -:- Topic (#bitchx): *HO BISOGNO DI HELP RIGUARDO PGP, CHE DIFFERENza C'E' TRA LA FREEWARE VERSION E LA COMMERCIALE? -:- Topic (#bitchx): set by Arcann at Thu Aug 17 09:54:05 2000 -:- Channel #bitchx was created at Thu Oct 21 22:09:16 1999 BitchX ci dice che sul canale #bitchx ci sono 13 utenti di cui ci da i nickname tra parentesi quadre [] .Inoltre ci da il topic ed altri eventuali messaggi del server. Potete richiamare ogni volta che volete la lista dei nick con il comando /scan ---[ 3.1 hidden windows ] Sia i messaggi sul canale, sia tutte le query, verranno visualizzate nella stessa finestra. Se volete tenere tutto su di questa unica finestra, dovrete dialogare con le query tramite i /msg [ o /m ] /msg messaggio se invece vogliamo piu' finestre dobbiamo digitare il comando [0] /window new hide Non dovremmo notare niente. Apparentemente non e' successo nulla, in realta' questo comando apre una finestra ogni volta che lo digitiamo. Per passare poi da una finestra all'altra dovrete usare la combinazione di tasti alt+1 per la prima finestra, alt+2 per la seconda, alt+3 etc... La finestra che aprirete avra' solo la barra di stato, se volete aggiungere una seconda barra ed una barra del topic digitate in questa finestra: [0] /window double on split on ---[ 3.2 query e dcc ] Ora mettiamo il caso che vogliate dedicare una finestra esclusivamente ad una sola persona. Tutto quello che dovete fare e'creare la finestra e scrivere in essa /q es: /q pascaline Starting conversation with pascaline [03:40am][nembok(+iw)] [] [Query: pascaline] la finestra sara' dedicata alla query con pascaline. Se poi volessimo chiudere la query con pascaline ma non la finestra dovremmo scrivere semplicemente /q . Quindi se volete joinare un altro canale in un altra finestra, il gioco e' semplice: /window new hide [ alt+f2 , o la combinazione che corrisponde alla finestra ] /j #canale Un occhio di riguardo meritano le DCC. Per aprire una DCC _chat_ basta digitare il seguente comando: /dcc chat successivamente, avvenuta la connessione, si potra' parlare tramite i soliti /msg , stavolta seguiti da un "=" e dal nick nella forma /msg = ciao, oggi non mi sento per niente bene, e tu? oppure si potra' dedicare una finestra alla DCC chat, e poi digitare un comando simile a quello della query, solo che va aggiunto il "=" per indicare che e' una dcc chat query : /q = es: /q =pascaline Se invece ci viene fatta una richiesta di accettare una dcc chat, non dobbiamo far altro che digitare: /dcc get Per mandare file o accettarli, la sintassi della dcc e' la seguente: manda un file: /dcc send /path/del/file [ vale il completamento automatico col tasto TAB ] es: [#bitchx] /dcc send xeena /tmp/irc/ircii-pana-1.0c17.tar.gz riceve un file: /dcc get es: [#bitchx] /dcc get xeena Un altra feature importante e' quella che ci permette di poter stare su piu' server contemporaneamente. Mi capita spesso di volerlo fare. Ecco come: Aprite una nuova finestra ed in essa scrivete /server + dove e' il server al quale volete connettervi. semplice no? L'operazione si puo' ripetere quante volte volete, per quanti server vogliamo. Fate attenzione a non usare server che fanno parte della stessa rete, altrimenti succede un papocchio :P Avete visto come creare una finestra, ma se volessimo toglierla? niente di piu' semplice, posizionatevi nella finestra e scrivete /window kill Un altro comando simpatico di BX e' /detach , esso "stacca" la vostra sessione irc per poi riprenderla con l'eseguibile scr-bx. ---[ 3.3 configurazione ] Vi troverete certamente a dover settare delle variabili all'interno del vostro bel client IRC. Sara' che dovete decidere se mettere la protezione automatica da flood, o se loggare o meno i vostri discorsi, avrete comunque modo prima o poi di venire a contatto con alcuni paramentri di configurazione di BitchX. [0] /toggle vi da una lista delle opzioni piu' comuni da configurare: ÚÄÄÄÄÄ---Ä-[ BitchX Toggles ]-ÄÄ-ÄÄÄÄÄÄ---Ä--ÄÄ-ÄÄÄÄÄÄÄÄÄ--- -- - - ³ auto_nslookup [Off] ctcp_flood_protection [ On] beep [on] ³ pubflood [Off] flood_protection [ On] kickflood[On] ³ dcc_autoget [Off] flood_kick [ On] msglog [On] ³ llook [Off] deopflood [ On] joinflood[On] | auto_whowas [Off] verbose_ctcp [ On] nickflood[On] : cloak [ On] operview [Off] shitlist [On] : kick_ops [ On] annoy_kick [Off] userlist [On] | hacking [Off] nick_completion [ On] auto_rejoin [On] : aop [Off] auto_away [ On] auto_reconn [On] : bitch [Off] dcc_fast [ On] kick_if_ban[Off] : ftp_grab [Off] mircs [ On] http_grab[Off] : display_ansi [ On] timestamp [Off] log[Off] scrivendo /toggle , si disattiva o attiva l'opzione. Vediamone alcune, quelle usate piu' frequentemente, la cosa e' abbastanza intuitiva, quindi per il significato di ognuna, vi rimando al file BitchX.faq che si trova nella directory doc/ dei file di BitchX. /toggle ctcp_flood_protection [ o /toggle ctcp_f , va bene anche solo la parte evidenziata ]. Attiva o disattiva l'autoignore quando vi floodano di ctcp. /toggle flood_p Attiva o disattiva l'autoignore quando vi pastano in query l'ultimo canto della divina commedia, o quando iniziano a chiacchierare troppo. /toggle deop Attiva o disattiva l'autokick quando c'e' un tentativo di massdeop. /toggle log Attiva il log dei vostri discorsi. /toggle shit Attiva una lista che viene consultata ogni volta che qualcuno entra nei canali in cui siete, se il nome compare sulla lista, viene cacciato. Un altro modo di configurare il vostro BitchX e' quella di settare mano a mano le variabili tramite il comando /set . Queste variabili sono definite nel momento in cui compiliamo il client, a meno che non le abbiate configurate prima di compilarlo. Possono essere comunque modificate in qualsiasi momento dall'utente. La funzione di queste variabili e' spesso nel nome della variabile stessa. Essendo questa una guida per neoutenti, non mi mettero' certo a spiegare tutte queste variabili, e lascio a voi e all'esperienza il compito di scoprirle tutte. Se non sapete modificarle, vuol dire che per il momento non avete bisogno di farlo. --[ 4. personalizzare il proprio client ] ---[ 4.1 scripting & .bitchxrc ] Solo qualche accenno di scripting per semplificarvi l'esistenza =) Mentre starete usando il vostro bel BitchX nuovo di zecca, vi renderete conto di quanto sia a volte noioso e ripetitivo dare certi comandi, cadendo in una routine di /window new hide , /dcc, /query etc etc etc... Qui vi viene in aiuto la vostra fantasia e lo scripting per BX. Si tratta solo di semplici righe di codice che messe insieme automatizzano delle procedure da voi indicate. Chiaro? no? Mmmmm. vediamo qualche esempio. Uno dei modi di automatizzare delle procedure e' tramite gli alias. Aprite il vostro bel BitchX e scrivete: /alias win { window new hide } Abbiamo associato al comando "win" [ di nostra invenzione ] la serie di comandi "window new hide". Cosi' ogni volta che digiteremo /win si eseguira' il comando "window new hide", e si aprira' una nuova finestra. La sintassi per gli alias , ormai l'avrete capito, e' /alias { serie di comandi } Personalmente faccio uso di alias per cose che devo ripetere in continuazione. Ad esempio, per mandare la lista dei miei file uso: /alias lista { msg $0 .sTA pER eSSERTI iNViATA lA lISTA dEi miEi \ file. ..nEMBOkiD.. please wait... dcc SEND $0 /home/nembok/lists/nEMBOkiD_liST.txt } dove $0 e' una variabile che indica in questo caso il nick della persona alla quale voglio mandare il file. La sintassi sara' pertanto: /lista /lista xeena e xeena ricevera' la lista dei miei file =) Altro esempio (a voi scoprire cosa fa :P) /alias slap { /me slaps $0 around a bit with a large trout } "Scriptare" per BitchX non e' molto difficile, e potete trovare maggiori informazioni , tecniche e dettagliate sempre nei doc allegati ai sorgenti di BitchX. Spiegare nel dettaglio queste cose va ben oltre lo scopo di questo documento. Esiste un file che viene caricato prima che voi lanciate BitchX. si chiama .bitchxrc e si trova nella directory home dell'utente. E' un retaggio di ircII, e puo' contenere molte informazioni. di solito e' usato per caricare gli script, ma potete inserirvi anche degli alias, in modo che non dobbiate sempre scriverli quando caricate il client. La sintassi di questo file e' molto intuitiva, inoltre quando installate BitchX, lui crea un .bitchxrc di esempio facilmente modificabile. Molta gente prima di voi ha usato BitchX [ ma va? ] ed ha incontrato forse gli stessi problemi che avete incontrato voi. Alcuni si sono fermati a semplici script personali, altri piu' smanettoni hanno fatto vere e proprie "suite" di codice e lo hanno messo a disposizione di tutti. Il loro lavoro lo potete provare anche voi sul vostro BitchX, Sono molti gli script per BX, provate e vedete quale vi si addice di piu', quale trovaet piu' utile e comodo, o inutile e simpatico =) http://scripts.bitchx.com/ ---[ 4.2 file particolari ] Nella home dell'utente che usa BitchX c'e' la cartella .BitchX, nella quale sono contenuti alcuni file, 2 di questi li guardiamo un po' piu' da vicino: BitchX.quit BitchX.reasons Il primo contiene i messaggi di quit di BitchX se noi quittiamo senza dare argomenti a /quit. Il secondo fa la stessa cosa, solo che e' per i kick e i kick/ban. Se vogliamo li possiamo modificare secondo i nostri gusti. Personalmente li ho lasciati cosi' perche' mi piacciono, e mi fanno fare sempre un sacco di risate =) --[ 5. help on-line ] La documentazione che viene insieme ai sorgenti di BitchX e' notevole, trovate tutto quello che riguarda il client, dalla storia delle sue origini, alle funzioni per la sua programmazione. Basta digitare /help o /help per le sue funzioni, oppure digitare /ehelp per un aiuto di tipo piu' tecnico. Se non vi bastano queste informazioni nella cartella dei sorgenti c'e' tutto quello di cui avete bisogno. Come se non bastasse, esiste il canale #BitchX su EFnet dedicato interamente a (indovinate) il vostro client irc preferito! =) --[ the end ]-------------------------------------------------------------- ----[ credits and thanx ]-------------------------------------------------- Versione 1.1 dell'HOWTO, piccole aggiunte, qualche correzione. -[ for this paper 10x to: ME, MYSELF AND I && tutta la gente che riesce a pensare con la propria testa ;P ]- [ BitchX-HOWTO , version 1.1 by nembokid [mailto:nk@bitchx.it - web@http://www.olografix.org/nembokid] - I spent 3 days of my life writin' this pages with pico. Use it carefully and under medical instructions. ] ...now /quit ,BEATCHH!!