Romain Tartière's blog
We can haz Nouveau on FreeBSD!
Nouveau is « a project which aims at producing Open Source 3D drivers for nVidia cards ».
As a good resolution for new year 2008, I wanted to have an IPv6 network and switch to 64bit. Unfortunately I have a nVidia video card and two screens, making it impossible to use the free/libre nv video driver. For this reason, I was stuck with the proprietary, bugged and 32bit only nvidia video driver, which was the only non-FLOSS package on my system. This sucked!
Good news! Nouveau is being ported to FreeBSD!
I can now consider switching to the x86-64 (aka amd64), thus use all the RAM I bought 2 years ago (since PAE can't cope with the nVidia BLOB too), use ZFS etc. This is not straightforward yet, but still quite easy:
- Uninstall any nvidia driver
# pkg_delete nvidia-driver-\* # vi /boot/loader.conf # Remove the line 'nvidia_load="YES"'
- Patch your kernel (Update your system if you are not running 8.0-CURRENT or a recent 7.1-STABLE / 7.2-PRERELEASE):
# cd /usr/src/sys # fetch http://people.freebsd.org/~rnoland/drm-nouveau-032109.patch # mkdir modules/drm/nouveau # patch < drm-nouveau-032109.patch # cd /usr/src && make kernel # reboot
- Install libdrm from git:
% git clone git://anongit.freedesktop.org/git/mesa/drm % cd drm % ./autogen --enable-nouveau-experimental-api % gmake % sudo gmake install
- Install xf86-video-nouveau from git:
% git clone git://anongit.freedesktop.org/git/nouveau/xf86-video-nouveau % cd xf86-video-nouveau % ./autogen % gmake % sudo gmake install
- Update /usr/local/etc/X11/xorg.conf.
mencoder switches I am always looking for
This is basically a note for myself.
Each time I want to use mencoder, I have to search the man page at least 10 minutes to find-out the options I am looking for. But each time, I wonder why I am always searching for the very same options... This bores me, so let's list switches I should learn by heart:
- -ss <time>
- Seek to given time position.
- -endpos <[[hh:]mm:]ss[.ms]|size[b|kb|mb]>
- Stop at given time or byte position.
- -vf <filter1[=parameter1:parameter2:...],filter2,...>
- Setup a chain of video filters.
- yadif=[mode[:field_dominance]]
- Yet another deinterlacing filter
Putting it all together, what I want to type-in fetching this post of my own blog is something like this (save the 10 first seconds of the fifth minute of a movie):
mencoder -alang fr \ -ss 5:00 -endpos 10 \ -oac copy -ovc lavc -lavcopts vcodec=mpeg4 \ -vf yadif=0 \ dvd:// -o out.avi
- Login to post comments
March
Last month, I wrote to the TypeMatrix guys asking for skins availability. They hopped to have some by February, unfortunatelly, no TypeMatrix skins are available yet
.
While the keyboard I am working with has an interesting background, and I really love it in some way, I am quite hurried to change it because is has some electronics problems and from time to time, I have to twist the PS2 cable to be able to type-in again or stop the keyboard from sending endlessly the same characterrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr.
February!
Tadaaam!
According to the answer I got for an e-mail sent earlier this year to the guys at TypeMatrix, the TypeMatrix 2030 skins will be available this month:
On Mon, Jan 5, 2009 at 2:47 AM, Romain Tartière wrote: > Hi! > > 2030 is available again ! Great! But I can't find the skins in the shop. I > would be interested in a Dvorak keyboard with a black qwerty skin. How to > proceed ? May I pre-order a dvorak keyboard now ? > > Thank you! Romain -- Yes, we are back! but the skins are not yet available. We are working on them now and hope to have some by February. Check back with us then! The Dvorak-labeled keyboards are due to arrive this week, so we will have all three keyboards ready for shipping out: Qwerty, Dvorak, blank.
I'm impatient!
- Login to post comments
Meta-note-taking with Tomboy
Just wrote a Tomboy add-in allowing the user to keep notes in Tomboy notes. The idea? If just like me you rely a lot on short tags such as TODO or FIXME, you find it convenient to have the editor highlight them. It is exactly what the add-in has been designed for.
Mandatory screenshot:

Editing notes with FIXMEs and TODOs.
For more info and downloads, have a look to the Tomboy-Todo project's page.
- Login to post comments
TeXLive architecture dependent files
I am having fun with TeXLive under FreeBSD, and while trying to understand what is utterly needed in the 5229 packages provided by the distribution, I discovered a funny thing:
$ ls texlive.infra.*.tar.lzma texlive.infra.alpha-linux.tar.lzma texlive.infra.mips-irix.tar.lzma texlive.infra.amd64-freebsd.tar.lzma texlive.infra.powerpc-aix.tar.lzma texlive.infra.doc.tar.lzma texlive.infra.powerpc-linux.tar.lzma texlive.infra.hppa-hpux.tar.lzma texlive.infra.sparc-linux.tar.lzma texlive.infra.i386-freebsd.tar.lzma texlive.infra.sparc-solaris.tar.lzma texlive.infra.i386-linux.tar.lzma texlive.infra.universal-darwin.tar.lzma texlive.infra.i386-openbsd.tar.lzma texlive.infra.win32.tar.lzma texlive.infra.i386-solaris.tar.lzma texlive.infra.x86_64-linux.tar.lzma
All these distfiles (excepted the one emphasized) contains the same program compiled for different architectures. As the name suggest, it is related to the infrastructure of TeXLive, that is the piece of code handling the brunch of .tar.lzma distfiles.
Let's see what is packaged in one of these files:
$ lzma -dkc texlive.infra.i386-freebsd.tar.lzma | tar tf - tlpkg/installer/lzma/lzma.i386-freebsd tlpkg/installer/lzma/lzmadec.i386-freebsd tlpkg/tlpobj/texlive.infra.i386-freebsd.tlpobj
Cool! This package includes FreeBSD binaries for decompressing .lzma archives, (e.g. this package)! Hopefully we already have archivers/lzmautils for doing that.
- Login to post comments
Why you should not use old-style PGP encrypted / signed messages
Just received another mail signed in the the old-style way:
-----BEGIN PGP SIGNED MESSAGE-----Hash: SHA1
Hello, [...] Cordialement - --
[...] Membre de l'April - « promouvoir et défendre le logiciel libre » - [...] -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org sDJOSYR9U4W6YR8d794Y5f0296J0Fg9847ED904h780592347dJ5F924e3UoiY58 reptup34eo8t9568gdfg8spf2dgj3Fdf =iDPk -----END PGP SIGNATURE-----
First, it is really painful since a lot a junk prevent the mail from being read easily:
- There are separators for different parts of the PGP signed message
,
and
; - The first line of the
message
is not part of the message
; - Lines starting with a dash have
prepended to them. As a consequence, the signature is not a signature anymore-
; - The message ends with data that is definitively intended to be read by a program
.
make mayonnaise
Today was the second time I tried to make mayonnaise.
My first attempt was a total failure. I followed the instructions a friend of mine gave me (we can resume this as Ho! It's easy! It's the only thing I known cooking! You melt the yellow part of an egg with the same quantity of mustard, then you add cooking oil slowly and it magically turns to mayonnaise
).
Seeing people making mayonnaise instructed my I was doing it wrong.
I am a lot more proud of my second attempt:
![]()
The spoon is really standing alone!
Writting consistent tests
I recently encountered a somewhat funny problem when porting Labyrinth to FreeBSD, python complaining about some locale.bindtextdomain that does not exist.
Having a look at the source code, I could read:
if hasattr(gettext, 'bind_textdomain_codeset'):
gettext.bind_textdomain_codeset('labyrinth','UTF-8')
gettext.textdomain('labyrinth')
if not os.name == 'nt':
locale.bindtextdomain('labyrinth', localedir)
if hasattr(locale, 'bind_textdomain_codeset'):
locale.bind_textdomain_codeset('labyrinth','UTF-8')
locale.textdomain('labyrinth')
gtk.glade.bindtextdomain('labyrinth')
gtk.glade.textdomain('labyrinth')
Writing Free Software
A quick post to mention the beginning of a serie of mini-howtos on
C.J. Adams-Collier's weblog entitled Writing Free Software
.