<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:np237</id>
  <title>Joss's blog</title>
  <subtitle>Sans puissance, la maîtrise n'est rien.</subtitle>
  <author>
    <name>np237</name>
  </author>
  <link rel="alternate" type="text/html" href="http://np237.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom"/>
  <updated>2009-11-27T07:42:10Z</updated>
  <lj:journal userid="2112701" username="np237" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://np237.livejournal.com/data/atom" title="Joss's blog"/>
  <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:27242</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/27242.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=27242"/>
    <title>The new faces of Europe</title>
    <published>2009-11-26T21:35:20Z</published>
    <updated>2009-11-27T07:42:10Z</updated>
    <content type="html">&lt;p&gt;This is it. We know the faces of people who will count in Europe during the 2009-2014 period. And we can count on them to make the EU weigh even less than it did until now.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/34/Jose_Manuel_Barroso.jpg/220px-Jose_Manuel_Barroso.jpg" height="100"&gt; &lt;b&gt;José Manuel Durão Barroso&lt;/b&gt;, president of the European Commission. For 5 years, this ultra-liberal brought in his fanatic views of the free market, leading to unprecedented removals of regulations and legislations that could prevent large corporations to extort money from citizens. He holds a non-negligible responsibility on the (still unsolved) bank crisis of 2007. Yet, citizens voted &lt;i&gt;en masse&lt;/i&gt; earlier this year for the EPP all across Europe, leading to his renewal. You get the commission you deserve.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/9/99/Herman_Van_Rompuy_portrait.jpg/225px-Herman_Van_Rompuy_portrait.jpg" height="100"&gt;&lt;b&gt;Herman Van Rompuy&lt;/b&gt;, president of the European Council. This is no secret that this transparent non-leader was the choice of Sarkozy after Tony Blair turned out to be an unsustainable choice. Yet, &lt;i&gt;none&lt;/i&gt; of the 26 other members of the Council dared to raise a single finger against this choice. Sarkozy has completely lost his credit in France, but that doesn’t prevent this council of cowards from trusting him, apparently. It’s not as if there weren’t good candidates, like Jean-Claude Juncker or Vaira Vīķe-Freiberga. But having a competent, Europe-friendly president who actually knows his files and speaks many languages would have cast shadows on those who don’t (see below).&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/25/Baroness_Ashton_headshot.jpg/225px-Baroness_Ashton_headshot.jpg" height="100"&gt;&lt;b&gt;Catherine Ashton&lt;/b&gt;, foreign ministry of the EU. If there was any worse possible choice, I don’t know which. This was the only position supposed to be affected to a socialist. And since the Labour party is still member of the PASD, despite their insane liberal economic policy and their full-scale paranoia leading to unprecedented freedom hunting in the UK, the position was given to someone from this party. And among them, they chose a person with a reputation of sloppiness and incompetence, who doesn’t speak correctly a single foreign language. It is probable that, just like Van Rompuy’s going to be Sarkozy’s puppet, she’s going to be the UK Foreign Office’s servant. And we continentals all &lt;i&gt;love&lt;/i&gt; the Foreign Office’s policy, which is often in complete opposition to what the rest of Europe feels like.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Buzek_3200.jpg/280px-Buzek_3200.jpg" height="100"&gt;&lt;b&gt;Jerzy Buzek&lt;/b&gt;, president of the European Parliament. You don’t know him? Neither do I. A weak parliament goes with a weak parliament president. This way, the European Council has its hands free for behind-the-curtains arrangements, rather than letting the citizens’ representatives take action.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/67/Martin_Schulz_2006.jpg/150px-Martin_Schulz_2006.jpg" height="100"&gt;&lt;b&gt;Martin Schultz&lt;/b&gt;, president of the PASD group at the European Parliament. In order to ensure his place as president of the Parliament for the second half of the period, he betrayed his own people, and accepted any rotten compromise the EPP would propose for the key positions. Socialists have never been so weak in Brussels, and the total absence of leadership has something to do with it.&lt;/p&gt;

&lt;p&gt;Makes you proud to be European, heh? And of course you already know the &lt;i&gt;real&lt;/i&gt; faces of Europe for the next years.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/2e/Msc_2009-Saturday%2C_11.00_-_13.00_Uhr-Zwez_002_Merkel_Sarkozy.jpg/180px-Msc_2009-Saturday%2C_11.00_-_13.00_Uhr-Zwez_002_Merkel_Sarkozy.jpg" height="100"&gt;&amp;nbsp;&lt;img src="http://www.g8italia2009.it/static/G8_News/Berlusconi_Brown,0.jpg" height="100"&gt;&lt;/p&gt;

&lt;p&gt;Sarkozy, Merkel, Berlusconi, Brown. The main leaders from Western Europe, with their rotten governments who swore to slay any of the remaining personal freedoms in each of their countries. What a great image for EU in the world. What a great example to set.&lt;/p&gt;

&lt;p&gt;But again, you get the leaders you deserve. That’s the whole point of democracy.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:27048</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/27048.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=27048"/>
    <title>GNOME on Debian GNU/kFreeBSD</title>
    <published>2009-11-21T15:36:14Z</published>
    <updated>2009-11-21T17:07:22Z</updated>
    <content type="html">&lt;p&gt;Since today for kfreebsd-amd64, and probably tomorrow for kfreebsd-i386 too, the &lt;a href="http://packages.debian.org/sid/gnome"&gt;gnome&lt;/a&gt; metapackage is installable on Debian GNU/kFreeBSD. In the end, this should hopefully give a fully functional desktop for these brand new architectures (to be included in the Squeeze release), with a few notable exceptions:
&lt;ul&gt;
&lt;li&gt;no power management support (DeviceKit-Power needs porting);&lt;/li&gt;
&lt;li&gt;no roaming/wireless support (no support for libiw);&lt;/li&gt;
&lt;li&gt;no Bluetooth support (insufficient support in the FreeBSD kernel);&lt;/li&gt;
&lt;li&gt;no webcam support (no existing kernel API).&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;Apart from that, everything is supposed to work. So, if you want this to mean something, what we need now is some people to test the whole thing and find out if it actually does.&lt;/p&gt;

&lt;p&gt;Do you feel like helping? &lt;a href="http://glibc-bsd.alioth.debian.org/doc/"&gt;Install Debian GNU/kFreeBSD&lt;/a&gt; on your favorite virtual machine, upgrade it to the latest sid version, and &lt;tt&gt;apt-get install gnome&lt;/tt&gt;. For everything that’s not as enjoyable as it should be, report bugs.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:26861</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/26861.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=26861"/>
    <title>Why python2.6 is still not in unstable</title>
    <published>2009-11-19T15:29:09Z</published>
    <updated>2009-11-19T15:29:49Z</updated>
    <content type="html">&lt;p&gt;Getting python2.6 as the default ASAP is currently the #1 priority for the Python modules team. I also consider it very important and tried to help with it, but it is starting to get depressing.&lt;/p&gt;

&lt;p&gt;The plan is to fix all packages in unstable to be compatible with python2.6 first. This would be easy if there hadn’t been a very badly planned change in the installation paths that came together. Because of it, quite a number of packages have to be fixed. Two months ago, I filed a lot of &lt;a href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-python@lists.debian.org;tag=python2.6"&gt;bugs&lt;/a&gt; in that order. I missed &lt;a href="http://lists.debian.org/msgid-search/20091114133028.GA7861@jwilk.net"&gt;a number of issues&lt;/a&gt;, but overall, almost all packages have been fixed, thanks to Kumar Appaiah, Bastian Venthur and everyone else who sent patches and NMUs.&lt;/p&gt;

&lt;p&gt;One of the biggest issues, though, comes from python-central. Since it doesn’t handle some of the new paths that were introduced (which is somehow ironic, since the python-central maintainer, Matthias Klose, is also the python maintainer who did this change), a large number of packages FTBFS when built against python2.6. In Ubuntu, it turned out to be a giant mess, most packages using python-central needing changes, and we wanted to avoid that. This is why Piotr Ożarowski sent a &lt;a href="http://packages.qa.debian.org/p/python-central/news/20091105T203850Z.html"&gt;NMU&lt;/a&gt; for python-central that fixes these issues for good.&lt;/p&gt;

&lt;p&gt;Guess what happened? Matthias Klose &lt;a href="http://packages.qa.debian.org/p/python-central/news/20091116T222621Z.html"&gt;uploaded a new version&lt;/a&gt; that &lt;b&gt;does not include the python2.6 fixes&lt;/b&gt;, completely discarding the work that has been done. And of course, making the upload of python2.6 to unstable, which was ready to be done in a few days, impossible.&lt;/p&gt;

&lt;p&gt;I think it’s fine if Ubuntu maintainers don’t have the time to handle their packages in Debian. But it is clearly not acceptable to hold back development in Debian, nor to treat it as a garbage dumpster where you can send all the crappy software solutions that were badly designed in Ubuntu to duplicate them in Debian. This is what Matthias has been doing for several years. For how long are we going to tolerate such behavior? For how long will we leave such a critical package in the hands of a single person with no interest in Debian?&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:26532</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/26532.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=26532"/>
    <title>Getting rid of HAL, second attempt</title>
    <published>2009-11-18T13:19:50Z</published>
    <updated>2009-11-18T15:14:33Z</updated>
    <content type="html">&lt;p&gt;Some time ago, I made an &lt;a href="http://packages.qa.debian.org/g/gvfs/news/20090929T231847Z.html"&gt;attempt&lt;/a&gt; at a &lt;a href="http://packages.debian.org/sid/gvfs"&gt;gvfs&lt;/a&gt; package with disabled HAL support. The latest upstream version allows to use &lt;a href="http://packages.debian.org/sid/devicekit-disks"&gt;DeviceKit-Disks&lt;/a&gt; instead, through the gnome-disk-utility library. This change was supposed to bring a lot of improvement, among which:
&lt;ul&gt;
&lt;li&gt;improved LUKS support;&lt;/li&gt;
&lt;li&gt;better management of permissions, using ConsoleKit and PolicyKit 1;&lt;/li&gt;
&lt;li&gt;simpler software stack, getting rid of &lt;a href="http://packages.debian.org/sid/gnome-mount"&gt;gnome-mount&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;Unfortunately, it turned out as a real fiasco, since there is no support for IDE CDs using &lt;tt&gt;ide_mod&lt;/tt&gt; in DeviceKit-Disks. Upstream only uses libata, and Fedora has no requirements for compatibility with kernels shipped more than 2 months ago. The change had to be &lt;a href="http://packages.qa.debian.org/g/gvfs/news/20091024T100511Z.html"&gt;backed out&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;What you don’t know yet is that &lt;b&gt;Michael Biebl is awesome&lt;/b&gt;. Not only did he find some ways to comply with Bastian’s &lt;a href="http://np237.livejournal.com/25947.html"&gt;requirements&lt;/a&gt;, but he &lt;a href="http://packages.qa.debian.org/d/devicekit-disks/news/20091117T221902Z.html"&gt;implemented&lt;/a&gt; IDE CD support in DeviceKit. Which was not really easy.&lt;/p&gt;

&lt;p&gt;So, I’d appreciate if some adventurous people could test the &lt;a href="http://packages.debian.org/experimental/gvfs"&gt;experimental gvfs packages&lt;/a&gt; in which there is still DeviceKit support. Please look for any regressions in them, especially with regard to removable media handling.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:26149</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/26149.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=26149"/>
    <title>Recipe for FAIL #47: rely on software without any people maintaining it</title>
    <published>2009-11-16T12:11:52Z</published>
    <updated>2009-11-16T12:11:52Z</updated>
    <content type="html">&lt;p&gt;So, it’s been 3 months since the &lt;a href="http://git.gnome.org/cgit/gnote/commit/?id=8c817698f60c6c95f2180a1a0e51da2ed036e546"&gt;last commit&lt;/a&gt; on GNote, and 1 month since it was &lt;a href="http://mail.gnome.org/archives/gnote-list/2009-October/msg00001.html"&gt;officially abandoned&lt;/a&gt;. And nobody stepped up to maintain it.&lt;/p&gt;

&lt;p&gt;I can certainly understand why Hubert’s motivation declined, GNote being a project to &lt;a href="http://www.figuiere.net/hub/blog/?2009/04/01/656-porting-to-cplusplus"&gt;“fight boredom”&lt;/a&gt;, and all the innovation happening in &lt;a href="http://projects.gnome.org/tomboy/"&gt;tomboy&lt;/a&gt;. But if you remember all the fuss around Tomboy and GNote, thanks to &lt;a href="http://boycottnovell.com/2009/07/13/mono-vs-richard-stallman-tactic/"&gt;Roy Schestowitz&lt;/a&gt; and &lt;a href="http://mono-nono.com/2009/07/06/livejournal-debian-fail/"&gt;his&lt;/a&gt; &lt;a href="http://www.itwire.com/content/view/25683/1231/"&gt;little&lt;/a&gt; &lt;a href="http://robertmh.wordpress.com/2009/06/12/mono-in-the-default-install/"&gt;minions&lt;/a&gt;, this is actually quite a tasty way for things to turn out.&lt;/p&gt;

&lt;p&gt;The utmost victory of the anti-Mono zealots was the &lt;a href="https://www.redhat.com/archives/fedora-desktop-list/2009-June/msg00003.html"&gt;decision&lt;/a&gt; from Fedora to include GNote by default and to drop Mono. Well done. I’m still savoring my pop-corn.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:25947</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/25947.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=25947"/>
    <title>So what?</title>
    <published>2009-10-11T16:59:11Z</published>
    <updated>2009-10-11T18:30:33Z</updated>
    <content type="html">&lt;p&gt;&lt;img src="http://malsain.org/~joss/lvm.jpg" /&gt;&lt;/p&gt;

&lt;p&gt;So, Waldi filed &lt;a href="http://bugs.debian.org/545032"&gt;#545032&lt;/a&gt;, arguing the udev rules shipped in &lt;a href="http://packages.debian.org/sid/devicekit-disks"&gt;devicekit-disks&lt;/a&gt; are broken. He even added a conflict in &lt;a href="http://packages.debian.org/sid/dmsetup"&gt;dmsetup&lt;/a&gt; because of that. Whenever you ask him about this issue, the only things he answers are:
&lt;ul&gt;
&lt;li&gt;The rules are broken and they need to be removed.&lt;/li&gt;
&lt;li&gt;The information is already available in other variables.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;It would be nice if all of this was true, but:
&lt;ul&gt;
&lt;li&gt;There is no explanation about how and why these rules could actually break anything.&lt;/li&gt;
&lt;li&gt;The information is &lt;b&gt;not&lt;/b&gt; available in other variables, apart from a couple of trivial things. Or maybe it is, but since all that udev crap has absolutely zero documentation, there is no way to know how it is available.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;The result: GNOME is currently not installable on a system with LVM. There is no foreseeable possibility to fix that. Great. Thanks.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:25610</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/25610.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=25610"/>
    <title>“Sexism”. Again.</title>
    <published>2009-10-03T09:46:32Z</published>
    <updated>2009-10-03T09:47:23Z</updated>
    <content type="html">&lt;p&gt;I can’t say I’m surprised, but I’m still appalled by reading, again, a completely out-of-reality polemic about a leader of the Free software community being called sexist (among other nice names), after an innocent and random word used in a talk.&lt;/p&gt;

&lt;h3&gt;Oh noes! Serving in the navy will hurt!&lt;/h3&gt;

&lt;p&gt;It’s often that you hear jokes or references picturing French as arrogant, Italians as womanizers, geeks as bearded and smelling under the arms, sailors as gay, &lt;i&gt;et cætera&lt;/i&gt;. It’s called a cliché, and it helps people understand each other because it’s part of the collective imagination. If you insert a reference to an Italian in a speech about womanizers, it helps picturing the cliché of a guy in a black Armani suit, wearing sunglasses and using gomina. It doesn’t mean you think Italians are like this, and if it ever convinces someone that they are so, it means that someone really had trouble using the thing she calls brain to begin with.&lt;/p&gt;

&lt;p&gt;The same goes for a talk about people not being familiar to computers, that is using women as a cliché. When you look for a picture in your mind of someone who has trouble with using computers, what do you find? A granny fighting with her keyboard which keys are not in alphabetical order, or a busty blonde following with her eyes each movement of the mouse cursor. It’s only natural to use these pictures as a ground for communication, and it doesn’t mean you think bad of grannies or busty blondes. And if, because of that or of anything else, some people end up thinking that women can’t use a computer, or that they are not equal to men in this regard, &lt;i&gt;these people&lt;/i&gt; are the sexist ones. Not the guy who drew that picture in a magazine you read 10 years ago and forgot since, nor the one using it as a reference.&lt;/p&gt;

&lt;h3&gt;My intolerance is worth more than yours&lt;/h3&gt;

&lt;p&gt;And instead of actually focusing on educating or slapping those people, some of us are conducting a witch hunt, in which anyone implying the very existence of different categories of people, called men and women, regardless of his merits or opinions, is called a sexist and has stones thrown to him on several public fora. This is not acceptable. Do not let your speech be dictated by intolerance. If you apply the same reasoning to anyone that could be possibly hurt, in a completely literal and simplistic analysis of the speech, you can stop right now using any kind of metaphor, idiomatic expression or proverb. All that remains is a poor, sterilized speech. And when the speech is poor, the ideas get poorer as well.&lt;/p&gt;

&lt;p&gt;Imagine what would a complete stranger reading those blogs understand. She would surely picture hackers as a completely misogynistic community in which people only talk &lt;i&gt;about&lt;/i&gt; women (whether it is for sexist jokes or for rhetorical discussions about them) and never talk &lt;i&gt;with&lt;/i&gt; them. Which would be utterly wrong, since hackers (and geeks in general) are on the contrary open-minded and friendly to feminism, compared to the rest of the population — of course, except for the “OMG OMG it’s a woman! We need to be nice!!!” kind.&lt;/p&gt;

&lt;p&gt;And this is actually the reasoning that hides behind all this insane “RMS and Mark Shuttleworth are sexist” trolls. The picture they are giving of women are that of fragile little things that need to be protected against any attack of all these evil misogynist bearded geeks. Pretty ironical for people who claim fighting for gender equality, isn’t it?&lt;/p&gt;

&lt;h3&gt;Questioning the unquestionable&lt;/h3&gt;

&lt;p&gt;Frankly, RMS and Mark are among the people I trust the less in the community, but I don’t need to paint them as misogynists for that. Look at what they say instead of how they say it: one is an intolerant man who used to be a visionary but turned his principles into dogma; the other has seen the light and behaves as if he was the savior of Free software. I’d prefer if we questioned their vision and leadership based on their ideas and actions, not on distorted ways to interpret what they say based on a few people’s neuroses.&lt;/p&gt;

&lt;p&gt;Or, to say it shorter: &lt;b&gt;dudes, get a life&lt;/b&gt;.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:25396</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/25396.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=25396"/>
    <title>Nautilus hiccup in unstable</title>
    <published>2009-09-24T08:50:05Z</published>
    <updated>2009-09-24T08:50:05Z</updated>
    <content type="html">&lt;p&gt;In my haste to fix &lt;a href="http://bugs.debian.org/545254"&gt;#545254&lt;/a&gt;, I have uploaded nautilus 2.28.0 a bit too early. If you have not upgraded yet, please don’t install 2.28.0-1!&lt;/p&gt;

&lt;p&gt;If you have already upgraded, you should install 2.28.0-2 as soon as it is available, and then remove any &lt;tt&gt;~/.nautilus/metafiles/migrated-to-gvfs&lt;/tt&gt;
files. This way you will find back your metadata (icon positions on the desktop, window sizes, emblems…) at the next login.&lt;/p&gt;

&lt;p&gt;Sorry for the inconvenience.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:25098</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/25098.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=25098"/>
    <title>Some just want a shelter from the rain (of bugs)</title>
    <published>2009-08-11T15:39:55Z</published>
    <updated>2009-08-11T15:39:55Z</updated>
    <content type="html">&lt;img src="http://malsain.org/~joss/bikeshed.jpg"&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:25059</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/25059.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=25059"/>
    <title>Even Microsoft can turn out more clever</title>
    <published>2009-07-06T22:54:08Z</published>
    <updated>2009-07-06T22:54:08Z</updated>
    <content type="html">&lt;p&gt;Maybe &lt;a href="http://port25.technet.com/archive/2009/07/06/the-ecma-c-and-cli-standards.aspx"&gt;this&lt;/a&gt; will make the anti-Mono religious zealots shut their mouth.&lt;/p&gt;

&lt;p&gt;Summary: there won’t be any patent claims filed against implementations of ECMA 334 (C# language specification) and ECMA 335 (CLI specification) from Microsoft. Now, the whole movie-plot scenario boycottnovell imagined collapses like a house of cards.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:24790</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/24790.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=24790"/>
    <title>Mono and GNOME/Debian Q&amp;A</title>
    <published>2009-07-06T10:09:03Z</published>
    <updated>2009-07-06T10:14:52Z</updated>
    <content type="html">&lt;p&gt;So many wrong statements were made in the insane troll about Mono, I feel that somehow I need to write some explanations about the current situation. So far the closest post to the reality was made by &lt;a href="http://blog.schmehl.info/Debian/tomboy-mono-2"&gt;Tolimar&lt;/a&gt; but there are still some inaccuracies in it.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Will Debian squeeze include Mono and Tomboy in the default install?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Short answer: yes. Long answer: in the current state of affairs, the GNOME installation media (which, remember, are far from being the only ones) will install tomboy if it is available. This might change depending on the feedback of the installer team and the CD team, but currently there isn’t a compelling reason to change this.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Wasn’t it excluded from lenny because of problems with Mono?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; There were two reasons to exclude Tomboy from lenny: the size, and the lack of support for some of our architectures. It has nothing to do with anything specific to Mono.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; What has changed since lenny that makes this situation evolve?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; First, the size of Mono packages and of Tomboy itself was considerably reduced, thanks to awesome work from the Debian CLI team. Second, the availability of GNote means that architectures without Mono support can have a stripped down version (although this makes the situation far from ideal for these architectures, see next question).&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Why not ship GNote instead by default?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; GNote was written for bad reasons, without even respecting the GPL copyright requirements. But more importantly, its maintenance model is going to make it only follow behind the Tomboy lead, as any code changes in Tomboy will need to be translated to C++. It also supports less languages and less features. Furthermore, it was introduced in Debian for political reasons, by a maintainer who doesn’t use it and isn’t involved in GNOME maintenance.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Isn’t GNote much smaller?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Not really. C++ bindings are larger than CLI bindings, so the only real differences are the size of the Mono interpreter, and the size of translations. In the end, Tomboy with all its dependencies is only 10 MiB larger; that includes 3 times as many translations, and some important functionality.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; I disagree with this decision. What can I do to change this?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Get yourself seriously involved in either of Tomboy development, GNOME development, Debian GNOME packaging, or the Debian installer. Then, maybe your opinion will mean more than a troll on your pet free software news site.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Tomboy should use Python / Vala / Java / Parrot / Lisp / (insert here your favorite pet language).&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; The developers prefer C#. While I’d personally appreciate if they could switch to a less controversial language like Vala (mainly because it would avoid trolls), I have no right to tell them to do so.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Why is there a difference of treatment between Mono and Java?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Because there are about 30 applications using Gtk# in Debian, several of which are among the most popular in their category, while there is exactly 0 useful application using java-gnome.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Is Mono free software?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Yes, it is 100% free software. Just as everything in Debian, it was scrutinized by FTP masters who found it is free. Most of the code is under the GPL, LGPL or MIT licenses.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Are there patent issues with Mono?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Just like any other software, Mono certainly infringes on thousands of stupid software patents. However the Debian policy with patents is to put them in a trash and pee on them, unless they are actively enforced with reasonable chances to win. The situation of Mono is much more comfortable than (for example) that of MP3 decoders, for which patents are actively enforced; it’s just that they are so lame that we choose to ignore them.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Are there specific dangers coming from Microsoft regarding Mono?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; Microsoft has claimed to possess patents on some Mono compatibility layers with non-standard Microsoft APIs. Not only this is completely irrelevant to GNOME, since nothing in Gtk# and related stuff uses these compatibility layers, but if you know how things work in the patent world, you already understand this is merely FUD. Microsoft has nothing, but claims to have something in order to scare consumers away from Mono. Actually, not enforcing the patents, while knowing they are violated, would make their case very weak in a patent suit. What their behavior shows is that they are very afraid of Mono. It is stealing customers from their best and most advanced product, their lead development framework. There is absolutely zero chance that they are sustaining Mono from behind, since its very existence is going to make them lose a large amount of money.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; Would it make Debian uncomfortable if these patents were starting to be enforced?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; In the very unlikely situation where Mono would be found to infringe on valid Microsoft patents, we would simply have to remove it from the Debian archive. We are not short from alternatives, and it wouldn’t be long before we had drop-in replacements in Vala or Python.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; What is the agenda of Roy Schestowitz, Sam Varghese, Robert Millan and their friends?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; What they are doing is giving credit to the Microsoft FUD in order to also scare consumers and developers away from Mono. They want to scare them away to other free software environments, but what they achieve is scaring people away to buy Microsoft products instead. It is tempting to conclude, because of the result, that they are employed by Microsoft underhand, but applying Hanlon’s razor, I think they are just incredibly incompetent, to the point where they are dangerous. These people are toxic to the community, and we really need them to shut up. If they ever reach their goal and destroy a great piece of free software like Mono, they will go on and find something else to destroy. Remember, their goal is to &lt;b&gt;SDD&lt;/b&gt;: scare, disrupt and destroy. You cannot build anything useful or interesting with such goals.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Q:&lt;/b&gt; But Richard Stallman says they are right!&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;A:&lt;/b&gt; RMS is also the guy who wants us to ship non-free documentation. I don’t think RMS has enough connection left to the real world for his opinion to be considered relevant.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:24424</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/24424.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=24424"/>
    <title>Introducing dh_devlibs</title>
    <published>2009-06-30T17:19:39Z</published>
    <updated>2009-06-30T17:20:35Z</updated>
    <content type="html">&lt;p&gt;Ever noticed how the dependency fields of development library packages are tedious to maintain? They are often:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;out of sync with the build dependencies,&lt;/li&gt;
&lt;li&gt;outdated regarding the actual requirements of pkg-config files,&lt;/li&gt;
&lt;li&gt;and of course incorrect whenever libtool decides to add tons of unneeded dependencies.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In order to improve the situation a bit, I have written a debhelper script to handle development libraries and generate automatically these dependencies in a &lt;tt&gt;${dev:Depends}&lt;/tt&gt; variable, using the pkg-config information. I have &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=534966"&gt;requested&lt;/a&gt; its inclusion in debhelper, but in the meantime, I’d appreciate if people could test it against various library packages so that its potential bugs can be fixed; this could surely convince Joey to accept it faster.&lt;/p&gt;

&lt;p&gt;Here you go: &lt;tt&gt;&lt;a href="http://malsain.org/~joss/dh_devlibs"&gt;dh_devlibs&lt;/a&gt;&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;The next step in this direction is to do some automatic validation of build-dependencies. The first approach I thought of requires some &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=528240"&gt;improvements&lt;/a&gt; in pkg-config, but given how this package is &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=476947"&gt;maintained&lt;/a&gt;, I’m afraid it will require some time. There are other possibilities involving diversions, so it is still possible that something good comes out of this.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:24065</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/24065.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=24065"/>
    <title>The very best of anti-Mono zealots</title>
    <published>2009-06-13T18:59:54Z</published>
    <updated>2009-06-16T08:13:09Z</updated>
    <content type="html">&lt;p&gt;If forums did not exist, happily we would have blog comments for entertainment.&lt;/p&gt;

&lt;p&gt;From Jo Shields’ &lt;a href="http://www2.apebox.org/wordpress/rants/124/"&gt;insightful explanations&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;“Mono is a cancer that attaches itself in an intellectual property sense to everything it touches.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Mono serves no useful purpose to anyone other than Microsoft.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Fuck mono, parrot will probably end up replacing that piece of shit.”&lt;/blockquote&gt;

&lt;p&gt;From LHB’s &lt;a href="http://linuxhaters.blogspot.com/2009/06/to-all-you-mono-haters.html"&gt;link&lt;/a&gt; to the previous post:&lt;/p&gt;
&lt;blockquote&gt;“It shouldn't be a surprise to find out this crappy little blog was de Icaza's.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Mono is dead”&lt;/blockquote&gt;

&lt;p&gt;From Robert Millan’s &lt;a href="http://robertmh.wordpress.com/2009/06/12/mono-in-the-default-install/"&gt;uninformed accusations&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;“It is sick and a slap in the face to the good people in Debian to tolerate such a psycho.”&lt;/blockquote&gt;
&lt;blockquote&gt;“When also Miguel de lcaza stops getting checks from M$, even he will stop pushing Mono and get a life.”&lt;/blockquote&gt;
&lt;blockquote&gt;“How much did Microsoft pay Joss for this? We know de Icaza is getting paid “bonuses” fro his work, so what was Joss’ paycheck?”&lt;/blockquote&gt;
&lt;blockquote&gt;“I think Mono is an abomination”&lt;/blockquote&gt;
&lt;blockquote&gt;“If this happen i will switch distro to slackware.”&lt;/blockquote&gt;

&lt;p&gt;From my &lt;a href="http://np237.livejournal.com/23901.html"&gt;previous&lt;/a&gt; blog entry:&lt;/p&gt;
&lt;blockquote&gt;“Hey whats your salery for this -Hey we all love Mono- Posting? Did Novell or Microsoft paid you?”&lt;/blockquote&gt;
&lt;blockquote&gt;“Have you noticed that you are arguing from the same position as Microsoft is with Internet Explorer ?”&lt;/blockquote&gt;
&lt;blockquote&gt;“An email client is not part of a Desktop.”&lt;/blockquote&gt;
&lt;blockquote&gt;“These are *APPLICATIONS* and forcing me to install them is, to my mind, antithetical to the open source ideal.”&lt;/blockquote&gt;
&lt;blockquote&gt;“The majority of the Debian userbase has no use for patent-encumbered microsoft-wannabe software.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Will somebody kick Joss a** already? Thank you.”&lt;/blockquote&gt;
&lt;blockquote&gt;“ notice that you didn't contradict me, so we are in agreement that Tomboy, Fspot, and GnomeDo aren't cool.”&lt;/blockquote&gt;
&lt;blockquote&gt;“I sincerely hope you drop any kind of linux and/or debian development ASAP.”&lt;/blockquote&gt;
&lt;blockquote&gt;“honestly all those mono files horribly ending with .exe on Linux sucks”&lt;/blockquote&gt;
&lt;blockquote&gt;“Evolution serves no useful purpose in today's world”&lt;/blockquote&gt;
&lt;blockquote&gt;“As an aside, I still write programs for Messy Doss.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Hey, before you start packaging up software where you have no idea whatsoever why people have an issue with it […]”&lt;/blockquote&gt;
&lt;blockquote&gt;“That last bit about you watching anime instead of working on that project because some journalist hurt your feelings is a concern for me. I wasn't aware children had leadership roles in Debian's future...”&lt;/blockquote&gt;
&lt;blockquote&gt;“You don't know nor belong the free software movement. You should go and ask for a job at Microsoft! (lame botas de Microsoft!)”&lt;/blockquote&gt;

&lt;p&gt;From OSnews’ &lt;a href="http://www.osnews.com/comments/21660"&gt;surprisingly neutral explanations&lt;/a&gt; about what is happening in Debian:&lt;/p&gt;
&lt;blockquote&gt;“And gnuplot is neither GNU nor OpenSource.”&lt;/blockquote&gt;
&lt;blockquote&gt;“GNote is not a Tomboy ripoff.”&lt;/blockquote&gt;
&lt;blockquote&gt;“I swear people like you are just sitting in a call center in india getting paid by microsoft to post lame anti-anti-mono crap. ”&lt;/blockquote&gt;
&lt;blockquote&gt;“Or are you just copying and pasting rebuttals from a spreadsheet put together by MS's marketing/psychology department?”&lt;/blockquote&gt;
&lt;blockquote&gt;“You can't just remove mono and the associated apps as this will cause problems when doing updates due to a meta package being missing.”&lt;/blockquote&gt;

&lt;p&gt;And of course, Boycott Novell’s &lt;a href="http://boycottnovell.com/2009/06/13/fedora-ubuntu-debate-mono/"&gt;troll of the day&lt;/a&gt; is a recommended reading for anyone wanting to get a share of fun.&lt;/p&gt;

&lt;p&gt;And there are now some in this very blog entry! We’re going into a loop!&lt;/p&gt;
&lt;blockquote&gt;“After this, I do really hope they kick you out of Debian.”&lt;/blockquote&gt;
&lt;blockquote&gt;“have you guys kicked out Kurt Roeckx for crippling OpenSSL? I heard he got a nice job offer from the NSA over that.”&lt;/blockquote&gt;

&lt;p&gt;&lt;b&gt;UPDATE:&lt;/b&gt; we &lt;a href="http://linux.slashdot.org/story/09/06/15/1251228/Mono-Squeezed-Into-Debian-Default-Installation"&gt;made Slashdot&lt;/a&gt;!&lt;/p&gt;
&lt;blockquote&gt;“It's just like Wine and DOSEmu: a gateway to viruses that originated on Microsoft platforms.”&lt;/blockquote&gt;
&lt;blockquote&gt;“I see Microsoft having a field day with this...”&lt;/blockquote&gt;
&lt;blockquote&gt;“But it's not just Microsoft's products that bloat Debian.”&lt;/blockquote&gt;
&lt;blockquote&gt;“Why are this guys, which I believe have their best of interests, trying to shove up our asses a lame excuse of a programming language that basically doesn't bring anything new but license agreements, EULAs, patents to a perfectly, usable environment?”&lt;/blockquote&gt;
&lt;blockquote&gt;“I can code a Tomboy like app in Python in three days...”&lt;/blockquote&gt;
&lt;blockquote&gt;“Because nobody fucking wants Mono on their system!”&lt;/blockquote&gt;
&lt;blockquote&gt;“Get in bed with Microsoft and you have to be careful that you don't
end up with a knife in your back and act accordingly.”&lt;/blockquote&gt;
&lt;blockquote&gt;“He's just a pushy immature unmannered jerk who managed to slip something in early in the development cycle.”&lt;/blockquote&gt;

&lt;p&gt;Let me add to this a disclaimer: if the people who want me out of the Project – for re-adding a dependency into a metapackage – volunteer to contribute to Debian, and manage during 6 months to contribute &lt;i&gt;together&lt;/i&gt; the same amount of work I am contributing currently in GNOME packaging, I’ll happily leave the project.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;EDIT:&lt;/b&gt; added new quotes, last addition: 16 june, 08:13 UTC.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:23901</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/23901.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=23901"/>
    <title>Robert Millan in the default troll?</title>
    <published>2009-06-12T21:25:35Z</published>
    <updated>2009-06-12T21:34:10Z</updated>
    <content type="html">&lt;p&gt;&lt;a href="http://robertmh.wordpress.com/2009/06/12/mono-in-the-default-install/"&gt;Robert&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;Unlike what you are suggesting, I’m not the one who decides what goes into the default Squeeze installation. There is most likely going to be a small discussion with the debian-installer team, like the one we went through for Lenny and which turned out very constructive. Saying that I “decided that Mono must be part of the default desktop install” is so freakingly untrue that it leaves me somehow speechless.&lt;/p&gt;

&lt;p&gt;Of course, the real discussion around including Mono by default is not about Tomboy. If they don’t want of it, the debian-installer team just has to include GNote in the gnome-desktop task to get it by default instead of Tomboy; note that this is possible since I added an &lt;i&gt;or&lt;/i&gt; dependency, &lt;i&gt;precisely as &lt;b&gt;you&lt;/b&gt; &lt;a href="http://bugs.debian.org/532355"&gt;suggested&lt;/a&gt;&lt;/i&gt;. No, the applications that are going to make a difference are things like &lt;a href="http://do.davebsd.com/"&gt;GNOME Do&lt;/a&gt; and &lt;a href="http://f-spot.org/"&gt;F-Spot&lt;/a&gt;. If we want to include these cool applications that have no real alternative (even proprietary), this will include the Mono stack as well. And there are no stripped down C++ versions of those.&lt;/p&gt;

&lt;p&gt;Let’s get back to Tomboy. The reason why it is now a dependency of the &lt;tt&gt;gnome&lt;/tt&gt; metapackage is the same reason why upstream GNOME included it in their default desktop release. It is not to bow before Microsoft or Novell, as you and your &lt;a href="http://boycottnovell.com/"&gt;paranoid&lt;/a&gt; &lt;a href="http://www.linuxtoday.com/news_story.php3?ltsn=2009-06-11-021-35-OS-CY"&gt;friends&lt;/a&gt; seem to think; it is because &lt;b&gt;professional-grade note-taking is a vital application&lt;/b&gt; to an important share of our users.&lt;/p&gt;

&lt;p&gt;Everyone working in a corporate environment, with many projects to manage with several clients, meetings every other day, and random thoughts to write somewhere, needs to manage notes. Some use random pieces of paper scattered on their desk. Some use notebooks. Some use Emacs. Some write formal proceedings for each of their actions. It turns out that &lt;i&gt;none of these methods are comparable to Tomboy in terms of efficiency&lt;/i&gt;.&lt;/p&gt;

&lt;p&gt;As such, I’m wondering whether you are actually using the software you packaged. Your writings suggest that you don’t need an application such as GNote. Which means that, consistently with your other actions in the project, you only packaged it to &lt;b&gt;push your pointless political agenda&lt;/b&gt;, not to do something useful for our users. That also explains why you proved to be so &lt;a href="http://bugs.debian.org/525547"&gt;clueless&lt;/a&gt; while packaging it.&lt;/p&gt;

&lt;p&gt;And I am sorry to inform you that the Project does not give a shit of your political agenda. The reason why Tomboy was not included in the default Lenny installation is not because of stupid software patents. If we gave a shit of inapplicable software patents, we wouldn’t be shipping MP3 decoding software by default. If we gave a shit, we wouldn’t ship Mono in main, regardless of what is in the default installation. We don’t give a shit of where is Mono coming from, as long as it is free software. As &lt;a href="http://www2.apebox.org/wordpress/rants/124/"&gt;Jo&lt;/a&gt; explained, we don’t even give a shit of what Mono is, it just happens to be a dependency for Tomboy. No, the reason why Tomboy was not here by default is simply because its dependency stack was too big for some installation media. Now, the Debian Mono team managed to reduce a bit the installation size, and the availability of GNote as an alternative is giving a last-resort choice that will be much smaller.&lt;/p&gt;

&lt;p&gt;Oh, and just a side note: I was going to work on the &lt;a href="http://www.0d.be/debian/debian-gnome-2.26-status.html"&gt;remaining bits&lt;/a&gt; of GNOME 2.26 in Debian this week-end. You just convinced me to watch anime on my home cinema instead. With new seasons of Higurashi and Haruhi Suzumiya coming around, this is perfect timing.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:23753</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/23753.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=23753"/>
    <title>Reporting useful bugs</title>
    <published>2009-05-21T06:41:53Z</published>
    <updated>2009-05-21T06:41:53Z</updated>
    <content type="html">&lt;p&gt;Here are a few hints if you want your reports to be treated more promptly.&lt;/p&gt;

&lt;h2&gt;When testing fails, try unstable&lt;/h2&gt;
&lt;p&gt;If you are running testing, not all bug reports are interesting. More specifically, the relevant ones are about insufficient dependencies that let slip into testing a non-working combination of packages. Think of the “I upgraded foo, then bar broke” category.&lt;/p&gt;
&lt;p&gt;Otherwise, the reason why reportbug looks for newer versions of a package in unstable is that, in most cases, the bug is fixed in unstable. If you can, always try the unstable version &lt;i&gt;before&lt;/i&gt; reporting the bug.&lt;/p&gt;

&lt;h2&gt;Report bugs against the failing package&lt;/h2&gt;
&lt;p&gt;“This is related to printing in a GNOME program, so I report this against libgnomeprint.”&lt;/p&gt;
&lt;p&gt;Always &lt;i&gt;file reports against the failing program&lt;/i&gt;. If there is a library involved, reportbug will include the necessary information so that the maintainer can easily reassign. If you’re not sure of the affected package, use a metapackage (for example, gnome for GNOME-related packages).&lt;/p&gt;

&lt;h2&gt;Do not second-guess the origin of the bug&lt;/h2&gt;
&lt;p&gt;“After upgrading libfoo, bar starts crashing, so I’m reporting it against libfoo.”&lt;/p&gt;
&lt;p&gt;Unless you can tell which function is at fault and how this is ABI breakage, you should report the bug against the program that crashes. The program’s maintainer will reassign if needed, and will hit the library’s maintainer with a hammer if needed.&lt;/p&gt;

&lt;h2&gt;Don’t forget to explain what’s wrong&lt;/h2&gt;
&lt;p&gt;“The frobniz in libfrob is broken, you should change /usr/share/libfrob/blah line 13 to something else. I don’t know what libfrob is about, but I have some problems that look frobniz-related.”&lt;/p&gt;
&lt;p&gt;Do not second-guess, always start explaining what bug you are seeing first. Your attempts at investigating it can be interesting, but don’t forget to explain what bug lead you on investigating.&lt;/p&gt;

&lt;h2&gt;What is the use case we should cover?&lt;/h2&gt;
&lt;p&gt;“I’m trying to do that with your package and it looks extremely complicated/doesn’t work as expected/fails miserably. Your package is clearly broken!”&lt;/p&gt;
&lt;p&gt;If your attempts to do something that should be trivial, given the purpose of the package, fail, then you are probably looking at the problem at the wrong angle. There may be a much simpler, though radically different, way to do what you are trying to achieve.&lt;/p&gt;
&lt;p&gt;In these situations, always include in your report &lt;b&gt;what&lt;/b&gt; you are trying to do and &lt;b&gt;why&lt;/b&gt; you want to do it.&lt;/p&gt;

&lt;h2&gt;strace is not a general-purpose debugging tool&lt;/h2&gt;
&lt;p&gt;Whether you observe a crash, a deadlock or a livelock, strace is not the tool that will give us information. The only thing you do by adding a strace log to the bug report is making it unreadable with its thousands of lines of output.&lt;/p&gt;
&lt;p&gt;For the specific cases that require strace for debugging, these traces are welcome but if you’re not sure, don’t attach them. The developers will ask them for you. Otherwise, the general-purpose debugging tool is &lt;a href="http://wiki.debian.org/HowToGetABacktrace"&gt;gdb&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Use reportbug&lt;/h2&gt;
&lt;p&gt;There is a good reason why some packages include bug control files and scripts. Use a reporting tool that takes them into account. Unless you are requesting an enhancement, always use reportbug. Please avoid reportbug-ng since it only provides parts of the required information.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:23438</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/23438.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=23438"/>
    <title>Don’t worry, your data is still safe</title>
    <published>2009-03-25T10:04:37Z</published>
    <updated>2009-03-25T10:04:37Z</updated>
    <content type="html">&lt;p&gt;Seen on Slashdot: a large discussion forum site &lt;a href="http://www.webhostingtalk.com/showthread.php?t=729362"&gt;hacked through its backups&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://np237.livejournal.com/18996.html"&gt;I had seen this coming.&lt;/a&gt; And it’s just the beginning, you can expect this to be a major attack vector in the next years. Until people understand it’s not possible to secure data without securing the network.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:23100</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/23100.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=23100"/>
    <title>Dear lazyweb,</title>
    <published>2009-03-24T10:45:14Z</published>
    <updated>2009-03-24T10:45:14Z</updated>
    <content type="html">&lt;p&gt;Due to the repeated tendency of our &lt;strike&gt;friends of the MPAA&lt;/strike&gt; beloved government to create laws that turn computer and Internet users into criminals, I’m considering to shutdown any kind of non-encrypted communications that I initiate from France.&lt;/p&gt;

&lt;p&gt;Therefore, I’m looking for cheap dedicated hosting in an Internet-friendly country, in a way similar to what we have here with &lt;a href="http://www.kimsufi.com/"&gt;OVH&lt;/a&gt; or &lt;a href="http://www.dedibox.fr/"&gt;Iliad&lt;/a&gt;. My requirements are:
&lt;ul&gt;
&lt;li&gt;low ping times from France&lt;/li&gt;
&lt;li&gt;high bandwidth (100 Mbits/s would be nice)&lt;/li&gt;
&lt;li&gt;100 GB of RAID disk space&lt;/li&gt;
&lt;/ul&gt;
I’m fine with blades, but not with virtual hosting.&lt;/p&gt;

&lt;p&gt;Suggestions are welcome. I’m currently considering hosting solutions in the Netherlands, but I’d appreciate some advice.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:22996</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/22996.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=22996"/>
    <title>Which logo for the main GNOME menu in Debian?</title>
    <published>2009-03-20T13:53:00Z</published>
    <updated>2009-03-20T15:29:34Z</updated>
    <content type="html">&lt;p&gt;Up to lenny, our GNOME desktop lacks a bit branding. We used to have the splash screen but it doesn’t show up anymore, so that only leaves the background. It has several times been requested to put a bit of branding in the menu, as most distributions do, and this has been in my mind for a while.&lt;/p&gt;

&lt;p&gt;I have uploaded a first attempt to unstable. Since I didn’t want the branding to be too intrusive, I used the “swirl foot“ logo of the &lt;a href="http://pkg-gnome.alioth.debian.org/"&gt;pkg-gnome page&lt;/a&gt;. So far, the reactions haven’t been &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=17;bug=516566"&gt;very&lt;/a&gt; &lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=22;bug=516566"&gt;enthusiastic&lt;/a&gt;, that’s why I’m writing here. Any change generates an amount of grumpiness, and it’s hard to distinguish what’s caused by the mere fact that something broke people’s habits, and what’s really changed for the bad.&lt;/p&gt;

&lt;p&gt;This is why I have set up a &lt;a href="http://doodle.com/pifrrr3zc7a773rs"&gt;little poll&lt;/a&gt; where users are welcome to voice their opinion. What should we set as the main menu icon?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;img src="http://malsain.org/~joss/logos/gnome-16.png"&gt;&lt;img src="http://malsain.org/~joss/logos/gnome-24.png"&gt;&lt;img src="http://malsain.org/~joss/logos/gnome-32.png"&gt;&lt;img src="http://malsain.org/~joss/logos/gnome-48.png"&gt; The good old GNOME foot icon&lt;/li&gt;
&lt;li&gt;&lt;img src="http://malsain.org/~joss/logos/debian-16.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debian-24.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debian-32.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debian-48.png"&gt; The Debian swirl icon&lt;/li&gt;
&lt;li&gt;&lt;img src="http://malsain.org/~joss/logos/debgnome-16.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debgnome-24.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debgnome-32.png"&gt;&lt;img src="http://malsain.org/~joss/logos/debgnome-48.png"&gt; The “swirl foot“ icon&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;I also welcome proposals for some other icon that would be better for this place. Actually, that would be my favorite option if I had something to propose, as I’m not enthusiastic about any of the available ones. Time to be creative!&lt;/p&gt;

&lt;p&gt;So now is the time to &lt;a href="http://doodle.com/pifrrr3zc7a773rs"&gt;express your preferences&lt;/a&gt;. If you have comments, please put them in the blog entry, not in the poll page.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;EDIT :&lt;/b&gt; I found that some opacity settings in the SVG I used for the “swirl foot” icon were completely wrong. Here is a new version, taking account what has been proposed in the comments:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;img src="http://malsain.org/~joss/logos/better-16.png"&gt;&lt;img src="http://malsain.org/~joss/logos/better-24.png"&gt;&lt;img src="http://malsain.org/~joss/logos/better-32.png"&gt;&lt;img src="http://malsain.org/~joss/logos/better-48.png"&gt;&lt;/li&gt;&lt;/ul&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:22579</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/22579.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=22579"/>
    <title>Y U SO MEAN</title>
    <published>2009-02-26T17:48:42Z</published>
    <updated>2009-02-26T17:49:11Z</updated>
    <content type="html">&lt;img src="http://malsain.org/~joss/schilimero.png"&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:22392</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/22392.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=22392"/>
    <title>It’s winter, and it’s cold</title>
    <published>2009-01-25T09:53:19Z</published>
    <updated>2009-01-25T09:53:19Z</updated>
    <content type="html">&lt;img src="http://malsain.org/~joss/rlznao.jpg"&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:22270</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/22270.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=22270"/>
    <title>On the good use of compiler warning flags</title>
    <published>2009-01-23T20:13:02Z</published>
    <updated>2009-01-23T20:25:54Z</updated>
    <content type="html">&lt;p&gt;The &lt;a href="http://projects.gnome.org/gnome-power-manager/"&gt;gnome-power-manager&lt;/a&gt; developers like clean code. Actually, more than clean code: code that will not generate a single nitpicking warning. The package builds with the following C compiler flags:&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;-Werror -Wcast-align -Wno-uninitialized -Wall -Wformat-security&lt;/pre&gt;&lt;/blockquote&gt;

&lt;h2&gt;Sometimes the compiler is more clever than the coder…&lt;/h2&gt;
&lt;p&gt;On the SPARC architecture, &lt;tt&gt;-Wcast-align&lt;/tt&gt; really starts to mean something. Unlike most other architectures, any alignment error on here will leave you gather your teeth spread on the floor after you’ve been hit by a SIGBUS. It tries to catch at build time alignment errors resulting from a cast between pointers to different types.&lt;/p&gt;

&lt;p&gt;Together with &lt;tt&gt;-Werror&lt;/tt&gt;, it triggered a first &lt;a href="http://bugs.debian.org/510011"&gt;FTBFS bug&lt;/a&gt;. The error occured on the following code:&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;
        if (XRRGetOutputProperty (brightness-&amp;gt;priv-&amp;gt;dpy, output, brightness-&amp;gt;priv-&amp;gt;backlight,
                                  0, 4, False, False, None,
                                  &amp;actual_type, &amp;actual_format,
                                  &amp;nitems, &amp;bytes_after, &amp;prop) != Success) {
                egg_debug ("failed to get property");
                return FALSE;
        }
        if (actual_type == XA_INTEGER &amp;&amp; nitems == 1 &amp;&amp; actual_format == 32) {
                *cur = *((int *) prop);
                ret = TRUE;
        }
        XFree (prop);
        return ret;
&lt;/pre&gt;&lt;/blockquote&gt;
&lt;p&gt;More precisely, the error occurs when casting &lt;tt&gt;prop&lt;/tt&gt; (which is an array of pointers) into an &lt;tt&gt;int *&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;The compiler is clearly right. The alignment requirements are different for a pointer and an integer; therefore, casting a pointer to a pointer into a pointer to an integer will always work, but dereferencing the pointer later will possibly cause a crash. Turning this expression into a &lt;tt&gt;memcpy&lt;/tt&gt; leads to code that should always work.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Lesson learned:&lt;/b&gt; do not design APIs where an array of pointers can actually store integers. Have you ever heard of opaque structures?&lt;/p&gt;

&lt;h2&gt;… and sometimes it is not&lt;/h2&gt;
&lt;p&gt;This was not enough and a second &lt;a href="http://bugs.debian.org/510397"&gt;FTBFS bug&lt;/a&gt; showed up. Here, the error happens in the following code:&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;
static inline GstBuffer *
gst_buffer_ref (GstBuffer * buf)
{
  /* not using a macro here because gcc-4.1 will complain
   * if the return value isn't used (because of the cast) */
  return (GstBuffer *) gst_mini_object_ref (GST_MINI_OBJECT_CAST (buf));
}
&lt;/pre&gt;&lt;/blockquote&gt;
&lt;p&gt;GstBuffer is a structure which contains a GstMiniObject at the beginning. Therefore, you conduct operations on the GstMiniObject through a mere cast. The first cast (GstBuffer → GstMiniObject) is fine, but in the second cast (GstMiniObject → GstBuffer), the compiler suspects a problem, since the alignment requirements on GstBuffer are stronger than those on GstMiniObject.&lt;/p&gt;

&lt;p&gt;The compiler is wrong because it didn’t read the API documentation; otherwise, it would have known that &lt;tt&gt;gst_mini_object_ref&lt;/tt&gt; can only return &lt;tt&gt;NULL&lt;/tt&gt; or its argument, which means there can’t be any loss of alignment. Since there are no function attributes to express such complex things, we are still forced to rely on the developer having correctly read the documentation. Way to go, compiler.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Lesson learned:&lt;/b&gt; there are good reasons why some warnings are not part of &lt;tt&gt;-Wall&lt;/tt&gt;. Especially, it is dubious to use them with &lt;tt&gt;-Werror&lt;/tt&gt;. Does anyone know whether it is possible to apply &lt;tt&gt;-Werror&lt;/tt&gt; only to some of the warnings and not to all of them? It would sound like a useful improvement.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:22014</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/22014.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=22014"/>
    <title>The session non-manager</title>
    <published>2008-12-28T10:10:46Z</published>
    <updated>2008-12-28T10:21:10Z</updated>
    <content type="html">&lt;p&gt;For various reasons (which in the end boil down to lack of manpower), we are quite late in the process of packaging GNOME 2.24. (This is almost finished now, I’ll keep you informed.) Which is why I may sound coming a bit late on noticing this one, but I was really speechless.&lt;/p&gt;

&lt;h2&gt;The problem: session management has flaws&lt;/h2&gt;

&lt;p&gt;Currently, a session manager uses XSMP (the X Session Management Protocol) to talk to applications. What it means is that for applications supporting this protocol, it is able to do more than simply starting and killing them: it will also remember their state, and offer them a way to shut down gracefully. However, XSMP is really a shitty protocol – I won’t explain why here, you will find tons of better explanations on the intarweb.&lt;/p&gt;

&lt;p&gt;The gnome-session developers, being quite aware of this issue, did what anyone interested enough would have done: they designed a new protocol, based on D-Bus, and implemented it. The new protocol is not considered stable yet, but it is simple, efficient and above all, reliable – that’s a giant leap forward. For this reason, I was very excited to see what gnome-session 2.24 would look like, since it brings major cleanups in the code.&lt;/p&gt;

&lt;h2&gt;The solution: remove session management!&lt;/h2&gt;

&lt;p&gt;When I first started it, it did not restore my saved session. I simply supposed that the format of the saved session had changed, and that writing a conversion tool would be in order. Wrong. Let’s bring the session preferences:&lt;/p&gt;

&lt;div align="center"&gt;&lt;img src="http://malsain.org/~joss/gnome-session-properties.png"&gt;&lt;/div&gt;

&lt;p&gt;The UI of this dialog hasn’t changed since 2.22. However, I do not resist the urge to show you the code behind the “Remember Currently Running Applications” button:
&lt;blockquote&gt;&lt;pre&gt;static void
on_save_session_clicked (GtkWidget           *widget,
                         GsmPropertiesDialog *dialog)
{
        g_debug ("Session saving is not implemented yet!");
}&lt;/pre&gt;&lt;/blockquote&gt;
As for the check box on top of it, it sets a GConf value that is never read anywhere.&lt;/p&gt;

&lt;p&gt;If you know the long term plans for GNOME, it makes sense: when gnome-shell replaces the panel and the window manager, it will also be responsible for starting the visible applications, while gnome-session will deal with what’s happening behind the scenes. But gnome-shell is still far from ready, and you need something in the meantime for the basic requirements of a session manager!&lt;/p&gt;

&lt;h2&gt;Backwards compawhat?&lt;/h2&gt;

&lt;p&gt;The surprises don’t stop here. I also noticed that logout was much faster – instantaneous instead of the usual 2-3 seconds. The reason why logging out is this long currently is not because it takes long to kill applications; it’s because the session manager kindly requests applications supporting XSMP to shut down before killing them. If a document isn’t saved, an application will be able to prevent the logout process. Guess what? Now gnome-session completely ignores XSMP applications. Since it doesn’t need them to register for saving the session, it also saves the time to ask them to close cleanly.&lt;/p&gt;

&lt;p&gt;The result is that you will see a lot of such dialogs:&lt;/p&gt;

&lt;div align="center"&gt;&lt;img src="http://malsain.org/~joss/evo-recover.png"&gt;&lt;/div&gt;

&lt;p&gt;It’s very nice to replace a flawed protocol ; and really, the new protocol goes in the correct direction. But let’s be realistic, it’s impossible to immediately port hundreds of applications to a new protocol without having a transition time during which both protocols are supported. You also need to consider your protocol as stable before asking other developers to port their applications. And to get it accepted, you need to standardize it; freedesktop.org would have been the correct body. (Currently, the protocol lies in the org.gnome namespace, not org.freedesktop.)&lt;/p&gt;

&lt;h2&gt;Release management at its best&lt;/h2&gt;

&lt;p&gt;Wait… aren’t there some distributions out there which already released stable versions with GNOME 2.24? The answer is yes. At least Ubuntu Intrepid and Fedora Core 10 ship with a session manager that:
&lt;ul&gt;
&lt;li&gt;is unable to restore applications;&lt;/li&gt;
&lt;li&gt;kills applications without letting you save your work.&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;It’s good to see such improvements on the session manager coming, and I’m really thankful to the gnome-session developers to work on it. What I wonder is:
&lt;ul&gt;
&lt;li&gt;How could it slip into a stable GNOME release?&lt;/li&gt;
&lt;li&gt;How could two major distributions let it slip into a so-called stable release?&lt;/li&gt;
&lt;/ul&gt;
It definitely looks like we’re not the only ones who could improve our release management processes.&lt;/p&gt;

&lt;h2&gt;So what?&lt;/h2&gt;

&lt;p&gt;This is a very good example of a lack of “big picture” thinking. On one side, there is a brilliant design and its good implementation. On the other side, two major regressions from the user’s point of view – the kind of regressions that make people fly away.&lt;/p&gt;

&lt;p&gt;If there’s one thing that I’ve learned from working in IT, it’s that you must often keep your brilliant designs as long-term goals. In the short term, you will run a bastardized version of your brilliant design that will make you cry; but it will work. When you need to talk to shitty applications or with shitty protocols, you need to write shitty code.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:21523</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/21523.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=21523"/>
    <title>Dear “friendly” people,</title>
    <published>2008-12-22T11:37:11Z</published>
    <updated>2008-12-22T12:29:07Z</updated>
    <content type="html">&lt;p&gt;during the ongoing avalanche of posts on Planet and on Debian mailing lists where you ask everyone to be friendly and considerate, you have so far:
&lt;ul&gt;
&lt;li&gt;deliberately framed the discussion in a gender-oriented fashion to throw away unjustified accusations of sexism;&lt;/li&gt;
&lt;li&gt;inflated a 85-post long mudslinging thread with my name in the topic (which is the Google version of publicly throwing stones at people);&lt;/li&gt;
&lt;li&gt;vomited on people on an IT news site and helped the site spreading misinformation about the Project;&lt;/li&gt;
&lt;li&gt;shown your own frustration by trying to find hidden sexual references in messages you find offensive;&lt;/li&gt;
&lt;li&gt;and I’m probably missing a lot since I’m not reading all that crap.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;Pretty please. What you mean is “Go fuck yourself”, but the way you are saying it is no more friendly and actually much more rude. If you meant “Go fuck yourself”, why not just say it?
&lt;ul&gt;
&lt;li&gt;I would have felt better since it’s much less insulting.&lt;/li&gt;
&lt;li&gt;You would have felt better since it’s really a relief to say it frankly.&lt;/li&gt;
&lt;li&gt;Everyone else would have felt better since this would have ended the discussion instead of polluting the lists with useless wanking.&lt;/li&gt;
&lt;/ul&gt;
You are just lying to yourselves if you think your contributions to a flamewar are more friendly than others.&lt;/p&gt;

&lt;p&gt;As for those starting discussions on the community and on the code of conduct: do you want a community like Ubuntu where everyone can be scornful and prepare lousy tricks, but always preserving the appearances (thanks to a mandatory broomstick), or a community like the Linux kernel, where people say frankly what they think, even if what they think is “I hope you were on crack while writing that” ? I know which one I choose. I may disagree with their technical development model, but at least they know that a software community is not a group of friends. And &lt;i&gt;that&lt;/i&gt; is a sign of maturity.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:21451</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/21451.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=21451"/>
    <title>Leather release GR</title>
    <published>2008-12-15T12:02:26Z</published>
    <updated>2008-12-15T12:02:59Z</updated>
    <content type="html">&lt;img src="http://malsain.org/~joss/catwomanoj.jpg" alt="CatwoManoj"&gt;&lt;br /&gt;&lt;br /&gt;Now you know what to do. &lt;br /&gt;&lt;br /&gt;&lt;i&gt;Hint: it starts with “Further” and ends with “Discussion”.&lt;/i&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:np237:21033</id>
    <link rel="alternate" type="text/html" href="http://np237.livejournal.com/21033.html"/>
    <link rel="self" type="text/xml" href="http://np237.livejournal.com/data/atom/?itemid=21033"/>
    <title>RubyGem is from Mars, apt-get is from Earth</title>
    <published>2008-12-09T11:47:34Z</published>
    <updated>2008-12-09T11:53:06Z</updated>
    <content type="html">&lt;p&gt;There is again some &lt;a href="http://stakeventures.com/articles/2008/12/04/rubygem-is-from-mars-aptget-is-from-venus"&gt;ongoing&lt;/a&gt; &lt;a href="http://gwolf.org/node/1872"&gt;debate&lt;/a&gt; about Ruy gems and how to integrate them cleanly into the operating system.&lt;/p&gt;

&lt;p&gt;Let’s put aside the fact such tools are useful on Windows and MacOS which don’t have decent packaging systems. This is not a reason to dictate stupid requirements for other operating systems. Still, even without that, gems, eggs and the like are great tools for development; tools that developers can’t work without today. They allow to easily setup a development environment with everything needed, at the latest versions. However they were not meant for integration and production environments, and will never be suitable for them. We’re living in another world indeed: a world where servers must be up 24/7, where security issues flood your inbox every day, where you need dozens of servers running the very same software. This world is the Earth.&lt;/p&gt;

&lt;p&gt;Python eggs and Ruby gems were designed for the same target audience and with similar requirements; as such, they share the same deficiencies when it comes to other audiences:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;They replace the operating system’s packaging tool. This is very nice to not wait for the packagers when you want the latest development version, but you lose track of what is actually installed. In production, you need to know exactly what’s installed and at what version. You also need to know what you will need to update in case of a security issue.&lt;/li&gt;
&lt;li&gt;They install packages automatically on the system. This is really the biggest WTF; there are some reasons to do that to begin with, but they are all wrong.&lt;/li&gt;
&lt;li&gt;They use a specific file format. This requirement comes mostly from the Windows world, and it really makes no sense on Unix. It makes it much harder to integrate complex applications using components in different languages.&lt;/li&gt;
&lt;li&gt;They ship all files at the same place, happily violating the FHS and making it even harder to integrate with other things.&lt;/li&gt;
&lt;/ol&gt;
 
&lt;p&gt;Python tools (setuptools and easy_install) have shifted their philosophy and brought a few small improvements which allow us to easily work around issues 1-3. These tools now include all you need to build a development environment in any  directory that will not have an impact on the system packaging, making a clear distinction between the two targets. Furthermore, the metadata is shipped separately and can safely be included in a distribution package. Similarly, modules will not be installed automatically on your system. I have yet to see such a move from Ruby developers.&lt;/p&gt;

&lt;p&gt;However, what we are still missing is something along the lines of &lt;a href="http://packages.debian.org/unstable/dh-make-perl"&gt;dh_make_perl&lt;/a&gt;: starting from a CPAN module, it will generate a clean and working Debian package in a few minutes. There have been some similar attempts for Python, but nothing as efficient. And I am certainly guilty of not having done something in this area, as one of the most knowledgeable of issues we encounter while packaging Python modules.&lt;/p&gt;

&lt;p&gt;As a note, I should add the underlying issue behind all of this is still the same: the &lt;a href="http://en.wikipedia.org/wiki/Not_Invented_Here"&gt;NIH syndrome&lt;/a&gt;. Developers are reinventing the wheel, engine and transmission. Which is not that bad per se, but by not looking at existing solutions for the problem of making a car move, they are inventing a square wheel, a steam-powered engine and a superconductor-powered magnetic transmission. For example, while trying to fix the 4th of items listed earlier – and they are really willing to fix it – and several more general issues, setuptools developers forgot to look at the existing solutions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;API versioning in &lt;tt&gt;/usr/include/&lt;i&gt;package&lt;/i&gt;-&lt;i&gt;X.Y&lt;/i&gt;&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;ABI versioning of libraries&lt;/li&gt;
&lt;li&gt;Build/install-time requirements gathering using an extensible format with pkg-config&lt;/li&gt;
&lt;li&gt;Automated generation of &lt;tt&gt;config.h&lt;/tt&gt; containing all system-specific macros (including paths), with autoconf&lt;/li&gt;
&lt;li&gt;The Mono &lt;a href="http://www.mono-project.com/Assemblies_and_the_GAC"&gt;Global assembly cache&lt;/a&gt; which solves some of the specific issues of interpreted languages&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Certainly, the existing tools are everything but perfect, and not necessarily suitable for Ruby and Python, but some of the design ideas behind them are clearly the good solutions to some of the issues of software development and integration. Adapting these ideas to radically different languages is going to take more time than just throwing other layers of &lt;a href="http://mail.python.org/pipermail/distutils-sig/2008-October/010317.html"&gt;symlink farms&lt;/a&gt;.&lt;/p&gt;</content>
  </entry>
</feed>
