Pietro Abate
running skype in a schroot
If I don't trust a stranger to wonder inside my house, why should I allow a closed source program to access my home directory ? Apart from the paranoia and conspiracy implications I decided to spend some time learning how to chroot skype (and iceweasel for that matter, since I don't really trust javascript, flash and the mozilla plugin model) in a chroot.
I started from this article :
http://www.debian-administration.org/articles/566
This recipe didn't work out of the box. This is mine:
Now step by step:
First we install the software. I'm working on a debian unstable...
mod rewrite rule
A quick one about mod_rewrite. I added ssl to cduce.org for our user pages. However I've no use of ssl to serve our static pages. This rule will redirect all https requests (^443$) that are not related to userdirs (!^/~) to http:// .
RewriteEngine on
RewriteCond %{SERVER_PORT} ^443$
RewriteCond %{REQUEST_URI} !^/~
RewriteRule ^(.*)$ http://www.cduce.org$1 [L,R]
Openldap + SSL
There are many many howto on the net regarding this topic. Here I'll not give another howto, but just a list of mistakes I've done today. I hope this will same some time to others.
openssl certs
nagios
This week I spent some time configuring nagios to track our infrastructure, including web services and hardware.
Nagios is an interesting piece of software. It's very flexible and kinda easy to setup. I've to say that the documentation is not particularly well written. However sites like http://www.nagiosexchange.org/ make like very easy. Setting it up on debian is pretty straightforward.
Recursive subtyping revealed
The other day I read the article: "Recursive Subtyping revealed". A Functional Pearl by Gapeyev, Levin and Pierce. This is a bit of code I wrote to convince myself of the algorithm described in the paper.
You can get the article here
<code> type at = |Top |Nat |Bool |Even | Odd |Times of ( at * at ) |Arrow of ( at * at ) |Mu of ( string * at ) |Var of string
module S = SortedList.Make( struct type t = (at * at) let compare = compare let hash = Hashtbl.hash
mysql + ssl and xen headahe
Well today I tried to understand why our production server (shame shame) has rebooted twice in a row in the last 3 days. The only visible problem in the logs is the infamous xen error : " xen_net: Memory squeeze in netback driver." . Googling around it seems kinda common and the recommended solution is to add dom0-min-mem to xend.conf and dom0_mem as a kernel option. I've done that and updated the xen hypervisor to the latest bakcported version. The machine is up and running and everything seems fine at the moment. I didn't touch the kernel.
magacli, openipmi, ipmitool
If you manage a dell poweredge, it will come a time where you are curious to know about the health of your machine. These are few notes.
The first thing you will try is probably the dell management server. It's the usual java monster with web interface and all in it. I don't like it. So I installed openimpi and got the megacli bianry from the lsi website.
openimpi is easy: apt-get install opemimpi impitools
Then we need to load the impi kernel modules:
ipmi_devintf
ipmi_msghandler
ipmi_poweroff
ipmi_watchdog
ocamlbuild + camlp4 + ocamlfind
Recently I tried to answer to a problem posed on the OCaml mailing list. Basically the problem is how to compile using ocamlbuild using ocamlfind and camlp4. The Camlp4 wiki has already all the ingredients. Here I mix them up in a short example.
- _tags : is the ocamlbuild dep file
- bar.ml : is a ml file that uses the syntax extension pa_float to compile.
- foo.ml : is a ml file that depends on bar.ml and the str module (fetched via ocamlfind)
- pa_float.ml : is the source code of the camlp4 syntax extension.
The code
_tags <code>
RedMine experiments
RedMine is a hosting solution for Open projects conceptually similar to Trac. At first sight, the main difference with trac is that redmine is multi-project, while trac has a narrower vision where each trac instance is a project. To be fair there are extensions in trac to administer multiple projects at once, built this is not shipped with the system.
New Cduce Release 0.5.2.1
This is a minor bug-fix release. A new MacOsX binary package is avalaible. See the Download page for download information, or the CHANGES file to know what's new.
Not much to add.