Fabrice Bellet

I'm an employee of the CNRS, with the status of engineer, currently working at CREATIS laboratory.

E-Mail: fabrice@bellet.info

My diary will hopefully be updated from time to time.

Fedora contributor

I maintain the official packages for Fedora providing the Flightgear open-source, multi-platform flight simulator, and a couple of related software, fgrun, the FlightGear launcher, and Atlas, a cool tool providing high-quality maps based on FlightGear Sceneries, and also a flying-assistance companion.

As part of my work, I also provide some other unofficial Fedora packages, for scientific sofware, including CERN's Geant4 simulation toolkit, ODIN the object-oriented development interface for NMR, AMIDE, a medical imaging data examiner, and some other.

Free Software contributions

While using Fedora for my linux desktop, I happen to encounter sometimes bugs and misbehaviors in the applications I use. Even if these bugs are reported upstream, they may not be fixed immediately for a variety of reasons (the developers cannot reproduce the problem for example, or the patch is too ugly and not generic enough), so I needed I way to quickly fix the software, when I could.

For this goal, I maintain a local repository of RPM packages for Fedora, mostly following the official packages releases, and just including some patches when needed. There's no warranty that theses packages work for you, but they may help.

Another of my interests is the MAME, Multiple Arcade Machine Emulator, and more specifically the MESS project, that targets old vintage 8-bits computer that existed in the heighties. I started using computers with such a beast, a long time ago... MAME is a very interesting tool to emulate such an old computer, because it focuses on the emulation quality of each hardware chip that composes a machine, which makes MAME very generic because a given emulated chip may appear in a lot of emulated machines, and emulating a complete machine is relatively straighforward, by providing the definition of the relations between these emulated chips together. MAME with its integrated debugger is also an incredible tool to provide an ubiquitous view of the way these old computers worked internally: it is now possible in MAME to follow the execution of the emulated processor instruction per instruction, to inspect its registers, to change its memory, to set breakpoints, all of these actions at the level of the emulated machine. It becomes possible to discover clever and efficient programming tricks by the people, who wrote the code for these computers initially.

I'm also interested in the software stack that allows audio and video chat capabilities between linux users, without relying on proprietary source and protocols, starting from the empathy GNOME software, the telepathy communication framework, including the XMPP protocol, the GStreamer multimedia framework, and going to the low level communication elements, Farstream, libnice, implementing the required RFC for ICE, STUN and TURN. These components require some fine-tuning, patches and customization to make them work together in the expected way.

I contributed to some patches in the software allowing geolocation in linux, using commodity hardware like broadband modem cards, typically including GPS capabilities. The GPS raw data are provided to the system with the ModemManager software. Another component like Geoclue gathers geolocation data from various source with different accuracy, the GPS being one of them, but also GSM cell tower geolocation, Wifi ESSID positions, collected by the Mozilla Location Service, and provides it to other part of the the linux desktop that requires geolocation service, for example GNOME Maps, Empathy or Firefox.

RPMFind

I maintain the RPMFind server in my lab, thanks to CISR for providing the needeed bandwidth, that I could certainly not afford. The goal of this service is to provide mirroring capabilities for popular RPM-based linux distributions, and also and mainly an html representation of the content of RPM packages (set of included files, change logs, dependencies, aggregated information per distribution...). RPMFind offers a search engine on top of all this indexed metadata, which allows to query for package details in an independant way of a particular linux distribution.

Unix docs

I wrote some documentation about Unix practice for the new students in my laboratory in French. This stuff is really messy, and incomplete. So contributions and are welcome to improve this document.

PHD Thesis

I obtained a PHD thesis in 1998, at the Grenoble INP, France. I worked in the TIMC laboratory under the responsibility of Catherine Garbay in the Computer Vision field.

You can grab my report as a postscript file or as LaTeX sources in french, as well as the slides of my talk in french too :

My public PGP Key

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

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
=c3mU
-----END PGP PUBLIC KEY BLOCK-----