
|
English language planetList of feeds
Gmail now has themes!
I suddenly opened up gmail, and saw a new theme. Related itemsPosted Wed Nov 19 19:17:18 2008
CAS client libs need love in Debian : several pending RFS
We have made some progress towards more CAS-ified applications installable in Debian, and now have several RFS pending :
So if you’re a Debian Developer and wish to help improve CAS support in Debian, please sponsor these packages. Posted Mon Nov 17 17:01:45 2008
My very first font
For a project of mine I needed the pictograms for man and woman (as also known from toilette doors), in two different sizes, once filled and once as an outline. I coud not find these as a ?LaTeX symbol nor as a defined unicode character, so I searched the internet. I found some material as vector graphics (EPS), which I was using first, imported into my ?LaTeX document as images. But it felt wrong to use images for something that’s a symbol in the text. So I installed fontforge, the apparently usual tool for that, imported the EPS files and with surprisingly reasonable effort created a ?TrueType font with these nice eight glyphs: ![]() Quite a while ago I wrote here how to use single glyphs from a ?TrueType font in ?LaTeX. Based on that I created the neccessary files to use these in ?LaTex with these commands, in the order of the picture: \Mansym, \mansym, \Womansym, \womansym, \Boysym, \boysym, \Girlsym, \girlsym. Here are the files: ManPictograms.ttf T1ManPictograms.fd ManPictograms.tfm ManPictograms.enc ManPictograms.sty. If anyone feels like turning them into a more proper ?LaTeX font package, they are welcome. Posted Thu Nov 13 00:25:44 2008
Book Review: Ozonomics - Andrew Charlton
ISBN: 9781741667387 Brilliant. Really. Go down to your local library and request it, now. That’s really all I can say. If you ever thought Howard was responsible for the state of the Australian economy today, Charlton proves you wrong.
Pimp my Mutt
Uh, yeah, I did it
![]() I patched my mutt-patched ![]() You may ask why I did it, and what I did, so here we go: I use mutt(-patched) on my Etch box to read and write mail when I'm not in front of my regular box, where I use sylpheed. My mail is stored on an IMAP server (courier, actually it's the same box you retrieve this website from), so I use mutt's imap support (don't tell me about offlineimap and stuff, I know them). Having multiple folders on the IMAP server, you really want to use the sidebar patch for mutt, or you'll get crazy. But here start my problems. The sidebar patch does not understand, that IMAP often uses a dot (.) instead of a slash (/) as a delimiter between the folders. Thus the sidebar will look like this: INBOX Looks quite bad, especially when you have deep hierarchies. So I wrote the first patch, sidebar-dotted, which makes the sidebar look like this: INBOX Better, huh? Oh, if you want to see this, you'll need to set sidebar_shortpath ![]() But this is still not as good as I want it, because I get something like this: foo Wonder why? I have imap_check_subscribed enabled, so I don't have to list all the folders via mailboxes, but the server returns the subscribed folders unsorted and you see the result ![]() Here I came up with the second patch, sidebar-sorted, enable it with set sidebar-sort and you get a nice folder listing as you (I) wanted. You want the patches? Get them in my homedir. Have fun with them, and forgive me, if mutt's fleas will eat up your mail
Posted Thu Nov 6 21:11:58 2008
Adding GForge bugtracker support in bts-link
Part of our work in the Helios project will be on bugtrackers synchronisation. I happened to notice that I’ve started working on You may find my git repo at http://www-public.it-sudparis.eu/~berger_o/git/bts-link.git which hopefull contains my proposed changes (I’m new to git, so I hope I did everything right…). Posted Mon Nov 3 10:51:29 2008
Visual SSH fingerprints
Recently, people have picked up on OpenSSH’s new “feature”: visual SSH fingerprints. It hurts to see this “feature” in a software like OpenSSH, which is so integral to everything we do, because it’s a waste. It’s additional code, and thus an additional risk of bugs, and it has a net security benefit of zero, NULL, zilch, nada, nothing, nix, nadje, oomph! The theory is that you learn to recognise the general shape of
the visual fingerprints of your hosts, which is easier for us to
remember than strings of hexadecimal numbers. So, for instance, if
you
Rejoice! Because now, should
then you can look at the picture and say: “yeah, I knew that”, because your pony has suddenly transformed into the visual representation of a giant fart. On the other hand, the new “feature” makes day-to-day
interactions a lot easier. Imagine you need to Great “feature”. Thanks. I would appreciate if this sort of crap stayed out of important software. Dan Kaminsky might have some good ideas, but most of the time he’s on crack. Get a grip. Stop being a fanboy. NP: Kinski: Alpine Static Posted Fri Oct 31 08:01:07 2008
Annoying non-breakable spaces in Bash/Zsh
This is an annoyance I found got around to solve. In
Konsole, with a basic X configuration, when you type If you are an heavy shell user, you might hit the cd $HOME zsh: no such file or directory: cd /home/fdgonthier After typing such a command quickly, I was often left wondering what the hell was wrong with my command, since, as far as I could see, it was syntaxically correct. The problem is that since there is a non-breakable space between
execve("cd\302\240/home/fdgonthier", ["cd\302\240/home/fdgonthier"], [/* 30 vars */]) = -1 ENOENT (No such file or directory)
It took me a while but I’ve found that On this page, you see that you can disable non-breakable space
using a ... Option "XkbOptions" "nbsp:none" ... or use setxkbmap -option "nbsp:none" in a console, your favorite initialization file, or elsewhere.
Debian membership reform
Following Ganneff’s post to debian-devel-announce, several discussions have again started on the topic of Debian’s membership and several proposals have been made. Unfortunately none of these proposals try to resolve the underlying trust problem that has been growing over the years. Despite the NM process (or maybe due to it), we managed to give DD status to people who are motivated but whose technical skills are doubtful (at that point people ask for an example, and as much as I hate fingerpointing, here’s an example with #499201. The same maintainer created troubles with libpng during the etch release cycle and tried to take over a base package like mawk recently). With our current model, all DD can sponsor, NMU, introduce/adopt/hijack packages without review. This is fine as long as we trust the body of DD to contain only skilled and reasonable people. I believe that premise to be somewhat broken since Debian has become too big for people to know everybody and since the NM process had no way to grant partial rights to volunteers who were motivated but that clearly had not shown their ability to handle more complex stuff than what they had packaged during their NM period (like some trivial perl modules for example). Thus I strongly believe that any membership reform must provide a convincing answer to that trust problem before being implemented. I took several hours to draft a proposal last Friday and I’ve been somewhat disappointed that nobody commented on it. I hope to draw some attention on it with this blog post. The proposal builds on the idea that we should not have “classes” of contributors but simply two: a short-term contributor and a long-term contributor (those are called Debian Developers and have the right to vote). But all contributors can be granted “privileges” as they need them for their work and each privilege requires the contributor to fulfill some conditions. The set of privileges and the conditions associated all need discussions (but I have personal opinions here, see below). There’s however one privilege that is somewhat particular: it’s the right to grant privileges to other contributors. Handling it as a privilege like another is on purpose: it makes it clear that anyone can try to get that privilege and the procedure is clear. In practice, imagine that set of people as a big team encompassing the responsibilities split over DAM/AM/FD/DM-team and where all members can do all the steps required to grant/retire a privilege provided that 2 or 3 members agrees and that nobody opposes (in case of opposition a specific procedure is probably needed). I called that set of people the Debian Community Managers. It should contain only skilled and dedicated developers. One of their main duties would be to retain the trust that the project as a whole must have in all its members. They would have the powers to retire privileges if they discover someone that has not acted according to the (high) expectations of the project. Among the privileges would be “limited upload rights” (like DM have currently), “full upload rights” (like DD have currently although it might be that we want to split that privilege further in right to sponsor, right to package new software, right to maintain a package of priority > standard, etc.) and “developer status” (email + right to vote, once you can prove 6 months of contribution). There’s lots of stuff to discuss in such a proposal (like how to decide who gets what privileges among existing DD) but I think it’s a good basis and need some serious consideration by all the project members. The NM process is there only so that we can collectively trust that new members are as good as we expect them to be and trust can only be built over time so it’s good that we can grant privileges progressively. Some people believe that I’m reinventing a new NM process that will end up to be very similar to the current one. My answer is that the conditions associated to each privilege should be based on the work done by the contributor and the advocations that he managed to collect. It should not be a questionnaire like “Task and Skills”. This, together with the distribution of the power/work on many people, would render this system very different from today’s NM process. Some people believe that I’m copying Ubuntu when designing this since it’s somewhat similar to the process to become MOTU and/or get upload right to Ubuntu’s main component. Let me say that I’m not copying deliberately at least, I simply took the problem from the most important side. But remember that many aspects of Ubuntu have been designed by Debian developers that tried to avoid known pitfalls of Debian, and maybe they got some things right (or better at least) while doing this. Partagez cet article / Share This Posted Mon Oct 27 12:56:56 2008
Your ip is blacklisted ?
My ip was blacklisted by spamhaus, and this wasn't a good thing
for my mail server. Because of this, I wasn't able to email to
several email adresses that uses spamhaus for spam. I got this
message : "550 Administrative prohibition (in reply to RCPT TO
command)" There are some reasons, so, some solutions : The first
solution is to remove the ip from the SBL or/and XBL or/and PBL
databases. You only need to go to the
Posted Sun Oct 26 17:00:15 2008
Dear DSA FTPMaster Keyring-Maint Secretary FrontDesk DPL
For one, I think it might be a good idea to pause this proposal
now. (Reason: lenny)
Manchester Open Street Map Party
This weekend (25th to 26th of October) CloudMade will be hosting a Open Street Map mapping party in Manchester at the Marbella Cafe. The weekend will consist of walking the streets on the east side of Manchester, friendly banter and a few pints. Everyone is welcome from hardcore experts to the complete newbies. The day starts at 10:00am with a introduction and a simple overview of how to map your data, then we’ll head out and meet back at the Marbella Cafe for lunch, then head out again for the afternoon and concluding in drinks in a local watering hole. Check out the wiki and Upcoming for more details. Hope to see you all there! Marbella Café
Goolge Android source is now available
A little late, but still interesting. Google has announced that the source for Android is now available. Google have kept up their end of the bargain and the source is out there for all to view, it’s a interesting prospect with the G1 release just around the corner. I know that quite a few hackers out where will be tinkering with Android for the next couple of weeks, maybe even have some interesting developments for the G1 launch. Now that the source is out there, I wonder what the response the other platform developers will have. I suspect Nokia/Symbian to play down Android’s place in the market and RIM to wave away the benefits of open source. I have to wonder, HTC are releasing the G1 and now Google has released the source. Will users be able to flash update their version of Android? Or will they be bound to the operators/HTCs distribution of the software? If users are allow to keep up with the latest and greatest developments for the platform I suspect the big players will start to sweat a little. Only time will tell, but it’s starting to look good. Posted Wed Oct 22 10:49:15 2008
Partial Debian Mirrors
The following is a description of the technique I’ve used to create partial Debian mirrors. I have damn near mastered that technique that is not immediately obvious if you don’t know the tool. Nothing there is black magic though, as you will see. The following example will use the programs called
Required stepsThis configuration is necessary in both case.
The first step is to create the directory that will contain the
mirror. In that directory create a directory called
In that directory, edit a file named Codename: etch Architectures: amd64 source Description: Debian Etch (required package only) Components: main Update: debian-etch-update That’s all we need in that file right now. This describes what
distribution this mirror will include. You can have several
distributions in a mirror. Most field are self explanatory except
perhaps the Partial mirror, using reprepro onlyThe next step explain how to create a partial mirror using just
Name: debian-etch-update
Method: http://gulus.usherbrooke.ca/debian
Components: main
Architectures: amd64 source
?FilterFormula: Priority (==required)
The content above is the content of your
The key to partial mirroring in this case is the
To start mirroring, go in the mirror directory and do: reprepro -V update etch and reprepro will start downloading packages. The
Germinate and reprepro
As a simple example, if you tell We will use
You should see a bunch of files created in the
The following Bash magic does the trick: for pkg in $(cat germinate/required \ | tail -n +3 \ | head -n -2 \ | cut -d '|' -f 1); do\ echo $pkg install; \ done > mirror.packages The resulting Replace the
?FilterList: purge ../mirror.packages
Then run: reprepro -V update etch to create your mirror.
Howto: Send SMS using a Huawei E160G and Debian
People who use their Huawei E160G on Three will know that in the Windows client you can send and receive SMS, this will come at some minor cost of £0.10 per SMS, and you can add bundles onto your mobile broadband account to make this cheaper. Similar functionality can be achieved in Linux, and it’s very useful if your like me and want to drop someone a message when you don’t have your phone around. For this we’ll be using Gammu, which is a toolset for managing phones via the AT GSM command set. It was originally forked from Gnokii, which was a similar toolset for Nokia handsets. As the E160G opens a serial port with access to the AT command set this is a relatively easy tool to setup. First of all, we need to grab the packages. As these are standard Debian packages you should have no issues. # sudo apt-get install gammu Next, we need to configure Gammu to pickup the correct device. Check your dmesg for the serial port: $ dmesg|grep tty [12321.308078] usb 5-3: GSM modem (1-port) converter now attached to ttyUSB0 [12321.308275] usb 5-3: GSM modem (1-port) converter now attached to ttyUSB1 Edit ~/.gammurc, or run gammu-config to change the device settings. Your ~/.gammurc file should look similar to: [gammu] port = /dev/ttyUSB0 model = connection = at19200 synchronizetime = yes logfile = logformat = nothing use_locking = gammuloc = Give it a test by getting all the SMS from the device: # gammu getallsms This should bring back all the SMS currently stored on the stick, which should include your login details for the Three website (unless you’ve deleted them). To send a SMS use the “sendsms” command: $ gammu sendsms text 07874454543 Enter message text and press ^D: Test Message!!!!!1! Sending SMS 1/1....waiting for network answer..OK, message reference=2 Gammu has a lot more tools and options to explore, now you have the basic config you can setup a SMSD, which can expose the ability to send SMS to a network. Also, Gammu has a python interface so you can possibly build your own frontend client for sending SMS. For more details explore the Gammu Wiki. Posted Fri Oct 17 10:53:11 2008
Experimentation Failure
My grand idea of experimenting with various distributions for the EeePC went wrong, by quite a bit as well. As mentioned in the last post I decided to have a play around with some of the distributions specifically built for the Asus EeePC 701, I was wondering if something out there can beat Debian on this little work horse. Oh boy was I wrong. First I attempted to install Zeee (Zenwalk for the EeePC), the installation “media” came as a compressed disk image, nothing that unusual as most of the distros come in their own little installation media package. It turns out that this image is a raw dump of a file system, so I had to create the installation media on a USB stick with the various handy tools, mke2fs, grub, you get the idea. After about 45 minutes of fiddling I called it a day, for some reason the GRUB installation wasn’t detecting the ext2 partition on the USB stick, and couldn’t find the menu.lst file. While this is probably a simple issue it’s a bit more than I could be arsed with, the Zeee guys are doing well but the installation method need a little work, maybe a prepackaged ext2 dump. After the kerfuffle with Zeee I moved onto the latest Foresight Linux Mobile Edition, I’ve heard Dan & Fab mention Foresight on the Linux Outlaws podcast and I have downloaded a live CD previously, so I decided to get the image and have a go. This installation went a lot easier, the image was a precompiled usb installation so no hassle there, the installation took time but I put t hat down to the quality of the USB stick I was using. After about 30 minutes I had a working Foresight Linux install, and everything seemed to work out of the box, including the WIFI (which is the usual sticking point for most distros). Foresight Mobile uses the clutter based launcher you can also find in the Ubuntu Netbook Remix, the mainstream applications are pre-installed and are usable. Within a few minutes I hit my all time pet hate, touchpad clicking, ever since i’ve owned a laptop I’ve never been able to use touchpad click to any degree of success and I don’t see any reason why it should be enabled by default. In previous distribution I know the way to fix this issue is to simply changing the settings in gsynaptics or modify the Xorg config, as I was trying to operate from a user perspective I went the simple route of using gsynaptics. It wasn’t installed. I went digging around in the package manager (conary) and didn’t find a related package. After about ten minutes searching I found the “synaptics” package, which proved useless as I had no idea of what it does. Three hours in and my experiment with Foresight was over, people may complain that it’s a simple issue but having the option enabled by default and then hiding the configuration in a non standard package doesn’t help matters. I have to give Foresight kudos for being one of the first distributions to have a full “netbook” version, but it still needs a little refinement. So, now I’m back on Debian, tried and tested. This time I installed using the updated Lenny installation media for the EeePC and it was a breeze, and since I’ve done this “fresh install” a lot more of the features work consistently. In the process of configuring my machine again I’ve noticed that the older guide for the E160G using Network Manager is a little wrong, so I’ll have to update that sometime. For now I’ll be sticking on ol’ faithful. Maybe when the “next big distro” gets released I’ll give it a try. Posted Wed Oct 15 22:06:10 2008
Infinite loops in Haskell
Just some small thoughts about cyclic lists in Haskell. Every Haskell beginner knows that you can use infinite lists, as long as you don’t fully evalute them. So, this is perfectly valid endless = [0..] -- All natural numbers! main = print (endless !! 10) It will not crash, but print "10" as the list has not been fully used. What happens if we take a piece of the list further down, let’s say at position 1000000000: endles = [0..] main = print (endless !! (10^9) ) If you try this at home, better run "ulimit -S -v 1000000" before, because then you’ll get "test: out of memory (requested 1048576 bytes)" instead of a sluggishly swapping machine. What happened? The long list will be evaluated, and fills the memory. Does this mean that we can not use arbitrary long lists? Let’s try a special case: A list that is infinitely long, but repeating the same values all over again: list = "Oh, happy day! Oh, happy day. " We repeat the (finite) list endlessly, and then try to pick the 1000000000th element. We also pick the first element again, to make sure the compiler does not cheat by forgetting the first 999999999 elements (It’s actually pretty nice that the compiler will forget these elements, but not what I want to demonstrate here). Running that code, sure enough, fills up the memory. But maybe I was coding badly. At least I have re-implemented a function that already exists, which is bad practice. Let’s try with Haskell’s own cycle: list = "Oh, happy day! Oh, happy day. " Now it takes a while, but surprisingly, the memory gauge does not skyrocket, and in the end I’m told that the 1000000000th character in my infinite character string is 'd'. This leads me to the conclusion that the Haskell library uses black magic. Or does it? Here is the definition of cycle: cycle xs = xs' where xs' = xs ++ xs' What is the difference to our cycle'? Here, the result is given a name (xs'), which is used again inside the function. So while our cycle' appends the list over and over again, filling up the RAM, their cycle ties a loop and makes the end of the list refer to it’s beginning. And my list lookup will no longer evaluate the list up to infinity, but just run around in, well, cycles until it has counted down from 1000000000. I could even ask for the last element of this list, and it will not use any more RAM than a small, finite list, while endlessly searching for the end of the list. Despite Haskell being a very high level language, I sometimes wonder how my data will look like on the physical memory. And as you can see, it can make a difference. Some more thoughts on this were written down by Duncan Coutts. Posted Wed Oct 15 21:04:59 2008
Fixing the credit crunch problems the wrong way
We’re all aware of the financial crisis due to credit default swaps shaking up the markets, media, politics, and what not. Some of us are feeling the pain, most of us aren’t yet. A few days ago, politicians of the big, capitalist nations convened to agree on a way forward to stablise the financial market and set an end to the crisis. They are planning on doing this by throwing hundreds of billions at the market, buying all the subprime loan packages with the intention to create a new market for them, thus taking the weight off the shoulders of the countless barely-surviving banks and investors, who have written off billions in losses without an end in sight. Where does this money come from? Taxes and newly printed money. You may not yet feel the effects of this, but you will: taxes will rise, and inflation soar to even higher levels. Today is Blog Action Day with poverty as the focus, and it’s a good occasion for me to state what’s long been on my mind. The strategy by our political leaders to combat the credit crunch is short-sighted, and it fights symptoms, not causes. In fact, it’s Robin Hood played in reverse: tax increases and inflation will hurt those most who cannot do anything against it: the poor. On the other side of things, those active in the financial markets will have their damages limited, and new CDS markets might even create more opportunities for those who can. I strongly oppose the way our politicians are handling the issue, even though I do have small amounts of funds invested in financial products myself, and have already seen the positive effects of their actions. Rather than throwing money at the markets, we really ought to put those away who have caused all this, those ruthless, greedy ones who have speculated way over their heads, underestimated the risks, and caused this crisis that killed many businesses, threatens to endanger entire countries, and hurts individuals who hardly ever had a choice. Think of it as a driver’s licence, and that should be revoked for those who screwed up so royally bad and got us into this situation in the first place. Don’t let them speculate again! Update: Andreas Metzeler notes that he is (rightfully) missing a “what is to be done instead” section in my blog post. I don’t have anything to offer on that front, sadly. I also realise I should have phrased my opposition differently. Reading this interesting interview with Deutsche Bank ex-CEO Hilmar Kopper (German only) (thanks, Andreas!) helped me understand more that the politicians aren’t saving banks, they are saving the system, and that they have little other choice. Another aspect I haven’t previously seen as clearly as now is that the governments are purchasing (and willing to carry) risk for others, to relieve the markets. Risk by itself doesn’t cost anything, so it might turn out that the billions they made available won’t actually be spent — though I always new that the governments might well come out of this with a profit even. The whole affair still stinks, and what I truly miss are the actions to prevent those responsible for getting us into this mess in the first place from doing so again. NP: This Will Destroy You: Young Mountain Posted Wed Oct 15 11:05:35 2008
EeePC Experimentation
I’ve been using Debian on my EeePC 701 since I got it, I think the original Xandros lasted a whole two hours or so. Over the last few days i’ve been bugged by 2.6.26 issues and various XServer issues, time for a change. Over the next few weeks it’s my plan to experiment with a few EeePC tailored distributions, much in the same way Dan did. My first distro of choice is Zeee, which is a customised version of Zenwalk. I’ve heard good things about Zenwalk, so now is my time to experience it. So, I’ll post a follow-up tomorrow. Posted Sat Oct 11 20:19:54 2008
Haskell work in Dresden
Since Saturday, I’m in Dresden, to work for Janis Voigtländer at the TU Dresden on some of his projects. I’m mostly working with his code from “Bidirectionalization for Free”: QuickCheck-Properties, statstics, a web interface. I’ll do this for just two weeks, and then return to Karlsruhe. So if someone wants to meet me, maybe for some Keysigning (since ?DebConf8, I’m on Rank 31, so it’s worth it :-)), just drop me a note. Posted Wed Oct 8 21:14:45 2008
Links:
planets
|





