white noise | 2007 /blog//2007.html white noise il nascondiglio /blog//post/il_nascondiglio.html /blog//post/il_nascondiglio.html cinema Sun, 30 Dec 2007 15:02:08 +0100 Cinema

Di Pupi Avati ho sempre apprezzato, sin dai tempi de "La casa dalle finestre che ridono", la capacità di fare horror senza bisogno di grandi mezzi, usando idee originali per fare leva sulle inquietudini.

Il nascondiglio è un piacevole ritorno al genere; una storia che non sarà certo imbevuta di sangue - oddio - ma che quanto ad inquietudine regala la sua brava parte di tensione. Una cuoca con disturbi mentali decide di apripre il proprio ristorante in un ex pensionato per anziani, luogo alquanto tetro in cui anni prima si è consumata una efferata strage. Fra le spesse mura della magione tornano a prendere forma vecchi incubi che tutti vorrebbero dimenticare.

Non certo una pietra miliare del cinema, e del genere, ma una pellicola comunque ben realizzata e godibile.

]]>
uneasy netbsd packages upgrade /blog//post/uneasy_netbsd_packages_upgrade.html /blog//post/uneasy_netbsd_packages_upgrade.html bsd sysadmin unix Sun, 23 Dec 2007 15:51:16 +0100 NetBSD

Yesterday I took some time to upgrade my NetBSD test server packages collection to pkgsrc-2007Q3.

I updated the source tree:

$ cvs updated -dP -r pkgsrc-2007Q3

then I perform a bulk upgrade of all installed packages (not many to be honest):

# /usr/pkg/sbin/pkg_chk -g
# /usr/pkg/sbin/pkg_chk -us

It wasn't that smooth. I encountered two different kinds of problems:

  • some makefiles needed to be manually edited, since cvs was not able to merge all changes automatically
  • some packages couldn't be installed as part of the bulk process. I haven't completely understand the problem, so I just got rid of it by manually installing the new version of each problematic package

In the end I got it running, and everything seems fine. I had the feeling of a logical approach after all, so I am quite comfortable with this.

]]>
iterators in ruby /blog//post/iterators_in_ruby.html /blog//post/iterators_in_ruby.html devel ruby Sat, 01 Dec 2007 14:58:04 +0100 Ruby

Iterators in ruby

]]>
classes in ruby /blog//post/classes_in_ruby.html /blog//post/classes_in_ruby.html devel ruby Sat, 24 Nov 2007 00:27:28 +0100 Ruby

I have finally found the time to organize my ruby knowledge. This is the first of a series of mind maps I drew while reading the picaxe book.

Classes in ruby

]]>
another little app for a gtd system /blog//post/another_little_app_for_a_gtd_system.html /blog//post/another_little_app_for_a_gtd_system.html devel gtd perl unix Sun, 18 Nov 2007 14:00:51 +0100 Gtd

Feeling really comfortable with my outline based gtd system, I decided to go one step further. I have a bunch of cards, one for each project I'm working on, so I looked for a nice way to managed them. Some kind of interface that helps me browse, filter and edit the cards.

I haven't found anything suitable on the net, so I decided to go my way and code a little helper from scratch. The result is a cards browser with some filtering capabilities; it is project oriented rather than action oriented, simply because that's how I feel comfortable in managing my tasks.

Information, a screenshot and download links can be found on my personal web site.

]]>
NetBSD upgrade from binary sets /blog//post/NetBSD_upgrade_from_binary_sets.html /blog//post/NetBSD_upgrade_from_binary_sets.html bsd sysadmin unix Sat, 10 Nov 2007 19:20:15 +0100 BSD

After performing a source-way upgrade of my NetBSD system, I decided to try out a different approach using the binary sets.

I got all the sets I needed from a handy mirror, then I performed the following steps:

$ tar zcvf etc-backup.tar.gz /etc
$ cp /netbsd /netbsd.old

$ tar zxvpf kern-GENERIC.tgz -C /
$ tar zxvpf base.tgz -C /
$ tar zxvpf comp.tgz -C /
$ tar zxvpf man.tgz -C /
$ tar zxvpf text.tgz -C /
$ tar zxvpf games.tgz -C /

$ mkdir /tmp/tmproot
$ tar zxvpf etc.tgz -C /tmp/tmproot
$ etcupdate -s /tmp/tmproot/etc

After all the modifications needed to the configuration files were done, I just rebooted the system.

]]>
embedding a flash video in a web page /blog//post/embedding_a_flash_video_in_a_web_page.html /blog//post/embedding_a_flash_video_in_a_web_page.html devel tools web Thu, 08 Nov 2007 21:54:47 +0100 Tools

Today I've been asked to embed a video in the home page of a website I maintain. They were looking for the usual nice looking flash player to perform playback, just like YouTube and other similar web sites.

I decided to look for something flexible and - more important - open source. I found flowplayer, a really nice, really flexible and incredibly easy to set up flash-based video player.

The documentation on the project web site is complete, and you can simply cut-and-paste to have something working out of the box. Tweaking is also easy and fun.

Great stuff.

]]>
track the price of your items on amazon /blog//post/track_the_price_of_your_items_on_amazon.html /blog//post/track_the_price_of_your_items_on_amazon.html techworld tools web Sun, 04 Nov 2007 13:53:17 +0100 Tools

I am a Firefox user, but I am not an add-ons freak; my Firefox installation is quite standard. Some days ago, browsing the Internet, I found the Pricedrop extension, which helps me tracking the price of the items on Amazon I'd like to buy.

It quickly jumped in my must-have list. Saving money is a wonderful thing!

]]>
surfing with the alien /blog//post/surfing_with_the_alien.html /blog//post/surfing_with_the_alien.html musica Tue, 30 Oct 2007 00:13:24 +0100 Musica

Credo che capiti a tutti, prima o poi - e specie se si è suonato uno strumento - di accostarsi a quelli che sono considerati i mostri sacri della chitarra. Essendo la mia cultura musicale abbondantemente radicata nell'hard rock e nell'heavy metal, una delle possibili alternative era rappresentata da Joe Satriani. Ammetto che l'album in questione l'ho scelto per la copertina :)

Nessuna sorpresa sotto la cover; inutile parlare delle capacità tecniche dell'esecutore - semplicemente assolute - e probabilmente nemmeno della sua abilità compositiva. L'album alla fine è un catalogo di virtuosismi incastonato in una serie di pezzi che, pur mantendo una certa, quanto veloce, coerenza stilistica, cercano di spaziare tra molte variegate influenze. Molta mano e non troppo cuore, per quanto ci sia qualche perla - tipo "Crushing day" - che decisamente merita. Una fredda prova di forza, comunque notevole.

]]>
color schemes /blog//post/color_schemes.html /blog//post/color_schemes.html devel graphics web Mon, 22 Oct 2007 23:02:02 +0200 Devel

Finding a suitable color scheme is always an important thing anytime I have to develop some web site or work with graphics. Today I found the following web site: Colr.org, which has a nice set of applets to fetch color schemes from a website or extract them from a particular picture. It also allow to browse ready-to-use color schemes as well, or submit new ones.

You can see the result in the image below; it's the color scheme I used for my personal web site.

hyboria color scheme

]]>
dwm and multiple keyboard layouts /blog//post/dwm_and_multiple_keyboard_layouts.html /blog//post/dwm_and_multiple_keyboard_layouts.html geek unix Mon, 15 Oct 2007 23:22:55 +0200 Geek

Few days ago I had the occasion to get a quite old but really robust keyboard. I guess it's from the 90's, but it still have a really wonderful touch and works very very well.

Since it has an Italian layout, I took some time to configure dwm for switching between American and Italian layouts.

I just added the following lines to the config.h file:

        { MODKEY|ShiftMask|ControlMask, XK_i, spawn, "exec setxkbmap it" }, \
        { MODKEY|ShiftMask|ControlMask, XK_u, spawn, "exec setxkbmap us" }, \

and recompilied dwm. It works flawlessly.

]]>
upgrade netbsd installed packages /blog//post/upgrade_netbsd_installed_packages.html /blog//post/upgrade_netbsd_installed_packages.html bsd sysadmin unix Sun, 30 Sep 2007 22:04:53 +0200 NetBSD

After upgrading my NetBSD system, I decided to upgrade the packages collection. These are the step I've done.

Set cvs environment variables

Put in my .bashrc the following lines:

export CVSROOT="anoncvs@anoncvs.NetBSD.org:/cvsroot"
export CVS_RSH="ssh"

Updated the sources

$ cvs -q update -dP

Upgraded the packages

Refreshed the list of installed packages:

$ pkg_chk -g

The list was saved in /usr/pkgsrc/pkgchk.conf.

Updated the packages:

$ pkg_chk -us
]]>
NetBSD upgrade from sources /blog//post/NetBSD_upgrade_from_sources.html /blog//post/NetBSD_upgrade_from_sources.html bsd sysadmin unix Sun, 09 Sep 2007 21:41:50 +0200 NetBSD

Yesterday I finally find the time to upgrade wolverine, my NetBSD test server. I was in the mood to try something new, so I decided to perform the upgrade starting from sources.

It was really smooth, although it took a lot of time to compile everything (wolverine is a PIII 500Mhz). Here are the steps performed.

Backup data (/etc):

$ tar zcvf etc-3.0.tar.gz /etc

Prepare the directories (as root):

% mkdir /usr/src
% mkdir /usr/obj
% mkdir -p /usr/builds/i386
% mkdir -p /usr/releases/i386

Change the ownership of those directories to you user.

Get the sources:

$ wget ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0.2/source/sets/*.tgz

Unpack the sources:

$ for file in *.tgz; do tar zxvf $file -C /; done

Build or update the crosscompiler:

$ cd /usr/src
$ ./build.sh -D /usr/builds/i386 -R /usr/releases/i386 -u -m i386 tools

Crosscompile the kernel:

$ ./build.sh -D /usr/builds/i386 -R /usr/releases/i386 -u -m i386 kernel=GENERIC

Install the new kernel (as root):

% cd /
% mv netbsd netbsd-3.0
% cp /usr/src/sys/arch/i386/compile/obj/GENERIC/netbsd .

Reboot the system.

Crosscompile the userland:

$ build.sh -D /usr/builds/i386/ -R /usr/releases/i386/ -U -u -m i386 build

Install (as root):

% build.sh -D /usr/builds/i386/ -R /usr/releases/i386/ -U -u -m i386 install=/

Review postinstall failed checks and fix things accordingly.

Update /etc (as root):

% /usr/sbin/etcupdate
]]>
racconti di un albero curvo /blog//post/racconti_di_un_albero_curvo.html /blog//post/racconti_di_un_albero_curvo.html musica Sun, 26 Aug 2007 21:14:05 +0200 Musica

Ogni volta che mi capita per le mani un nuovo lavoro degli AKT provo sempre una certa emozione. Da una parte c'è un discorso affettivo, e dall'altra la consapevolezza che quanto andrò ad ascoltare varrà ogni secondo del tempo dedicato.

Dentrokirtos (albero curvo, in greco) è il loro ultimo lavoro e l'emozione è stata più grande del solito. Prima ancora di mettere il cd dentro allo stereo mi sono soffermato a sfogliare e leggere il bellissimo book allegato, segno di una qualità e di una dedizione che si percepiscono nettamente anche nella musica.

I pezzi sono sette (come i peccati capitali?) e, non fatevi illusioni, non sono affatto pezzi facili. Le radici affondano chiaramente nel progressive rock più classico - si colgono influenze dei King Crimson e dei Genesis - mentre tutto il resto è frutto di una meticolosa sperimentazione sonora, compositiva ed armonica che non si può fare a meno di ammirare, prima, e di cercare di comprendere poi.

Un disco per certi versi ermetico - come i suoi testi - ma affascinante ed estremamente seducente, per l'orecchio e per la mente.

]]>
ldap sync replication /blog//post/ldap_sync_replication.html /blog//post/ldap_sync_replication.html networking Tue, 14 Aug 2007 20:47:19 +0200 Networking

Here's another mind map about LDAP that tries to explain how sync replication actually works.

LDAP sync replication

]]>
distributed directory service /blog//post/distributed_directory_service.html /blog//post/distributed_directory_service.html networking Fri, 10 Aug 2007 19:11:01 +0200 Networking Distributed directory service

]]>
bruto /blog//post/bruto.html /blog//post/bruto.html scrivere Fri, 03 Aug 2007 19:55:05 +0200 Scrivere

Perso nella corrente che invadeva la sala, con indosso un comodissimo paio di mutande, la barba incolta e la pancia particolarmente rotonda e rilassata. In mano un tarrina con dentro quattro wurstel extra large annegati nella senape, sul tavolo la pagina centrale della Gazzetta dello Sport - ultimo baluardo di informazione libera - elevata al ruolo di tovaglia. Birra ghiacciata.

Si sedette lentamente fino a prendere la forma della sedia, si sistemò contro lo schienale di legno ed affondò la mano nella tarrina; ne estrasse il pezzo di carne di maiale, giallo scuro. Un morso vorace ed un lungo sorso di birra. Un rutto prorompente.

La settimana era finita.

]]>
etch and cdparanoia /blog//post/etch_and_cdparanoia.html /blog//post/etch_and_cdparanoia.html debian geek Thu, 02 Aug 2007 23:05:36 +0200 Debian

Some days ago I had the need to rip a cd to load the tracks on my portable player. It seems that the version of cdparanoia included in etch (currently 3.10+debian~pre0-4) is broken and unable to rip anything. The only working solution was to downgrade the package to the version included in sarge.

]]>
cemento /blog//post/cemento.html /blog//post/cemento.html distonie Sat, 28 Jul 2007 13:38:27 +0200 Distonie

Questo è un post fondamentalmente inutile, ma considerato che sono ormai due settimane che non mi curo di questo spazio web, ho pensato bene di inserirci qualcosa di nuovo.

L'estate a Bologna è terrificante come sempre. Dopo il tramonto il cemento ridona tutto il calore immagazzinato durante la giornata e quindi fino a tarda ora l'aria è calda da fare schifo. Vi lascio immaginare il piacere di dormire senza un condizionatore... non mi addormento facilmente ed alle 6.00 i miei occhietti si spalancano a fissare l'aria immobile della camera.

Fortunatamente la cosa incide solo sul mio umore - notoriamente pessimo in questo periodo dell'anno - e sulla capacità di recuperare una lucidità accettabile per interagire con il genere umano. In condizioni normali alle dieci del mattino riesco anche ad esprimermi in modo decifrabile.

Insomma, un'estate di ghisa, ma almeno siamo quasi ad agosto...

]]>
netfilter and custom chains /blog//post/netfilter_and_custom_chains.html /blog//post/netfilter_and_custom_chains.html networking security sysadmin unix Fri, 13 Jul 2007 22:30:48 +0200 Security

I've never had a good occasion to use custom chains with netfilter. The usual setups I had to prepare were simple enough to achieve the required results using the built-in chains.

Few days ago I had to configure another box to act as a firewall, so I decided to try out custom chains:

#===============================================================================
#
# CUSTOM CHAINS
#
#===============================================================================

# Chain for packets coming from the internet

$IPTABLES -N internet-allowed

$IPTABLES -A internet-allowed -p tcp -m state --state NEW --dport $SSH -j ACCEPT
$IPTABLES -A internet-allowed -p tcp -m state --state NEW --dport $MUNIN -s $MUNIN_MASTER -j ACCEPT

# Chain for packets coming from the wireless network

$IPTABLES -N wireless-allowed

$IPTABLES -A wireless-allowed -p tcp -m state --state NEW --dport $CHILLI -j ACCEPT
$IPTABLES -A wireless-allowed -p tcp -m state --state NEW -m multiport --destination-port $HTTP -j ACCEPT
$IPTABLES -A wireless-allowed -p udp --dport $DNS -j ACCEPT

# Chain for packets coming from the wireless network and forwarded to the
# internet

$IPTABLES -N wireless2internet

$IPTABLES -A wireless2internet -p tcp -m state --state NEW -m multiport --destination-port $HTTP -j ACCEPT

#===============================================================================
#
# INPUT CHAIN
#
#===============================================================================

$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A INPUT -i $LOIF  -j ACCEPT

$IPTABLES -A INPUT -i $EXTIF -j internet-allowed
$IPTABLES -A INPUT -i $EXTIF -j LOG --log-prefix "IN EXT REJ: "

$IPTABLES -A INPUT -i $INTIF -j LOG --log-prefix "IN INT REJ: "

$IPTABLES -A INPUT -i $TUNIF -j wireless-allowed
$IPTABLES -A INPUT -i $TUNIF -j LOG --log-prefix "IN TUN REJ: "

#===============================================================================
#
# FORWARD CHAIN
#
#===============================================================================

$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A FORWARD -i $EXTIF -j LOG --log-prefix "FW EXT REJ: "

$IPTABLES -A FORWARD -i $INTIF -j LOG --log-prefix "FW INT REJ: "

$IPTABLES -A FORWARD -i $TUNIF -o $EXTIF -j wireless2internet
$IPTABLES -A FORWARD -i $TUNIF -j LOG --log-prefix "FW TUN REJ: "

Although they were not strictly needed, I think they are good to improve readability anyway, as you can see from the previous snippet of the firewall script.

]]>
a matter of life and death /blog//post/a_matter_of_life_and_death.html /blog//post/a_matter_of_life_and_death.html musica Fri, 06 Jul 2007 21:59:06 +0200 Musica

Cosa si può chiedere o, più precisamente, cosa ci si può aspettare da un gruppo che cavalca le scene da oltre trent'anni e con una discografia di tredici album in studio - questo è il quattordicesimo? Dopo aver visto tanti gruppi invecchiare dignitosamente riproponendo la propria musica all'infinito - per quanto in modo ineccepibile - la domanda è senz'altro legittima.

Gli Iron Maiden, semplicemente, non sono invecchiati. Dopo essere stati la pietra angolare di un genere ed averne creato molti dei clichè, continuano nell'esplorazione di nuove frontiere sonore e compositive; fedeli a se stessi ed alla loro voglia di rinnovarsi.

A matter of life and death prosegue il discorso artistico cominciato con "Brave new world" e perfezionato nello splendido "Dance of death". La formazione con tre chitarre permette un ventaglio di possibilità estremamente ampio che i nostri non esitano a sfruttare in ogni modo possibile. Ad anni luce di distanza dai classici del loro passato artistico, ci troviamo di fronte ad un album che fa della complessità compositiva e della magnificenza sonora il proprio marchio.

Dieci pezzi senza nessun calo di tensione, in cui è la tematica della guerra a farla da padrone. Liriche taglienti ed esplicite completano l'insieme e soddisfano le aspettative.

Bellissimo, nel suo complesso. Colpisce al primo ascolto e si apprezza ogni volta di più.

]]>
what openldap is /blog//post/what_openldap_is.html /blog//post/what_openldap_is.html networking Thu, 05 Jul 2007 22:34:16 +0200 Networking

If you need to know what OpenLDAP is, and don't have time to read the really good OpenLDAP Administrator's guide, I think the following mind map can be useful.

What OpenLDAP is

]]>
etching the gargoyle - post installation tuning /blog//post/etching_the_gargoyle_-_post_installation_tuning.html /blog//post/etching_the_gargoyle_-_post_installation_tuning.html debian sysadmin unix Sun, 24 Jun 2007 15:50:54 +0200 Debian

Final steps for my etch upgrade. On the test machine I just had to perform two tasks to tune the system.

Filesystem tuning

I added the dir_index flag to all non volatile filesystems. The dir_index option force the use of hashed b-trees to speed up lookups in large directories.

$ tune2fs -O +dir_index /dev/hda1

the previous operation was repeated for all filesystems.

Old kernels removal

I used aptitude to remove any old 2.4 kernel installed on the system.

]]>
il demone /blog//post/il_demone.html /blog//post/il_demone.html letture Sat, 23 Jun 2007 23:04:21 +0200 letture

Siamo arrivati alla fine. "Mageburg - Il demone" chiude una trilogia cominciata tre anni fa, quasi duemila pagine fa. Degli altri capitoli ho parlato brevemente in passato; altrettanto farò in questo caso.

La guerra dei trent'anni infuria, la morte raccoglie tributi ovunque desideri, il sangue scorre senza soluzione di continuità. Uno scenario apocalittico, questa volta più apocalittico di quanto ci si potrebbe aspettare. Su questo sfondo virato al nero - o al rosso - le vicende narrative lasciate aperte in precedenza trovano la loro conclusione, nel solito modo cui Alan Altieri ci ha abituati. Freddo, lucido ed inarrestabile. Tutte le domande trovano risposte, mai banali nemmeno quando sembrano scontate.

Il principe dei dannati, l'eretico in nero, il costruttore di lenti (o di armi), l'osservatore, la strega, il soldato... il destino di compie. La logica del vuoto.

]]>
mail forwarding loop /blog//post/mail_forwarding_loop.html /blog//post/mail_forwarding_loop.html networking sysadmin Sat, 16 Jun 2007 13:41:44 +0200 Networking

Some time ago I found another oddity diving in the big sea of spam messages. Suddenly, I started to receive the following errors:

From: Mail Delivery System <MAILER-DAEMON@xxxxx.xx>
To: postmaster@xxxxx.xx
Subject: Postmaster Copy: Undelivered Mail
Date: Tue, 12 Jun 2007 11:41:15 +0200 (CEST)

Content-Description: Notification

<scass@xxxxx.xx>: mail forwarding loop for scass@xxxxx.xx

Content-Description: Delivery report
Reporting-MTA: dns; mx.xxxxx.xx
X-Postfix-on-Linux--i386--Queue-ID: CEA9EB40F1
X-Postfix-on-Linux--i386--Sender: rfc822; gqmq@xxxxx.xx
Arrival-Date: Tue, 12 Jun 2007 11:41:14 +0200 (CEST)

Final-Recipient: rfc822; scass@xxxxx.xx
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix-on-Linux--i386-; mail forwarding loop for
    scass@xxxxx.xx

Content-Description: Undelivered Message Headers
Received: from catv-50636fd7.catv.broadband.hu (catv-50636fd7.catv.broadband.hu [80.
99.111.215])
        by mx.xxxxx.xx (Postfix on Linux (i386)) with SMTP id CEA9EB40F1
        for <scass@xxxxx.xx>; Tue, 12 Jun 2007 11:41:14 +0200 (CEST)
X-Original-To: scass@xxxxx.xx
Delivered-To: scass@xxxxx.xx
Received: from [80.99.111.215] (port=21760 helo=catv-50636fd7.catv.broadband.hu)
        by mx1.xxxxx.xx with esmtp 
        id 433054-433054-08
        for scass@xxxxx.xx; Tue, 12 Jun 2007 11:41:19 +0100 (EET)
Message-ID: <499701c7ace6$01c7ace6$d76f6350@xxxxx.xx>
From: "Gerry" <gqmq@xxxxx.xx>
To: "Duane" <scass@xxxxx.xx>
Subject: financier than ankara
Date: Tue, 12 Jun 2007 11:41:19 +0100 (EET)
MIME-Version: 1.0
Content-Type: multipart/alternative;
        boundary="----=_NextPart_001_4994_01C7ACD5.D4476A10"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.3028
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028

Why there is a forwarding loop? I spent some time checking all the postfix's configuration file and everything looked good.

So I gave a closer loop at the email... it seems that the remote server sent an email with the Delivered-To: header set to the recipient, which then triggers the error notified.

From the local(8) manpage:

In order to stop mail forwarding loops early, the software
adds an optional Delivered-To: header with the final enve-
lope recipient address. If mail arrives  for  a  recipient
that is already listed in a Delivered-To: header, the mes-
sage is bounced.

Nothing to really worry about...

]]>
instant messaging /blog//post/instant_messaging.html /blog//post/instant_messaging.html geek tools Tue, 22 May 2007 12:31:57 +0200 Geek I recently switched from Psi to mcabber. You know, the power of the shell, the cult of the console and stuff like that. The real reason is that mcabber interacts better with my favorite window manager, dwm, and has exactly the same functionalities I'm used to use.

After the switch, I needed to find a way to be notified of incoming messages; something simple, like a visual indicator or the like. mcabber can handle incoming events and execute an external script, so the only thing to do was finding a suitable tool for notification. Browsing around I found dzen, a general purpose notification utility. It is like a post-it you can put anywhere on the screen and it is very flexible.

So this is how I put things together:

$ vi .mcabber/jabber.org-rc

[...]
set events_command = /home/adotti/bin/notify.sh
[...]

and this is the notification script:

#! /bin/sh
#
# Simple event notifier for mcabber. Uses dzen2 to display messages.

event=$1
msg=$2

if [ $event = "MSG" ]; then
        case "$msg" in
        IN)
        ;;
        MUC)
        ;;
        OUT)
                exit 0
        ;;
        esac
        killall dzen2 > /dev/null 2>&1
        (echo "IM") | \
        dzen2 -p -x 1100 -w 30 -fn "-artwiz-snap-*-*-*-*-10-100-75-75-p-*-iso8859-1" &
fi

Note that I kept things really simple and there is a huge room for improvements. Anyway, every time an incoming message arrives, a little red square appears near the top right corner of the screen.

]]>
appuntamenti /blog//post/appuntamenti.html /blog//post/appuntamenti.html distonie Thu, 17 May 2007 09:21:12 +0200 Distonie

Oggi sono in ferie... sveglia alle 7.00, appuntamento alle 8.00 per consegnare dei documenti. Nonostante il traffico, il parcheggio e la malsana aria di una Bologna in un generico giorno feriale, sono puntuale. Alle 8.15 mi avvertono che la persona che dovevo incontrare ha avuto un contrattempo - un meteorite sul terrazzo od una delle piaghe bibliche, non ho prestato molta attenzione - fatto sta che l'appuntamento è stato rimandato.

Ho passato alcuni lunghi secondi a valutare se fosse il caso si fare seppuku oppure una strage di segretarie. Ho optato per un krapfen alla crema... a volte le giornate hanno bisogno di una mano per cominciare in modo decente.

]]>
mattino /blog//post/mattino.html /blog//post/mattino.html scatti Sun, 06 May 2007 10:27:05 +0200 Scatti

Alba ti saluto,
la bellezza della tua luce,
così calda e tenera mai è stata la notte

Mattino

Poi apri gli occhi... la poesia è morta.

]]>
etching the gargoyle - execution /blog//post/etching_the_gargoyle_-_execution.html /blog//post/etching_the_gargoyle_-_execution.html debian sysadmin unix Sat, 05 May 2007 20:31:27 +0200 Debian

I got gargoyle, the etch upgraded testing box, ready from a week or so; it was time to do the job.

I just followed the etch release notes step by step. For the impatient - remembering that this a standard sarge headless box - this is what I did:

  • changed the sources for apt
  • updated the package list (aptitude update)
  • performed an upgrade (aptitude upgrade)
  • installed intitrd-tools to get libc6 and locales updated (other things will be updated as well)
  • performed a dist upgrade (aptitude dist-upgrade)
  • edited any configuration file that needs to be fixed or updated
  • updated the package list again
  • removed obsolete packages
  • rerun lilo (/sbin/lilo -v)
  • rebooted

Etched :)

Before following the step outlined above, keep in mind that you might have to perform some more or different steps, depending on your setup. Definitely read the release notes!

You have been warned...

]]>
phpmyadmin authentication timeout /blog//post/phpmyadmin_authentication_timeout.html /blog//post/phpmyadmin_authentication_timeout.html sysadmin tools Mon, 30 Apr 2007 19:35:58 +0200 Tools

I'm just an occasional user of phpmyadmin, but some colleagues who heavily works on databases told me that they were really annoyed by the fact that after a quite short amount of time they needed to authenticate again.

The problem is that the cookie authentication set the lifetime of the cookie itself to 1800 seconds (30 minutes); after 30 minutes you need to login again.

If you like to change this behavior, edit the file /etc/phpmyadmin/config.inc.php and add the following line:

$cfg['LoginCookieValidity'] = 18000;

this will set the lifetime of the cookie to 5 hours (18000 seconds).

]]>
etching the gargoyle - preparation /blog//post/etching_the_gargoyle_-_preparation.html /blog//post/etching_the_gargoyle_-_preparation.html debian sysadmin unix Sun, 29 Apr 2007 11:59:29 +0200 Debian

I took the chance of a quiet Saturday morning to start testing the upgrade path from sarge to etch. The target machine was gargoyle, a FTP server with a minimum set of packages installed, and it was chosen to discover the most relevant problems I could encounter with the other boxes I own (my setups are quite similar).

The only mayor issue outlined in the release notes is the need to upgrade the kernel before the full upgrade takes place. The box run a 2.4.27 kernel, so I needed to upgrade to a 2.6.8 kernel. As far as I could test, the via_rhine driver shipped with the official debian kernel sources is broken, so I used a vanilla 2.6.8.1 kernel to have my D-Link network card working.

Now that everything is in place, I'm ready...

]]>
cambiamenti /blog//post/cambiamenti.html /blog//post/cambiamenti.html distonie Wed, 25 Apr 2007 12:09:41 +0200 Distonie

Alla fine, dopo averci pensato un po' sù, ho deciso di farlo... è tempo di cominciare a postare anche in inglese - specialmente tutto quello che riguarda la roba tecnica. Il resto resta in italiano, anche perchè la mia prosa inglese si può considerare quantomeno dubbia in alcune situazioni.

Detto ciò, ho passato la mattinata ad adattare le cose per fare in modo di non rompere nulla di quanto già c'era e per aggiungere quanto necessario per il supporto alla lingua inglese. Immancabilmente mi sarò dimenticato qualcosa...

Buon 25 aprile!

]]>
ikiwiki numbacklinks /blog//post/ikiwiki_numbacklinks.html /blog//post/ikiwiki_numbacklinks.html tools Fri, 13 Apr 2007 20:15:37 +0200 Tools

Piccolo suggerimento per chi decide di aggiornare la propria installazione di ikiwiki alla versione 1.49, appena rilasciata.

Nella nuova release, oltre ad un paio di cose che sono state aggiunte e non sono abilitate di default - poichè al momento non mi servono, non mi ci soffermo - si trova una funzionalità che controlla il numero massimo di backlink inseriti in una pagina. Il senso della cosa è abbastanza chiaro: in tutti quei casi dove si ha una pagina indice, vengono riportati solo i primi n backlink ed i rimanenti vengono visualizzati a richiesta.

La funzionalità è abilitata, e vengono visualizzati di base i primi dieci backlink.

Per chi volesse mantenere il vecchio comportamento o controllare il numero di backlink visualizzati, l'opzione a cui fare riferimento è --numbacklinks seguita dal numero di backlink da visualizzare (0 per disabilitare la funzionalità).

Per chi usa un file di configurazione, basta inserire la seguente riga:

numbacklinks => <n>,

dove n ha un ovvio significato.

]]>
thin lizzy /blog//post/thin_lizzy.html /blog//post/thin_lizzy.html musica Mon, 09 Apr 2007 20:17:06 +0200 Musica

Ho passato il pomeriggio a guardare un dvd dei Thin Lizzy, band di cui conoscevo solamente il nome e qualche altro dettaglio insignificante letto molti anni fa su si una qualche rivista di musica.

Il dvd in questione è un piacevole carnevale di video ed esibizioni live, che copre l'intera carriera della band, dagli esordii fino ai primi anni '80, crepuscolo della loro attività. E` stata una visione piacevole, tanto che ho provveduto a fare qualche ricerca in rete per documentarmi un po'. Di fatto ho trovato poco.

Formatosi agli inizi degli anni '70 in quel di Dublino, il gruppo, inizialmente un trio capitanato dal leader e bassista Phil Lynott, viene curiosamente classificato come band hard rock/heavy metal. Passi per l'hard rock - le prime composizioni sono abbastanza robuste - ma di heavy metal non ne ho trovato traccia.

Nel corso degli anni la formazione ha subito diversi cambiamenti, inserendo nella line-up alcuni chitarristi di chiara fama (Gary Moore e quel Brian "Robbo" Robertson già sentito con i Motorhead in "Another perfect day"), e caratterizzandosi, dopo gli esordi, per la presenza di due chitarre soliste che si alternano di brano in brano. Stando alle fonti che ho consultato (e di cui sotto riporto i link) pare siano stati i primi - o fra i primi - influenzando diversi altri gruppi a venire.

L'attività artistica si è conclusa nel 1984, e due anni dopo Lynott è deceduto per le conseguenze dell'abuso di eroina. Pare che ultimamente si siano riformati, ma ho dedotto che questa seconda vita artistica sia del tutto trascurabile.

L'impressione che ne ho tratto è che, limitandosi ai lavori degli anni '70, i Thin Lizzy siano una buona band di hard rock, forse un tantino troppo allegra per i miei gusti, ma senz'altro degna di un approfondimento. Per quanto riguarda il repertorio più recente, lo considero becera musica anni '80, neanche tanto originale. Avrò un'idea più precisa appena avrò messo le mani su qualche cd.

Per chi vuole farsi un'opinione in proprio, un paio di link utili:

]]>
lsmbox /blog//post/lsmbox.html /blog//post/lsmbox.html tools unix Sun, 01 Apr 2007 16:38:47 +0200 Tools

Grazie ad un estemporaneo suggerimento di Zack, ho scoperto lsmbox, simpatica utility che consente di rilevare il numero di nuovi messaggi in una o più mailbox. Molto utile l'interfaccia testuale che consente di avere un elenco sempre aggiornato della situazione.

Non ho avuto dubbi a pensionare il bradipale script shell che tempo fa avevo creato allo scopo.

]]>
ikiwiki 1.48 /blog//post/ikiwiki_1.48.html /blog//post/ikiwiki_1.48.html tools web Fri, 30 Mar 2007 20:20:54 +0200 Tools

Ennesimo aggiornamento ad Ikiwiki, che questa volta ha richiesto un po' di elaborazione in più.

Sono cambiati un po' di dettagli nell'implementazione e, come conseguenza, le clausole pagespec che si usano normalmente per blogging ed archivi si comportano in maniera leggermente diversa. Intendiamoci, la cosa è ampiamente annunciata nelle release notes, e non è nemmeno traumatico fare le modifiche del caso, ma penso che un piccolo esempio possa tornare utile.

Per realizzare gli indici delle singole categorie del mio blog, uso una pagina (es: /tag/cinema.mdwn) contenente la seguente pagespec:

link(tag/cinema)

Questa fa si che nella pagina compaia un elenco di tutti i post taggati con cinema. Ho anche una pagina chiamata tag.mdwn con un elenco di tutti i tag usati nel blog che, ovviamente, rimanda a tutti gli indici categoria per categoria.

Dopo l'aggiornamento alla nuova versione, l'indice dei post sul cinema visualizzava anche un link alla suddetta pagina tag.

Per correggere ho modificato la clausola pagespec come segue:

link(tag/cinema) and !tag

Modifica minimale ma sufficiente... la parte divertente è stata replicarla per tutti gli indici :)

]]>
the aviator /blog//post/the_aviator.html /blog//post/the_aviator.html cinema Wed, 28 Mar 2007 19:00:41 +0200 Cinema

Questo è quello che io definisco, con un filino di distacco, un film "nel giusto mezzo". Grosso budget, confezione bella ed accattivante, cast all'altezza e buona recitazione. Ma essendo, appunto, un film nel giusto mezzo, difficilmente si ricorda già a poche ore della visione.

The aviator narra la storia di Howard Huges (Leonardo DiCaprio), geniale paranoico ipocondriaco ossessivo personaggio che ha rivoluzionato il mondo dell'aviazione, oltre ad aver prodotto e girato colossal ad Hollywood e conquistato il cuore di alcune delle più belle star del cinema degli anni '30.

Curiosamente, non essendo io il maggiore dei fan di DiCaprio, pur considerandolo un bravo attore, sono rimasto estremamente - e piacevolmente - sorpreso dalla sua recitazione. Tic, manie ed ossessioni sembrano reali, parte di lui più che del personaggio che interpreta.

Altro applauso di cuore a Cate Blanchett, perfetta quanto schizzata Katharine Hepburn.

Oltre a questi due picchi in positivo, segnalo l'esordio cinematografico della biondissima Gwen Stefani (già cantante dei No Doubt) e la presenza - talvolta molto fugace - di grossi nomi del grande schermo.

]]>
300 /blog//post/300.html /blog//post/300.html cinema Sat, 24 Mar 2007 12:41:00 +0100 Cinema

Sul fatto che Frank MIller sia un genio, credo, ci sia poco da discutere. Le sue opere sono praticamente perfette in termini di trama, e impressionanti dal punto di vista visivo.

300, come già Sin City prima, sfrutta appieno la tecnologia digitale per ricreare quanto l'autore riesce a fare con china e colori. Ed il risultato è praticamente perfetto. Ne viene fuori un film epico che non ha veramente niente fuori posto (musica, recitazione, ambientazioni, costumi) e che non ha niente a che vedere con altri recenti film di genere tanto celebrati. Semplicemente si colloca una spanna sopra.

Sconsigliato a chi si impressiona alla vista del sangue, che qui ha lo stesso colore cremisi dei mantelli degli spartani, e consigliatissimo a tutti gli altri, specie a chi è in astinenza di ottimo cinema.

]]>
in rock /blog//post/in_rock.html /blog//post/in_rock.html musica Sat, 17 Mar 2007 17:48:20 +0100 Musica

Non è un disco, ma una vera e propria lezione di storia della musica. Del resto loro, i Deep Purple, la storia della musica l'hanno scritta sul serio.

In rock è una perfetta mescolanza di rock, blues ed energia, ruvida quanto attuale nonostante i suoni (volutamente) grezzi. Gli otto pezzi che compongono l'album sono un piacevole inferno rumoroso dove il ruolo del Virgilio lo gioca Ian Gillan con la sua voce possente e cristallina, sostenuta egregiamente dai riff di chitarra di Ritchie Blackmore e dall'hammon del baffuto Jon Lord.

Se devo scegliere qualche brano in particolare, azzardo la terna Speed king, Living wreck e Black night, a cui va aggiunta l'immortale Child in time, uno dei pezzi più belli di sempre.

]]>
ikiwiki 1.45 /blog//post/ikiwiki_1.45.html /blog//post/ikiwiki_1.45.html tools web Mon, 12 Mar 2007 23:01:16 +0100 Tools

E` passato un po' di tempo dall'ultima volta che ho postato di ikiwiki; onestamente è passato un po' di tempo anche dall'ultima volta che l'ho aggiornato.

La nuova versione include i soliti miglioramenti strutturali e bugfix, il che non può che fare piacere, oltre ad una nutrita schiera di nuovi template - alcuni dei quali non ho proprio capito a cosa possano servire. In ogni caso, considerato anche che il mio setup è abbastanza semplice, ho deciso di modificare il meno possibile.

L'aggiornamento è stato abbastanza indolore; vengono segnalati alcuni curiosi warning alla creazione del makefile ma, a parte questo, niente di particolarmente problematico.

Ricordate di copiare nella vostra directory di template il nuovo archivepage.tmpl altrimenti, se usate della pagine stile archivio, le troverete desolantemente vuote.

]]>
intrigo a berlino /blog//post/intrigo_a_berlino.html /blog//post/intrigo_a_berlino.html cinema Sun, 11 Mar 2007 21:40:56 +0100 Cinema

Non sono mai stato un grande amante dei film anni '40. La mia cinematografia nasce con il colore, sebbene di tanto in tanto abbia fatto delle eccezioni.

L'ultima della serie l'ho fatta per "Intrigo a Berlino, non tanto perchè si tratti di un film d'epoca, tanto perchè, a conti fatti, lo è.

Che si può dire di questa pellicola? Certamente è un grande esercizio di stile: inquadrature, colori, dialoghi e persino il modo di recitare degli attori ricalca con perfezione l'approccio cinematografico del tempo. Questo è senz'altro l'aspetto che colpisce di più, e che cattura l'attenzione da una trama che di per se non è nulla di eccezionale e nulla di sorprendente (anni '40 anche questa?). Complimenti a Soderbergh dunque.

Poche parole invece per il resto del cast (Clooney, Blanchett, Maguire), indiscutibilmente professionale ma non in condizioni - per quanto detto sopra - di dimostrare le proprie doti interpretative.

Onestamente l'ho trovato un po' piatto e lento, ma probabilmente il mio palato mal sopporta certi sapori. Per altri, il gusto potrebbe essere differente.

]]>
vpn e dns /blog//post/vpn_e_dns.html /blog//post/vpn_e_dns.html networking security sysadmin Sat, 03 Mar 2007 19:25:47 +0100 Networking

Recentemente abbiamo installato in azienda una VPN usando openvpn. Installazione pulita e grande beneficio di accedere alle risorse della rete aziendale anche quando non si è fisicamente presenti in loco.

Purtroppo però, nella mia personale situazione, mi sono trovato ad affrontare un piccolo problema di DNS.

A casa, le mie macchine sono collegate in rete e appartengono tutte al dominio home.local; ho un server DNS privato che provvede alla risoluzione dei nomi per questo dominio fasullo e mi permette di accedere ai vari servizi. Anche in ufficio i servizi sono raggruppati su server locali appartenenti ai dominii office.local ed office.dmz, ed un DNS provvede alle risoluzioni necessarie. Fare giochi con il file resolv.conf non ha portato ad alcun risultato - ed /etc/hosts non è nemmeno da prendere in considerazione - in quanto, comunque la si girasse, qualche dominio privato risultava comunque non raggiungibile.

Sfruttando il fatto che la macchina che crea il tunnel VPN ha anche un DNS (il solito bind), ho trovato questa soluzione, che probabilmente non è la migliore, ma nel mio caso si è rivelata decisamente efficiente.

Per i dominii privati dell'ufficio ho creato nel file di configurazione di bind delle zone di tipo forward:

zone "office.local" {
        type forward;
        forward only;
        forwarders {
                192.168.10.1;
        };
};

zone "10.168.192.in-addr.arpa" {
        type forward;
        forward only;
        forwarders {
                192.168.10.1;
        };
};

Questo mi ha permesso di sfruttare il DNS locale per le normali risoluzioni (casa/internet) e di appoggiarmi al DNS dell'ufficio solamente per le cose inerenti ai servizi aziendali.

]]>
dwm 3.7 /blog//post/dwm_3.7.html /blog//post/dwm_3.7.html geek tools unix Sun, 25 Feb 2007 13:00:05 +0100 geek

Dirò una cosa ovvia, ma se si vuole utilizzare sempre l'ultimissima versione di un'applicazione, è caldamente consigliato aggiornare senza saltare versioni in mezzo. Questo, ovviamente, in un mondo perfetto dove la disponibilità di tempo è praticamente totale. Nella realtà, il tempo non sempre c'è, e gli upgrade non sono sempre indolori; il dolore provato dipende dalla complessità dell'applicazione che si usa.

Nel mio caso, mi sono trovato ad aggiornare dwm dalla versione 3.3 alla neonata 3.7... e nel frattempo il codice dell'applicazione è stato ampiamente ripulito, lasciandomi con un file di configurazione praticamente inutilizzabile. Considerate che il mio C è particolarmente arrugginito, quindi la gestione dei pittoreschi errori che mi sono presentati in fase di compilazione non è stata proprio banale.

In trenta minuti di sevizie alla tastiera mi sono guadagnato un posto privilegiato in uno dei gironi danteschi, ma almeno il mio window manager preferito viaggia liscio come l'olio, e, a quanto mi pare di percepire, più veloce di prima.

Morale della favola: il feticismo può anche essere doloroso, e la macchie di sangue sulla tastiera potrebbero finire per essere le tue. Talvolta ne vale la pena.

]]>
17 re /blog//post/17_re.html /blog//post/17_re.html musica Thu, 22 Feb 2007 21:57:38 +0100 Musica

C'è stato un periodo nella musica dei Litfiba in cui non c'era spazio nè per elettromacumbe nè per amori disperati. Era il 1986, e la band fiorentina portava avanti il proprio percorso musicale ampiamente contaminato da sonorità dark e new wave.

Era il 1986 quando uscì 17 re; sono passati vent'anni e questo disco conserva intatti la sua forza ed il suo sudiciume artistico. Originariamente un doppio disco, ora raccolto in un unico cd, è un viaggio a spirale verso l'interno, un viaggio delirante in cui suoni sporchi e testi visionari dilatano le sensazioni ed alterano i contorni.

Un album fatto di mille immagini che si susseguono senza tregua, così diverse fra loro ma al tempo stesso unite da quella stessa malata atmosfera. Affascinante come il male che si porta dentro.

Veramente notevole.

]]>
un server in quattro ore /blog//post/un_server_in_quattro_ore.html /blog//post/un_server_in_quattro_ore.html sysadmin unix Thu, 15 Feb 2007 00:03:05 +0100 Sysadmin

Come d'abitudine, ogni anno provvedo alla sostituzione dell'hard disk del mio server casalingo. Quest'anno ho posticipato un po' l'intervento, ed alla fine mi sono ritrovato con nuovo hardware da utilizzare. Anzichè cambiare il disco come al solito, ho cambiato tutta la macchina.

Essendo una persona estremamente pigra rispetto a questo genere di attività, ho cercato di minimizzare il peso della cosa. Quattro ore sono state sufficienti a ripristinare le cose esattamente come erano prima, eccezzion fatta per il ferro che fa girare il tutto.

Ecco una breve check list delle cose che ho fatto; sai mai che possa tornare utile.

  • montata la macchina con disco nuovo
  • installata una debian minimale via rete
  • compilato un kernel ad hoc (cosa perfettamente superflua ma sono abituato così).
  • installati un po' di orpelli per amministrare meglio il sistema (editor, file manager e altri tool vari)
  • configurato il firewall ed eseguito l'hardening di base
  • inserito il disco che uso per i backup, contenente anche i dati del vecchio server
  • installati i servizi necessari
  • ripristinate le configurazioni dei servizi e gli altri dati

Tutto come prima, solo più veloce.

]]>
psi e dwm /blog//post/psi_e_dwm.html /blog//post/psi_e_dwm.html geek unix Sun, 11 Feb 2007 19:38:13 +0100 Per tutti coloro che usano dwm come windows manager e psi come client per l'instant messaging, ecco una cosetta carina che può tornare utile.

Aggiungendo questa riga nel vostro .xsession (o .xinitrc, a seconda di quello che usate):

echo "[`xwininfo -root -children 2>/dev/null \
| grep Psi \
| grep -c '*'`]"

vi comparirà nella status bar il numero di finestre di psi che hanno cambiato stato - ovvero che contengono nuovi messaggi o altre notifiche.

Una piccola avvertenza: la gestione del fuoco delle finestre attraverso i diversi tag, in dwm, non è propriamente intuitiva, per cui, per avere una informazione corretta, dovrete adattarvi un attimo.

Per i curiosi, ecco il mio .xsession completo.

export PATH=$PATH:/home/adotti/bin
while true
do
    echo "[`xwininfo -root -children 2>/dev/null | grep Psi | grep -c '*'`]" \
    `date "+%Y-%m-%d [%R]"` \
    `uptime | cut -c 14-18`
    sleep 2
done | dwm

Un grazie ad Antoni Grzymala per i suggerimenti.

]]>
st.anger /blog//post/st.anger.html /blog//post/st.anger.html musica Sun, 28 Jan 2007 20:23:56 +0100 Musica

Mi viene un po' di malinconia ogni volta che ascolto questo album. Forse perchè i Metallica li seguo dagli inizi, e non riesco ad approcciarmi all'ascolto con la mente vuota da ciò che è stato.

St. Anger è rabbia vomitata d'istinto. Un atto quasi liberatorio - si vedano anche i testi decisamente introspettivi - che, purtroppo, risulta scomposto e quindi privo di molta della sua forza.

Pubblicato nel 2003 dopo un periodo abbastanza nero per i nostri cavalieri dell'apocalisse, caratterizzato da un cambio di bassista, dai diversi problemi di James Hetfield con l'alcool e da altre e varie tensioni all'interno del gruppo, cerca forse di essere un ritorno all'antico, a quelle sonorità pesanti che si erano sentite nel diverso, ma interessante, "Metallica".

Fallisce, almeno in parte nell'intento. Suoni poco curati (specie per la batteria), composizioni banalotte e un alone di già sentito che, anzichè essere archetipo di genere, sembra più un disperato tentativo di aggrapparsi ad un'identità artistica persa chissà dove nel passato.

Può darsi che sia una tappa del viaggio di ritorno verso casa, oppure che si tratti del canto del cigno di una band che ha avuto qualcosa da dire e, ora, ha semplicemente finito gli argomenti.

]]>
ikiwiki 1.40 /blog//post/ikiwiki_1.40.html /blog//post/ikiwiki_1.40.html tools web Wed, 17 Jan 2007 22:49:41 +0100 Era da un po' che non parlavo di ikiwiki. Sebbene le release si siano susseguite regolarmente, non ho avuto molto tempo per aggiornare ed esplorare. La release 1.40 è stata una buona occasione per fermarsi un attimo a dare un'occhiata più approfondita.

Comincio con le rogne, che istintivamente imputo al fatto che uso una Debian Sarge e quindi è possibile che abbia qualche libreria perl non aggiornata. Appena fatto l'aggiornamento mi sono trovato a gestire un errore relativo a gettext, che non sono riuscito a decifrare dato che normalmente ignoro le localizzazioni.

Dato che l'errore andava comunque sistemato od aggirato, ho scelto la seconda strada, modificando la funzione gettext contenuta nel modulo Ikiwiki.pm come segue:

sub gettext {
    return shift;
}

Fatto ciò, tutto liscio...

Passiamo ora alle nuove funzionalità. Segnalo intanto il supporto per l'autenticazione basato su OpenID, qualcosa che ancora non uso ma che mi piacerebbe approfondire.

Dal versante plugin invece, ci sono tre nuovi mattoncini:

  • navbar: consente di inserire all'interno di una pagina una barra di navigazione
  • textile: aggiunge il supporto per il linguaggio di markup omonimo (in alternativa al solito markdown)
  • rawhtml: permette di copiare pari pari pagine html fatte e finite presenti nell'albero dei sorgenti del sito

I primi due li cito per completezza, dato che al momento non mi servono; il terzo invece è abbastanza utile, dato che aumenta la flessibilità dello strumento (ma occhio alle problematiche di sicurezza!) e soprattutto consente di evitare l'orrendo workaround di cui vi avevo parlato qualche post fà.

]]>
dwm 3.1 /blog//post/dwm_3.1.html /blog//post/dwm_3.1.html tools unix Tue, 16 Jan 2007 22:53:28 +0100 A nemmeno quattro giorni dal rilascio della versione 3.0, ecco la versione 3.1. Questa release risulta particolarmente controversa, dato che l'autore ha preso alcune decisioni che non sono state accolte benissimo dalla comunità degli utilizzatori. In particolare, sono stati rimossi i piccoli rettangoli che visualizzavano i titoli delle finestre prive di fuoco.

Ho aggiornato oggi, e devo dire che la mia impressione rispetto a questa modifica è favorevole; non è che mi servissero molto. Inoltre, apprezzo molto la nuova combinazione di colori, che rende l'insieme, visivamente, molto più pulito.

Vi rimando alla home page del progetto per il download e per gli screenshot di rito (al momento non ancora aggiornati).

]]>
brixen retinex /blog//post/brixen_retinex.html /blog//post/brixen_retinex.html geek graphics Sun, 14 Jan 2007 16:07:00 +0100 Doveva essere una serata trascorsa a giocherellare con compiz e dwm, ma alla fine, complice l'idea di creare uno sfondo carino da usare in trasparenza con un terminale, io ed Enrico Zini siamo finiti a sperimentare con Gimp. Grazie anche a questo bello scatto

Brixen

fatto da Enrico a Brixen.

Provando a caso un po' di filtri ed effetti vari, abbiamo individuato questa combinazione di passi:

  • applicato il filtro retinex
  • sperimentato con il filter pack per dare un po' di colore
  • applicato in primo piano un layer nero semi trasparente

Il risultato è questo:

Brixen-retinex

Usato come sfondo ha veramente qualcosa da dire.

Se volete, potete scaricare l'immagine a grandezza naturale (1280x1024).

]]>
dwm 3.0 /blog//post/dwm_3.0.html /blog//post/dwm_3.0.html tools unix Fri, 12 Jan 2007 23:02:10 +0100 Appena uscita la nuova release di dwm, non ho resistito a fare l'aggiornamento. E non me ne sono (ovviamente) pentito.

Questa nuova release ha in particolare una singola nuova funzionalità, che personalmente trovo estremamente utile: è possibile definire - e cambiare a runtime - il numero di client che vengono collocati nella master column. Questo consente di ottenere facilmente sia layout orizzontali (non credo di essere l'unico che fa monitoraggio di log), sia layout complessi con un arbitrario numero di finestre di egual importanza. Vi consiglio di provare... il livello di flessibilità che si ottiene è veramente altissimo.

Altra cosa che ho fatto contestualmente all'aggiornamento del window manager, è stata l'installazione di dmenu. Comando molto versatile che non ho ancora esplorato completamente, ma che trovo sin d'ora molto utile per lanciare comandi al volo (dwm non implementa nativamente alcun tipo di menu).

Resto in attesa di qualche altra minimale mirabilia, ed intanto mi godo il mio nuovo desktop :)

]]>
casino royale /blog//post/casino_royale.html /blog//post/casino_royale.html cinema Tue, 09 Jan 2007 22:38:11 +0100 Cinema

Finalmente mi riconcilio con James Bond.

Inutile raccontarvi la trama, parlarvi dei personaggi o aggiungere altri dettagli. Il cinema dell'agente 007 lo conosciamo tutti, direi, fin troppo bene. Preferisco fermarmi un secondo su almeno un paio di buoni motivi per andare a vedere questo film.

Intanto il volto nuovo: Daniel Craig. Semplicemente perfetto. Forse un po' meno stylish degli altri sui predecessori, ma con il phisique du role per reggere in modo credibile le scene di azione.

Seconda cosa: la storia. Dopo il periodo oscuro dei film con Pierce Brosnan - e non certo solo per colpa di Brosnan - finalmente una sceneggiatura che, pur essendo vincolata a contenere tutta una serie di imprescindibili componenti, risulta un po' meno prevedibile del solito.

Ovviamente non è un capolavoro del cinema moderno, ma almeno è un buon film d'azione. Ben fatto e ben recitato. I pop-corn si gustano con piacere.

]]>
reboot a catena /blog//post/reboot_a_catena.html /blog//post/reboot_a_catena.html sysadmin windows Sat, 06 Jan 2007 11:39:16 +0100 Penso che sia capitato a tutti i possessori di WinXP - quantomeno è possibile che capiti - che il pc cominci a fare, dopo il primo boot, dei reboot a catena, inframmezzati da rapidissimi schermi blu con oscure segnalazioni.

Inutile dirvi di avere un buon backup a mano, dato che questo evento viene spesso generato da problemi hardware. Se siete fortunati, si tratta solo del file boot.ini corrotto, e questo è un possibile rimedio (grazie a Simone Bacciglieri che me lo ha segnalato).

Fate reboot usando il CD di WindowsXP, ed entrate nella console di ripristino. A questo punto digitate:

COPY D:\i386\ntldr C:
COPY D:\i386\ntdetect.com C:
ATTRIB -H -R -S C:\boot.ini
DEL C:\boot.ini
BootCfg /Rebuild

Fate ore un riavvio del computer (senza usare il cd-rom di XP). Se non ci sono altri problemi, il vostro sistema sarà di nuovo funzionante.

]]>
ikiwiki e copia di file html /blog//post/ikiwiki_e_copia_di_file_html.html /blog//post/ikiwiki_e_copia_di_file_html.html geek tools web Tue, 02 Jan 2007 13:13:58 +0100 Piccolo hack di inizio anno, a beneficio di tutti coloro che usano ikiwiki e si trovano nella necessità di avere file html presenti nell'albero dei sorgenti del wiki, all'atto del rendering delle pagine. copiati nella destinazione prescelta.

Di default ikiwiki non copia tutto ciò che ha estensione html o xhtml (più diversi altri tipi di file che è sano ed inutile copiare). Questa è una precisa scelta - dettata da ragioni di sicurezza - ma, nel caso, è possibile configurare le cose affinchè il comportamento sia diverso.

Esiste la variabile wiki_file_prune_regexps che si occupa proprio di questo, istruire ikiwiki sul tipo di pagine da ignorare. Il valore di default - scritto direttamente nel codice - è il seguente:

wiki_file_prune_regexps => [qr/\.\./, qr/^\./, qr/\/\./, qr/\.x?html?$/,
            qr/(^|\/).svn\//, qr/.arch-ids\//, qr/{arch}\//],

Questa variabile può essere aggiunta al file di configurazione di ikiwiki e modificata secondo necessità, includendo ed escludendo ciò che più vi aggrada. Il nuovo valore sovrascriverà il default.

Notate che la cosa non mi sembra documentata, per cui potrebbero esserci modi più intelligenti di agire. Questo di certo funziona.

]]>