You are here

Enrico Zini's blog

Enrico Zini's blog
Checked: 3 years 5 months ago
Updated: 3 years 5 months ago
Update every: 2 hours

Enrico Zini: blog
Subscribe to Enrico Zini's blog

Risotto ai funghi (e un po' di banana)

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
Risotto ai funghi (e un po' di banana)

Avevo voglia di sperimentare, e in casa avevo delle banane. Cosa ci si può fare, con delle banane?

Entra in gioco http://www.foodpairing.be/

Questo sito raggruppa vari ingredienti in base alla comunanza delle sostanze chimiche che gli danno il sapore. E chi c'è vicino alla banana? I FUNGHI!

How to put your /etc under svk

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
How to put your /etc under svk

This is convenient, here's how to do it:

Funny

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
Funny

Has anyone noticed that since asuffield disappeared from list discussions, the quality of list discussions didn't change absolutely at all?

http://people.debian.org/~enrico/dcg/

New Go tagging! maintainer view

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
New Go tagging! maintainer view

A new maintainer view has been added to the Go tagging! page.

It shows all the packages one maintains and comaintains.

It shows smart tagging tips when it can detect work that needs to be done.

Thanks to Myon, it is now linked from the Debian Developer's Packages Overview.

First day in Addis

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
First day in Addis

First day in Addis Ababa, after the introductory session for this 10 days Linux training.

Interesting new quotes I picked up from the excellent presentation of Dr. Dawit:

Much that I bound I could not free Much that I freed returned to me

(I didn't manage to transcribe the attribution)

And this one for Bubulle, about translation:

When you speak to me in my language you speak to my heart when you speak to me in English you speak to my head

(sb.)

Python: "There's Only One Way To Do It"

Enrico Zini's blog - Fri, 05/06/2009 - 10:57pm
Python: "There's Only One Way To Do It"
import array
import numarray
import numeric
import numpy

They're all almost the same, but not quite.

When google gives you an online piece of documentation, it's hard to say what it refers to.

And different scientific modules use one or the other, more or less unpredictably.

Maybe in the future numpy will replace them all.

In the meantime, if I hear someone saying "There's Only One Way To Do It", I will spank their cheeks with a wet fish.

DDE, Debian Data Export

Enrico Zini's blog - Wed, 11/02/2009 - 2:14pm
DDE, Debian Data Export

After testing the idea and the prototype with my presentation at Fosdem, I'm proud to announce DDE, Debian Data Export.

DDE is a way to make it simple to publish and download data. The aim is to be able to access all sorts of Debian information without worrying about data formats, protocols and access control, and to make it easy to discover what data is available.

Bash variable indirection

Enrico Zini's blog - Wed, 10/12/2008 - 2:23pm
Bash variable indirection

This is not how to get, in bash, the value of a variable whose name is in another variable:

$ A=1
$ B=A
$ echo ${$B}
bash: ${$B}: bad substitution

This is how:

$ echo ${!B}
1

It however only works in bash. For more portable scripts, eval is needed:

$ eval echo \$$B
1

Thanks to Martin Krafft and Cyril Brulebois.

Show local configuration changes

Enrico Zini's blog - Sat, 22/11/2008 - 12:11pm
Show local configuration changes

Following a train of thought, I got to the idea that it would be nice to have a way to ask an installed package to show a diff between the configuration that it would autogenerate and the configuration that is on the system.

For example:

Iterating filehandles in python, and buffering

Enrico Zini's blog - Tue, 04/11/2008 - 10:27pm
Iterating filehandles in python, and buffering

Given this simple python script:

#!/usr/bin/python
from subprocess import *
proc = Popen(["/bin/sh", "-c", "for i in `seq 1 10`; do echo $i; sleep 1; done"], stdout=PIPE, bufsize=1)
a = proc.stdout.__iter__()
print a.next()

it is interesting to notice that a.next() takes 10 seconds to run. I tried with bufsize=1 (line buffered) and bufsize=0 (no buffering).

I tried:

rc-buggy packages sorted by popularity

Enrico Zini's blog - Mon, 03/11/2008 - 11:04pm
rc-buggy packages sorted by popularity

After doing a round of tag reviews so that we release lenny with the latest tag contributions, I still had a bit of spare time. Since people are urging to fix the last bugs I thought I could contribute a list of RC-buggy packages sorted by popularity:

Write your own launcher

Enrico Zini's blog - Thu, 25/09/2008 - 11:44am
Write your own launcher

I am at OpenExpo and while chatting about KDE 4.1 with the nice people at the KDE booth, I realised that some of the Debtags Technology™ could be used to make a really good application launcher.

After a bit of prototyping, I present you the Application Launcher Startup Kit:

Generating missing tangogps tiles

Enrico Zini's blog - Sun, 14/09/2008 - 8:08pm
Generating missing tangogps tiles

TangoGPS is nice, but it wants to download tiles. However, I already have a working mapnik setup, so why bother the OpenStreetMap servers with tile requests?

Logging on the Freerunner

Enrico Zini's blog - Fri, 12/09/2008 - 4:14pm
Logging on the Freerunner

By default, the FreeRunner comes without a system log daemon, and rightfully so, because you don't want a daemon filling up /var, and a nightly cron job to rotate logs, on a mobile phone.

However, I do not want to give up logging. If there are bugs I want to investigate, I like to be able to look at the logs.

The solution: remote logging. Configure the phone to send all log info via UDP to my laptop, and configure my laptop to listen for UDP syslog messages from the phone only.

How to do it:

Undoable `apt-get build-dep`

Enrico Zini's blog - Thu, 11/09/2008 - 10:35am
Undoable apt-get build-dep

If I do apt-get build-dep foobar, all the dependencies will be installed, but they will not be marked as autoinstalled: if I then do not need to build the package anymore, I have a hard time finding out what to remove.

What I would like is a script that turns build dependencies of a package into a metapackage, so that I can later remove the metapackage and apt-get autoclean will remove everything from the system.

It turns out that it already exists: it's called mk-build-deps and is part of devscripts:

Running apt on the FreeRunner

Enrico Zini's blog - Sun, 31/08/2008 - 9:42pm
Running apt on the FreeRunner

I've already mentioned that I'm running approx in the laptop and I configured the FreeRunner to access the laptop's cache. Here are the other customisations needed to have a decently working apt:

# cat /etc/apt/apt.conf.d/99freerunner 
APT::Install-Recommends "false";
Acquire::PDiffs "false";

The rationale is that recommends would bloat a system that is supposed to be small, and pdiff requires more CPU, memory and disk space/time than it actually saves in bandwidth.

How to read the Freerunner's accelerometers

Enrico Zini's blog - Mon, 25/08/2008 - 12:27am
How to read the Freerunner's accelerometers

This code has been take from moko_eightball by Jakob Westhoff: it just continuously prints the value of the three accelerometers.

Polysms

Enrico Zini's blog - Sun, 24/08/2008 - 6:36pm
Polysms

Here is my first software designed for the FreeRunner: polysms. It's a commandline tool: you pass it a polygen grammar name and a phone number, and it will send a SMS to that phone number using the polygen output for that grammar as the SMS text:

# polyrun manager 0012345678

And here is the code, that works on the http://www.freesmartphone.org dbus framework:

Docking the FreeRunner into the laptop

Enrico Zini's blog - Fri, 22/08/2008 - 11:32am
Docking the FreeRunner into the laptop

Earlier in the day, I wrote:

So yes, my laptop can now be turned into a phone charger with networking, DNS and apt cache services. I shall look into hooking that script into dbus to have it run automatically when the phone is plugged and unplugged.

It's not dbus, it's udev, and I've managed to do it.

It's an udev rule:

Unpacking the new FreeRunner

Enrico Zini's blog - Fri, 22/08/2008 - 8:46am
Unpacking the new FreeRunner

I got myself a FreeRunner. Here are some notes from the first few days:

Available operating systems

The FreeRunner comes with the Om 2007.2 distribution: it works for basic phone things, and it has an opkg package manager that you can use to install all sort of extra software. Only issue: the SMS application was rather unstable with my SIM card.

apt-xapian-index: dynamically generated tag clouds

Enrico Zini's blog - Tue, 12/08/2008 - 9:21am
apt-xapian-index: dynamically generated tag clouds

About apt-xapian-index, I have already posted:

Handling concurrent update-apt-xapian-index runs

Enrico Zini's blog - Fri, 08/08/2008 - 10:02am
Handling concurrent update-apt-xapian-index runs

So, update-apt-xapian-index takes a bit of a long time to run. When you install the package, if the index isn't there then postinst will rebuild it in background, good.

Introducing the Humongous Merged Packages File From Hell

Enrico Zini's blog - Thu, 31/07/2008 - 7:53pm
Introducing the Humongous Merged Packages File From Hell

Suppose you want to build some service that requires information about all packages in all architectures. Like, for example, the debtags web tagging interface.

If that is the case, then you may be interested in the Humongous Merged Packages File From Hell.

It contains a merge of all Packages and Source files of etch, lenny, sid and experimental, for main, contrib and non-free, in all architectures.

Risotto ai funghi (e un po' di banana)

Enrico Zini's blog - Wed, 16/07/2008 - 9:46pm
Risotto ai funghi (e un po' di banana)

Avevo voglia di sperimentare, e in casa avevo delle banane. Cosa ci si può fare, con delle banane?

Entra in gioco http://www.foodpairing.be/

Questo sito raggruppa vari ingredienti in base alla comunanza delle sostanze chimiche che gli danno il sapore. E chi c'è vicino alla banana? I FUNGHI!

Pages

Subscribe to Enrico Zini's blog