checkm

lunedì 26 novembre 2007

Nuovo Template

Ho deciso di cambiare template, attirato da quello di Tyrion. Lo stile mi sembra molto più pulito e ordinato. Ho cambiato anche il nome nella titlebar e ingrandito un po i font. Per chi credesse che era meglio il titolo "ScaccoMatto" invece che "checkm", posti un commento.

Altrimenti, riagganci semplicemente. :-)

GNU Emacs @ localhost

Per qualche giorno Foobar sotto mia richiesta ha voluto darmi qualche dritta sull'utilizzo e la personalizzazione di EMACS. Ho sempre saputo quanto potente sia, ma riconosco di non averlo mai utilizzato regolarmente come editor predefinito. Mi ha aiutato a personalizzarlo per renderlo più comodo. Mi ha fatto sistemare lo "i-switch" che è una modalità per semplificare lo spostamento tra i buffer. Mi ha fatto mettere ELScreen che sarebbe come GNU Screen ma fatto apposta per EMACS. Mi ha fatto eliminare la barra dei menù e dei bottoni. Mi ha anche fatto scrivere una "mode" adatta per scrivere secondo lo stile dei programmatori di Linux e tante altre chicche carine. :)

Eccone uno screenshot.

Da notare che la parte evidenziata in azzurro è l'effetto del "bracket matching" che Foobar mi ha fatto mettere. :)

Word Hex

Circa una settimana fa stavo studiando tramite le guide di playhack.net (attualmente è inattivo per via di alcuni problemi tecnici) cos'è e come funziona uno shellcode. Seguendo la guida ho avuto il bisogno di scrivermi uno script in Python per convertire una stringa ASCII nel corrispondente esadecimale.

Potete leggerne il codice da questo link.

Comunque sembra funzionare:

simone@euclide ~/coding $ python word_hex.py checkm
0x6d6b63656863
simone@euclide ~/coding $


Per verificare la validità del risultato, prendetevi una tabella ASCII (io uso questa, che ho stampato e appeso vicino al computer) e controllate la colonna Hex e ricordatevi che il numero si legge al contrario quindi da destra verso sinistra, equivarrà cioè a "mkcehc". :-)

martedì 18 settembre 2007

GPG Public Key

Ho voluto provare a farmi un mazzo di chiavi GPG per la durata di un anno per vedere se me ne posso fare qualcosa da 2048 bit. :-)

Eccola qua in tutto il suo splendore. :-) È inoltre disponibile su www.keyserver.net.

W gpg! :-P

Key expires at Wed Sep 17 17:19:39 2008 CEST

sabato 8 settembre 2007

Pwdgen

Ho fatto un programma in C e GTK+ per generare delle password casuali perchè ho visto che viene considerata una cosa molto banale però nessuno si è degnato di farne uno decente. Per ora sono abbastanza apposto con i memory leaks e se anche valgrind sembra che ve ne dia parecchi è tutta colpa di GLib, ma tranquilli "GLib doesn't leak memory".

La versione disponibile non è per niente modulare. Però siccome ora pensavo di fare una configurazione che permetta di compilarlo con o senza il supporto di GTK+ nel caso in cui uno non l'abbia installato (partirà un'interfaccia testuale in questo caso) credo che appena avrò voglia lo riorganizzerò con Autotools e lo renderò più "piacevole".

Lo trovate quì.

Se non vi funziona il link significa che altervista rompe. :-) Copiate l'indirizzo e apritelo in un'altra scheda.

giovedì 9 agosto 2007

Checkm @ del.icio.us

Ho aperto un account su del.icio.us per condividere i miei segnalibri con gli altri. Chi volesse partecipare alla mia "network" metta un commento qua. :-)

Il nick è checkm ma per ora ho inserito poche cose.

Divertitevi!

martedì 3 luglio 2007

Rilasciato Smalltalk YX 0.1

Da circa un mese Lethalman lavora a Syx, un'implementazione opensource di Smalltalk-80. È scritto in C e ha i seguenti obbiettivi:

  • Codice leggibile
  • Flessibile grazie a un sistema di plugin
  • Portabile sui sistemi operativi più noti
  • Ottimizzato
  • Moderno
  • Inseribile in applicazioni C
  • Facile da usare, potente e con un ambiente ben strutturato
  • Piccolo
La versione 0.1 scaricabile da qua comprende le seguenti caratteristiche:

  • Virtual Machine stabile senza Memory leak (o quasi) fino ad ora
  • Gira indifferentemente su Windows e GNU/Linux
  • Compilabile facilmente su piattaforme Posix eWin32 usando Scons
  • Immagine compatibile con sistemi 32-bit e 64-bit
  • Un sistema basilare di plugin
  • Immediati small int e small char
  • Numeri float e larg int
  • Console readline per GNU/Linux
  • Piccolo
  • Un semplice sistema di caching
Beh non resta che provarlo agli amici amanti di smalltalk. :-)

ScaccoMatto.

giovedì 21 giugno 2007

Applicazioni KDE

È incredibile! Da qualche giorno sto utilizzando applicazioni KDE in un desktop Xfce diversamente da prima, quando odiavo mischiare applicazioni QT in un ambiente GTK+. Ma non si può resistere a certe cose! Inizialmente ho iniziato ad installarle perchè cercavo un buon client bittorrent che non fosse azureus e ho trovato KTorrent. L'ho installato e non ho avuto da ridire.
Poi stamattina parlando con amn di alcuni editor di testo abbiamo finito per parlare di Kate. Già lo conoscevo, già sapevo che era un ottimo editor ma evidentemente lo dovevo installare prima di dire che è quasi perfetto (sì perchè viene prima emacs :P). Una volta installato, carico un file.c, scrivo qualcosa e ovviamente rimango a bocca aperta per la velocità del source editor che a differenza di applicazioni come gedit scrive molto più velocemente. Poi ho sempre adorato il suo syntax highlighting e oggi vengo a scoprire quanti linguaggi supporta e non solo! Permette addirittura di aggiornare o installare i file xml per l'evidenziazione dei sorgenti. :-O
Infine ho installato Amarok dietro consiglio di worm e anche qua mi è rimasta la bocca asciutta da come è curato nei minimi dettaggli, tutto quello di cui ho bisogno c'è già. Worm ha anche trovato un howto dove spiega come compilare Amarok con il supporto a mysql in modo che le grosse playlist vengano caricate in un attimo. Questo ha permesso a worm (quante volte ho ripetuto il suo nome?) di definirlo il Player Perfetto.

Beh... provare per credere.

mercoledì 20 giugno 2007

Errore di compilazione: apr-util

Dopo aver fatto un eix-sync e aver così aggiornato la cache del portage mi sono accorto di dover aggiornare subversion (svn) e la nuova versione richiede anche l'aggiornamento di una sua dipendenza: apr-util.
Durante la compilazione di questa, ottengo degli errori che ho incontrato raramente anche altre volte:

i686-pc-linux-gnu-g++: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../crti.o: No such file or directory
i686-pc-linux-gnu-g++: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/crtbeginS.o: No such file or directory
i686-pc-linux-gnu-g++: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/crtendS.o: No such file or directory
i686-pc-linux-gnu-g++: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../crtn.o: No such file or directory


Cosa è successo? Tempo fa ho aggiornato GCC alla versione 4.1.2 e forse gli sviluppatori di non hanno previsto questo riferendosi così alla directory di GCC 4.1.1 che all'aggiornamento era stata cancellata.

Ho risolto dopo tempo (oggi) con un link simbolico e tutto è andato liscio come l'olio. :-)

Cancellato #scacco

Da un po di tempo ho notato che #scacco, registrato da tempo su AzzurraNET, è inutile. Non entra più nessuno di nuovo e i soliti che hanno messo in auto-join sono ammuffiti e non dicono più niente. Così ho deregistrato il canale facendo spazio ad azzurra. :P

Nessuno si è ancora accorto di niente... :s

mercoledì 13 giugno 2007

OpenSSH: messaggio di benvenuto

Oggi installando OpenSSH su un computer di casa che da pochi giorni ha Ubuntu Feisty Fawn ho trovato il modo per inserire un messaggio di benvenuto che appaia quando una persona si connette.

Ho modificato /etc/ssh/sshd_config e ho inserito la riga:

Banner PATH

dove PATH sta ad indicare il percorso in cui si trova il file che contiene il messaggio di benvenuto, per esempio /etc/ssh/issue.net . Successivamente ho riavviato il server OpenSSH facendo da root:

/etc/init.d/ssh restart

Ora quando qualcuno si connette...

domenica 10 giugno 2007

Nuovo sito

Ero stanco del vecchio scaccom.altervista.org e ho rimediato cancellandolo e riscrivendolo in modo più corretto e senza metterci tutta quella roba inutile che si può trovare ovunque. Il sito è scritto in XHTML 1.1 e CSS, entrambi validati dal sito del W3C. Nella pagina principale non avevo voglia di sprecare parole e ho fatto parlare Dante al posto mio. :-P Il sito comprende due sezioni di download e screenshot. Nella prima ho messo (per ora) due programmini che ho fatto nel tempo libero per sfizio :-) e nella seconda ho messo alcune immagini dei desktop più belli.

So che non ve lo cacherete nemmeno un po, però almeno non lascio inutilizzati 100MB del mio spazio web.

martedì 5 giugno 2007

Nuovo nick su IRC

Ieri sul server irc di azzurra (irc.azzurra.org) ho registrato un nuovo nick perchè ad alcuni dava fastidio "[scaccomatto]" per via delle parentesi quadre. Ho pensato che "scaccomatto" fosse troppo lungo e allora ho registrato "scacco". Ora tengo "[scaccomatto]" come nick di riserva per le emergenze. :-D Foobar mi ha consigliato di utilizzare "checkmate" e amn diceva che è troppo usato e quindi preferiva "checkm". Mi sembrava troppo diverso dall'originale e quindi ho abbreviato.

So che questo post non è molto importante però può capitare (come è già successo) che qualcuno mi cerchi dopo un bel po di tempo su irc e non mi trovi.

domenica 3 giugno 2007

os.path.join in C

Da qualche settimana sto studiando C da un tutorial di K&R. Ho fatto vari pezzettini di codice per provare un po a fare quello che leggevo nel manuale e ovviamente li ho buttati tutti.
L'altro giorno Lethalman mi ha chiesto di fare un "algoritmo" che imitasse il comportamento di os.path.join che c'è in Python con il C però in modo portabile.

Su Python:

>>> os.path.join("/home/", "simone")
'/home/simone'
>>> os.path.join("/home/", "/simone")
'/simone'
>>>


Il mio: http://scaccom.altervista.org/files/downloads/path_join.c

Ho imitato al meglio il comportamento di quello originale però non son riuscito a far passare infiniti argomenti alla funzione come succede in Python:

>>> os.path.join("/home/", "simone/", "gnurilla/", "src/")
'/home/simone/gnurilla/src/'
>>>


Ho chiesto a Foobar e mi ha detto che c'è un modo ma è piuttosto scomodo e difficile. Si tratta di utilizzare va_start di stdarg.h . [man stdarg.h] Ho rifiutato l'idea e per ora preferisco passare un array come argomento. :-\

venerdì 11 maggio 2007

Penne USB

Alla fine ho risolto il problema delle pennine usb. Il vero problema ero io, non il kernel. Grazie a udevmonitor mi sono accorto che appena collegavo una penna usb veniva creato il device in /dev/uba e non in /dev/sda o /dev/sdb come faceva prima. :-)

euclide ~ # udevmonitor
udevmonitor prints the received event from the kernel [UEVENT]
and the event which udev sends out after rule processing [UDEV]

[...]
UDEV [1178891588.882864] add@/block/uba
UDEV [1178891588.969081] add@/block/uba/uba1
euclide ~ #


Ora mi sono abituato a fare mount -t vfat /dev/sda1 /mnt/usbpen. ;-)

mercoledì 25 aprile 2007

Linux 2.6.20

Oggi ho ricompilato il kernel alla versione 2.6.20. Ho sempre usato genkernel e solo oggi mi è saltato in mente di usare il metodo tradizionale. Missione completata con successo. ;-) Ho compilato prima la 2.6.20 con le patch di gentoo (gentoo-sources) ma dopo aver saputo della 2.6.20.7 e che per questa non erano disponibili ho compilato i vanilla-sources. :-) Gli Originali. :-D Cambiano solamente alcune finezze che non noto... Ho sistemato tutto quello che mi serviva tranne il supporto per le penne usb (che mi mancava già dalla 2.6.19) e non trovo il modo per farle riconoscere in modo che venga creato /dev/sd*. Ho attivato il supporto per i dischi SCSI (come mi ha consigliato grayskull), per ehci e ohci ma non c'è stato verso di farlo funzionare. :-( Pazienza... aspetterò una giornata più fortunata!

ScaccoMatto.

venerdì 20 aprile 2007

Compleanno.

13 anni fa sono nato. :-) So che non è un grande evento però dato che tutti lo festeggiano... mi aggiungo anche io in forma ridotta.

Mi accontento degli auguri.

ScaccoMatto.

giovedì 19 aprile 2007

Opera 9.20

Da qualche giorno sto usando esclusivamente opera per navigare e leggere le mail. La versione 9.20 mi ha sorpreso davvero con il suo "Speed Dial". :-o È un ottimo sistema di caching che risulta essere velocissimo peccato però che supporti al massimo 9 siti. :-( In precedenza avevo sottovalutato la potenza di opera anche se sapevo che aveva un ottimo supporto per gli standard web. Anche se di professione non è un mail reader, Opera riesce a fare tutto quel poco che facevo con Thunderbird... "scrivere letterine". (cit. Grayskull) Rispetto a Firefox anche l'avvio del programma è molto più veloce ma al contrario, mancano dei bei plugin con le palle presenti come quelli su Firefox (es. TinyMenu).
Altra cosa bellissima è che la maggior parte dei processi sono gestiti sulle tab (lettura dei sorgenti, download, posta elettronica, help ecc.).

Credo che lo terrò fisso. =)

ScaccoMatto.

PyChannel

Lethalman ha aperto il forum per il canale #python di azzurra. Tratta principalmente di Smalltalk e Python ma pubblichiamo spesso e volentieri delle news su quello che ci pare. :-) Speriamo abbia lo stesso "successo" dell'IPUG (Italian Python User Group) di più o meno un anno fa grazie al Python Cookbook che stavamo (stavano?) scrivendo. Comprendeva alcuni trucchetti utili che trovate quà. Se vi piace... unitevi! ;-)

Io sono admin. :-P

ScaccoMatto.

martedì 17 aprile 2007

Password Creator

Mentre il mio computer era rallentato per via della ricompilazione del kernel ho creato questo. È una cagatina scritta con nano che genera password random. Foobar mi ha consigliato di fare in modo che l'utente possa scegliere l'algoritmo per generare la password random e mi ha fatto vedere come sfruttare /dev/dsp o /dev/urandom e perchè no, anche l'orologio di sistema. :-)

Vedrò...

ScaccoMatto.

venerdì 6 aprile 2007

Inizio NoCopy meeting

Stasera alle 6 incontrerò Otacon22, Skirk e Dak per il meeting di NoCopy. :-) Sono quasi certo che con le antenne omni-direzionali che ha comprato Otacon22 da ebay (anche se trasmettono il segnale per 20km senza alcun ostacolo) non avremo una connessione. Non potrò quindi pubblicare niente fino a Martedi. :-(

Speriamo vada bene. :D

Saluti, ScaccoMatto.

mercoledì 28 marzo 2007

Grayskull

Il blog di mio fratello Grayskull è risorto dopo diversi mesi di inattività.

Lo trovate quà.

martedì 27 marzo 2007

PyGTK Framework.

Oggi ho iniziato a collaborare con lux ad un mio progetto. Abbiamo scritto diverso codice e lui ha iniziato a creare (come ha già fatto sull'openbot) un framework per pygtk. All'apparenza sembra una cosa inutile, però quando si impara ad utilizzarlo al meglio diventa molto utile perchè fa risparmiare diverse righe di codice.

Un esempio di utilizzo:

import gtk_framework

textview = gtk_framework.TextView(textbuffer=None, scroll_window=True)

invece di:

import gtk

textbuffer = gtk.TextBuffer()
textview = gtk.TextView(textbuffer)
sw = gtk.ScrolledWindow()
sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
sw.set_placement(gtk.CORNER_TOP_LEFT)
sw.add(textview)
sw.show_all()


Bello vero? :-) L'unica cosa brutta è quando ci si ritrova a dover sostituire qualche centinaio di righe con queste cose quà, ma una volta fatto si vola. ;-)

simone@euclide ~/gnurilla $ svn-log
------------------------------------------------------------------------
r17 | luciano.ferraro | 2007-03-27 19:10:03 +0000 (Tue, 27 Mar 2007) | 1 line

preferences.py completato a meta' usando gtk_framework.py
------------------------------------------------------------------------
simone@euclide ~/gnurilla $


Saluti, ScaccoMatto.

lunedì 26 marzo 2007

Xfce4 su Gentoo

Mi son stancato di E17, troppo pesante per me. :-( Ho messo xfce4 su gentoo perchè così non perdo tempo a configurare al meglio il mio desktop di cui mi stanco dopo due giorni riportandolo allo stato iniziale. Non devo usare linux per abbellire il mio desktop come fanno altri! :-)
Sarei tornato a fluxbox se solo esistessero bordi magnetici alle finestre e temi che non stancano gli occhi. Xfce era la cosa più leggera e veloce da installare ed è anche molto comodo.

Xfce4 Desktop on Gentoo.
Finalmente il cestino! :-D

Saluti, ScaccoMatto.

domenica 18 marzo 2007

/dev/dsp su Gentoo

Alcuni programmi come festival davano questo errore per /dev/dsp:

festival> (SayText "foobar")
Linux: can't open /dev/dsp
#<Utterance 0xb70d3aa8>
festival>


Per risolvere ho configurato il kernel così:

Device Drivers  --->
Sound --->

<*> Sound card support

Open Sound System --->
< > Open Sound System (DEPRECATED)

Advanced Linux Sound Architecture --->
Advanced Linux Sound Architecture
(Select this if you want MIDI sequencing and routing)
Sequencer support
OSS Mixer API
OSS PCM (digital audio) API

PCI devices --->
Intel/SiS/nVidia/AMD/ALi AC97 Controller

In seguito ho fatto modprobe "snd-pcm-oss" per caricare il modulo che crea /dev/dsp.
Poi ho aggiunto a /etc/modules.autoload.d/kernel-2.6 la seguente riga:

snd-pcm-oss

Per fare in modo che il modulo venga caricato all'avvio.
E /dev/dsp con festival funziona a dovere. :-)

sabato 17 marzo 2007

ACME e Wily.

Oggi su #vim parlavo con il mio amico 'foobar' del fatto che non ci sia un editor innovativo da diversi anni. Infatti solo Emacs e il suo antenato TECO son stati gli ultimi editor innovativi. Il resto degli editor (anche quello che sto scrivendo io, se non mi decido a fare qualcosa di alternativo) di oggi sono tutti uguali in fatto di funzioni. Questo dipende forse dai tookit come GTK o QT che offrono molte possibilità e quindi permettono di costruire programmi uguali ad altri 'centomila' con poco sforzo. Oggi 'foobar' mi ha fatto notare in modo particolare questo 'evento'.

Per il sistema operativo Plan9 (potente ma poco utilizzato/conosciuto) è stato sviluppato un editor chiamato ACME che utilizza tutto un altro sistema per l'editing. In parole povere permette di modificare qualsiasi cosa dentro di esso e ha anche un semplicissimo sistema di finestre al suo interno che permette di gestire al meglio lo spazio per l'editing. La 'novità' notevole di questo editor è che tutto si basa sulla gestione del testo con il mouse. Per fare un esempio: stiamo modificando un programma scritto in C e dobbiamo fare il make senza voler togliere la vista dal programma, scriviamo sul buffer 'make' e dopo averlo selezionato premiamo il tasto centrale del mouse e come per magia il comando verrà eseguito. In questo modo si possono creare anche delle toolbar con le nostre azioni preferite che potranno essere anche interne all'editor (per esempio 'New', 'Open' o 'Exit' ecc.).
Purtroppo non lo so sfruttare nemmeno io nel miglior modo possibile perchè comunque rimane un po scomodo da utilizzare senza 'coccole moderne' come la sintassi evidenziata, l'indentazione automatica ecc.
Trovo che questo modo di ragionare mi potrà tornare utile nel progetto che sto sviluppando. Pensavo anche di prendere spunto da alcuni trucchetti di Emacs, ad esempio il comportamento dei tab. Se su Emacs ci troviamo al centro di una linea di testo e premiamo il tasto di tabulazione al contrario di un comune editor non verrà creato un tab nel punto in cui si trova il cursore ma verrà identata tutta la riga seguendo il modo in cui son state allineate le altre.

Io ho installato Wily, un clone meno potente di ACME però per piattaforma GNU/Linux:

Wily, clone ACME per linux

Da questo screenshot si può capire meglio il funzionamento di ACME.


Ringrazio 'foobar' che ha fatto nascere l'interessante discussione che si è estesa fino a parlare di Erlang (linguaggio potentissimo sviluppato dalla Ericsson capace di gestire grandissimi carichi, ad esempio quelli delle centrali telefoniche) e Plan9.

Saluti, ScaccoMatto.

ps: Erlang e Haskell sono i primi in lista per i miei futuri (molti futuri) linguaggi da studiare. :-)

E17 su Gentoo.

Finalmente son riuscito a mettere E17 su Gentoo! Infatti ottenevo il solito errore compilandolo dal cvs di enlightenment (perchè non hanno ancora fatto gli ebuild) finchè non ho capito che dovevo compilare utilizzando la USE 'dbus'. Una volta avviato utilizzando entrance (display manager di e17) non mi è assolutamente piaciuto il tema di default e l'ho subito sostituito con simply-white. Ho poche lamentele da fare a questo WM. Le uniche sono:

- manca un'applet nella barra per cambiare finestra (ma si può utilizzare comunque il buon vecchio ALT+Tab);
- non si possono utilizzare le pseudo-trasparenze in terminali come ATerm perchè E17 utilizza una gestione tutta sua degli sfondi ma per porre rimedio a questo ho seguito il tip del mio amico Worm;
- il Drag 'N Drop è quasi inutilizzato se non per spostare oggetti sulla toolbar (o almeno così mi è sembrato);
- non hanno ancora fatto il sistema per le trayicon; :-(
- modificare i menu è ancora un po tosto. :-)
Però tutto sommato non è MALE! Si possono anche ammirare degli effetti che fanno contento uno che non si può permettere XGL come delle pseudo-ombre nelle finestre, le animazioni quando si cambia desktop (che solo un video potrebbe mostrarvi), delle fiamme nel fondo del desktop oppure la pioggia, ecc ecc.

E17 su Gentoo GNU/Linux.

Ho abbandonato fluxbox. :-)

Saluti, ScaccoMatto.

mercoledì 14 marzo 2007

Altro che barser. :-)

Sapevo che barser non mi sarebbe comunque servito a nulla. :D Avrebbe comunque dato diversi problemi perchè è troppo minimale e quindi non serve per quello che sto scrivendo. Otacon22 ha scritto un buon parser che permette di scrivere file di configurazione che supportino 'classi', per esempio:

PrimaClasse:
configurazione = 1

SecondaClasse:
configurazione = 2

Così il parser una volta che analizza il file restituisce un dizionario che se trova classi nel file di configurazione conterrà per chiave il nome della classe e per attributo una lista (?) con dentro gli attributi di quella classe. Così, se ho creato un file di configurazione per le lingue con dentro una classe con i messaggi in inglese e un'altra con i messaggi in italiano mi basterà richiamare solo la classe "Italiano". Anche senza classi il parser funziona regolarmente restituendo un normalissimo dizionario.

Che spiegazione orrenda che ho fatto. o.O

Trovate il codice qui.

Ciao.

NoCopy Group .org

Skirk, l'amico di Otacon22, si è offerto volontario per ospitare 24 ore su 24 il sito di nocopy scritto da me. Otacon22 ne ha subito approffitato e ha comparto il dominio nocopy-group.org su un servizio italiano (scusate ma non ricordo il nome) che non è buono quanto no-ip.org ma va bene comunque. A dire il vero però io metterei un sito più "all'altezza" di un .org magari con un buon cms e non con 4 paginette in css e xhtml. :D

See you.

emerge -Dunav world

Due giorni fa ho fatto finalmente emerge -Dunav world perchè non l'avevo fatto subito dopo l'installazione di gentoo. Il lavoraccio è partito alle 4 del pomeriggio ed è finito verso le 11 di notte per via di GCC e Glibc (sorgenti GROSSI) e poi ho 'allungato' la serata fino all'una di notte fino a quando chi dormiva non si è lamentato per il rumore dei computer. :-)
In più ho anche aggiornato al kernel 2.6.19-gentoo-r5 perchè non l'avevo fatto subito quando era uscito. :-(

Bye!

mercoledì 21 febbraio 2007

Parser base in due righe.

Avevo bisogno di un parser basilare per file di configurazione così:

nome = valore

Oppure solamente:

nome valore

Così ho creato un parser per questo tipo di configurazione in due righe (sono tre con la definizione alla funzione :). L'ho chiamato Barser. Utilizzarlo è piuttosto semplice:

import barser
barser.parse(file_configurazione, valore_da_cercare)


Spero non abbia bachi. :-)

Saluti, ScaccoMatto.

martedì 20 febbraio 2007

Pygments

Ho ritrovato poco fa una libreria che Otacon22 mi aveva fatto notare tempo fa: Pygments. È una libreria per Python che permette di evidenziare il codice per diversi utilizzi, ad esempio per un wiki, per un forum e altre applicazioni.

Il bello è che fa l'highlight anche del brainfuck. :-)

Saluti, ScaccoMatto.

Python VTE Library

Esiste per Python una libreria (che fa parte delle librerie di X11) per l'emulazione di terminale. La libreria è python-vte (su Portage è x11-libs/vte) però l'unico suo difetto è che non è documentata e neanche help('vte') sulla console di python permette di ricavare informazioni utili (infatti mostra solamente la struttura delle classi). Tuttavia ho trovato sorgenti che utilizzano vte cercando con Google Code Search.

Ecco un codice di esempio scritto da me utilizzando PyGTK.

Si può anche impostare il diverso colore dello sfondo oppure renderlo trasparente ecc ecc.

Mi piace davvero peccato che sia poco utilizzata. :-)

Saluti, ScaccoMatto.

lunedì 19 febbraio 2007

Compleanno NoCopy.

Ieri NoCopy compiva 1 anno di attività! Infatti /cs info #nocopy ci ha rivelato che il canale #nocopy su irc.azzurra.org è stato fondato la sera del 18 Febbraio 2006 alle ore 22:08:17. :-) Incredibile... è già passato un anno! Ricordo quando ci sono entrato per la prima volta facendo un whois a Dak. :D

Il primo anno verrà festeggiato al NoCopy Meet di pasqua. ;-)

Saluti, ScaccoMatto.

domenica 18 febbraio 2007

PyGtksourceview su Gentoo.

Ho passato circa due ore per capire come installare la libreria 'PyGtksourceview' su Gentoo. Questa serve per evidenziare il codice sorgente su un buffer di testo PyGTK (in realtà utilizza un gtk.TextBuffer e un gtk.TextView tutto suo) per vari linguaggi.

Ho provato diverse altre volte a compilarla utilizzando il pacchetto preso dal mirror di SourceForge. Dopo il make e il make install di questo pacchetto sembrava andare tutto ok però, aprendo la shell python e scrivendo 'import gtksourceview', ottenevo errore pur essendo certo che in /usr/lib/python2.4/site-packages ci fosse 'gtksourceview.o' e 'gtksourceview.la'.

Dopo aver lasciato perdere per un po di tempo mi sono documentato a dovere (stasera) e ho trovato che la libreria che cercavo di installare è contenuta in gnome-python-extras (gnome-python l'avevo già compilato in precedenza). Purtroppo però nella versione che ho io (2.14.0-r1) su Portage non è più contenuto (credo che sia ormai morto) ma si trova invece nella versioni precedenti alla 2.10.0 inclusa. Quindi ho scaricato il pacchetto adeguato dal mirror e ho compilato in santa pace, ottenendo questo:

>>> import gtksourceview
>>>


Spero che questo post sia utile a chi cerca di compilare PyGtksourceview nelle mie stesse condizioni.

Saluti, ScaccoMatto.

giovedì 8 febbraio 2007

Morte e resurrezione.

Non ho molto da raccontarvi dall'ultimo post sul mio blog. Però ho fatto tante cose belle. :-)

Per prima cosa (non ricordo se l'avevo già detto in qualche post precedente) ho creato questo sito che ospita la homepage attuale di nocopy che però, dato che sta in casa mia (e quindi dove vive la mia famiglia) non può rimanere continuamente accesso, sia per la bolletta sia perchè la notte i suoi tre ventoloni disturbano. Il sito è validato sia dal lato CSS che da quello XHTML (grazie all'aiuto di dakkar), le pagine sono su Spitfire che come ripeto spesso ha Apache-2.0.55 (questo è quello che dice apache -v) e PHP-4 su 660MHz (non ho voglia di cambiare scheda madre e permettermi un GHz e qualcosa in più -_-') con Ubuntu Server (e non ho nemmeno voglia di cambiare distro :-).

Altra cosa interessante... mi sto incontrando abbastanza regolarmente con un mio amico del LugNU (se non lo scrivo così mi picchia :-) per discutere di qualcosa di interessante e smanettare su qualcosa.

Mmm... ah si! Ho scoperto mawk.org (grazie a decra) che è un sito di 'Hacktivisti' dove chiunque ha la libertà di dire la propria opinione su qualsiasi cosa o di pubblicare guide/programmi di propria invenzione. Sito davvero interessante. ;-)

Fra 10 giorni è NoCopy compie un anno di attività! ;-) Probabilmente per la pasqua ci dovremo incontrare tutti a casa mia e fare un mini raduno, chi può venire viene! Si terrà nella mia campagna dove dovremo fare tutto noi (pulire, cucinare ecc.) e dove probabilmente il wireless arriverà solamente con un miracolo... infatti non c'è connessione. Otacon22 ha pensato di mettere due Cantenna per la ricezione del segnale wireless dal router di casa mia dove la distanza con la campagna è di circa 900mt (sulla strada, quindi probabilmente in linea d'aria sarà inforiore) e dove bisognerà fare i conti con la presenza di palazzi che in qualche modo possono impedire la 'visibilità elettromagnetica' (come dice il sito di Napoli Wireless). Speriamo bene!

Non mi viene altro in mente per ora...

Saluti, ScaccoMatto.

lunedì 1 gennaio 2007

Buon anno da gentoo.

Sono sempre su gentoo. Anche stanotte, mentre gli altri festeggiano il capodanno, io sono in camera che gioco con gentoo. :\

Ho appena ricompilato il kernel per compilare il supporto alsa ma evidentemente ho sbagliato qualcosa e non ho voglia di ricompilare un'altra volta.
Colgo l'occasione per mostrarvi la bellezza del mio FluxBox! Grazie a decra e a un tema che mi ha passato sono riuscito a fare un desktop bellissimo con uno sfondo magnifico. :) Godetevelo.

Per stanotte tentavo di superare il mio record delle 5 del mattino ma non ci riesco perchè il sonno mi sta chiamando.

Buon 2007, ScaccoMatto.