Search Results: "tar"

7 May 2010

Christoph Berg: Clamav segfaults

If you are still using clamav on etch, you might want to upgrade now:
# /etc/init.d/clamav-daemon start  
Starting ClamAV daemon: clamd LibClamAV Warning: ***********************************************************
LibClamAV Warning: ***  This version of the ClamAV engine is outdated.     ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
/etc/init.d/clamav-daemon: line 240:  5221 Segmentation fault      start-stop-daemon --start -o -c $User --exec $DAEMON
 failed!
Rolling back to yesterday's daily.cld fixes the issue, at least for the segfault.

David Welton: Better Software 2010

Florence, Italy, is an extremely popular tourist destination, and for a good reason: it's absolutely full of beautiful architecture and famous art. It apparently gets more than a million tourists a year. So it felt kind of odd for me, as a foreigner, to hole up in a conference talking about computers, software and business within a stone's throw of this. It was well worth it though. "Better Software" was a very interesting conference, and extremely professional. One anecdote: since there were so many people signed up, they did the lunch and coffee breaks in another facility nearby, about a block away. However, the weather wasn't very nice, so the organizers rounded up a bunch of umbrellas, and put them near the door with a sign saying "take one if you need it", so that people could stay dry while going back and forth. Of course, having grown up in Oregon, I don't trust the weather much, and carry an umbrella, but it was a really nice gesture and attention to detail. I expected it to be good, but it ended up being a really great event. Some memorable bits: I suppose that, given the huge success of the event this year, they may look for a larger facility for future events, but I hope it doesn't end up in some soulless place in the suburbs; even if I didn't do any sightseeing, I liked being in the city center. While the organizers would be more than capable of putting on a more international event, I enjoyed the focus on Italy, and the cool things people are doing here, and I feel it also contributed some to the positive atmosphere. It's one thing to have some guy come in from abroad and tell you something, another to see someone like Peldi talk about how he did what he did. And what with all the problems Italy has right now, some "positive energy" was more than welcome. Like I said, Italy has a lot of really talented people; the problems lie elsewhere. A big thanks to the organizers and everyone who came, and I hope to see you there next year.

6 May 2010

Debian News: Brief Updates: Chromium browser, KDE and GNOME updates, DebConf sponsoring and Ben NanoNote

Petter Reinholdtsen: Parallellizing the boot in Debian Squeeze - ready for wider testing

These days, the init.d script dependencies in Squeeze are quite complete, so complete that it is actually possible to run all the init.d scripts in parallell based on these dependencies. If you want to test your Squeeze system, make sure dependency based boot sequencing is enabled, and add this line to /etc/default/rcS:
CONCURRENCY=makefile
That is it. It will cause sysv-rc to use the startpar tool to run scripts in parallel using the dependency information stored in /etc/init.d/.depend.boot, /etc/init.d/.depend.start and /etc/init.d/.depend.stop to order the scripts. Startpar is configured to try to start the kdm and gdm scripts as early as possible, and will start the facilities required by kdm or gdm as early as possible to make this happen. Give it a try, and see if you like the result. If some services fail to start properly, it is most likely because they have incomplete init.d script dependencies in their startup script (or some of their dependent scripts have incomplete dependencies). Report bugs and get the package maintainers to fix it. :) Running scripts in parallel could be the default in Debian when we manage to get the init.d script dependencies complete and correct. I expect we will get there in Squeeze+1, if we get manage to test and fix the remaining issues. If you report any problems with dependencies in init.d scripts to the BTS, please usertag the report to get it to show up at the list of usertagged bugs related to this.

Adrian von Bidder: Inglourious Basterds

Whew. Thank God I did download that one and not spend money on it. If you're trying to poke fun (or be satirical) at the Nazis, do it like Chaplin, or do it like Monty Python. Inglourious Basterds is just not funny and hasn't got enough substance to be satire. It's just fooling around by people with too big an ego and too much money. I'm extremely disappointed with Tarantino here; I liked his other movies and had expected quite a bit more here. I'm not surprised to see Brad Pitt in such a movie (he's not a bad actor, but I've always had the impression that he's not picky about the roles he's playing), and Uma Thurman gets bonus points for not appearing :-) It just occurs to me that as well as completely missing the mark with the plot here, Tarantino also utterly fails at assembling a gripping soundtrack. Coincidence? If we ignore all this, the film is at least well made, and most of the actors show a good performance (I particularly like Christoph Waltz being the complete asshole.) (On second thought: now, he didn't miss the mark with the plot, but with the way he's been filming it. Use the same plot but do it as a slapstick comedy, I think it could have been really funny. Use the same basic plot but take it seriously, it might have been a real thrilling war movie. Etc. So the plot is not to blame.)

Ian Wienand: How much slower is cross compiling to your own host?

The usual case for cross-compiling is that your target is so woefully slow and under-powered that you would be insane to do anything else. However, sometimes for one of the best reasons of all, "historical reasons", you might ship a 64-bit product but support building on 32-bit hosts, and thus cross-compile even on a very fast architecture like x86. How much does this cost, even though almost everyone is running the 32-bit cross-compiler on a modern 64-bit machine? To test, I got a a 32-bit cross and a 64-bit native x86_64 compiler and toolchain; in this case based on gcc-4.1.2 and binutils 2.17. I then did a allyesconfig build of Linux 2.6.33 x86_64 kernel 3 times using the cross compilier toolchain and then native one. The results (in seconds):
32-bit64-bit
60905684
60505616
60635652
average
60675650
So, all up, ~7% less by building your 64-bit code on a 64-bit machine with a 32-bit cross-compiler.

Andrew Pollock: [life] Crazy few days

Here's why: Zoe's birth Zoe Dianne Pollock was born at 12:30pm PDT, at Lucile Packard Children's Hospital, via Caesarean-section. Her birth weight was 2920 grams (6 lbs, 7 oz) and she's 49.5 centimetres (19.5 inches) long. As for why she was born 11 days early than her previously scheduled early arrival... Monday morning started off like any other normal Monday morning. I got up at 6am to go to the gym with Dan. I got home at around 8am. I asked Sarah if she'd felt any baby movement, and she said she hadn't. Even after some jiggling and a cold glass of orange juice, there was nothing. Not wanting a repeat performance of what happened last time, we wasted no time in heading to Labour and Delivery to get things checked out. When we were nearly at the hospital, Sarah felt some small movement, so that was a relief. When we got to the hospital, they performed a non-stress test as they have previously. They spent a good couple of hours with Sarah hooked up to the monitor, and then the on-call obstetrician asked us how we'd feel about just having the baby today. I asked if there was anything particularly concerning about the NST, and the OB said that she (the baby) was doing marvelously now, but was "less than marvelous" when we first came in. I haven't had a chance since to ask her if there was anything untoward observed during the delivery. Anyway, she (the on call OB) said that rather than have Sarah get stressed out for the following 11 days, she'd talked with our regular OB, and they felt that since she was at 37 weeks (and considered "full term") that it was okay to deliver at that point. At the end of the conversation, it was upgraded to a recommendation, rather than an option. So so much for an attempt at VBAC. We got to the hospital at around 9am, and I think they/we made the decision to deliver at about 10:30am. I had enough time to race home and grab the camera and race back again, and the next thing I knew we were all in the operating room, and Zoe was being delivered. It was amazing getting to see the "extraction". They dropped down the sheet that was blocking our view of the action right at the end, and I got to see (and photograph) Zoe's head and whole body being pulled out. She gave out a little cry, and Sarah and I totally lost it with relief. Things were a bit of a blur after that. I got to come over and meet Zoe while they were weighing her and measuring her, and then they bundled her up and let me take her back to Sarah's head-end on the operating table, so Sarah could get a look at her. Sarah handled this C-section better than last time. She didn't get any nausea, but she still got the itching and involuntary shivering, courtesy of the morphine. While they were still putting Sarah's insides back in, Zoe and I went to the nursery, where they put her under a heater for a little while to warm her up a bit. Then it was back to the recovery room to have a proper meeting with Sarah. Once Sarah was ready to move to the maternity ward, Zoe and I again returned to the nursery, where she got her first bath, had her umbilical cord trimmed some more, and her anti-theft device fitted to her umbilical cord clamp. Then it was off to the maternity ward. I think we were all in the maternity ward by 3pm. After a little while, we managed to get bumped to a private room, which was a lot better than the shared room (the other bed was vacant, but just having more space made a big difference), and that's where we've been ever since. I've stayed each night on the roll away bed, helping out with diaper (sorry Aussies, I've been here too long, and dealt with too many babies, I never think of them as "nappies" any more) changes, and burping and other miscellaneous tasks. Monday night was okay. Tuesday was a bit rough. Sarah didn't get any sleep on Monday night, and the anaesthesia totally wore off and she was in a fair bit of pain. She slept better on Tuesday night, and today, the breastfeeding has been going well, and the post-operative pain is well and truly under control. She's lost a bit of weight since delivery (as is to be expected). She was down to 5 lbs 14 oz (2664 grams) at last night's weigh-in, and at tonight's weigh-in she came in at 5 lbs 13 oz (2636 grams). So the weight loss is starting to plateau. We're already supplementing the breastfeeding with syringes of colostrum/milk that Sarah's pumped previously, so I hope the weight loss will have turned around by tomorrow night's weigh-in. The breastfeeding in general is going pretty well as of today. Mum and bub have both mastered the latch. I think it's just a matter of Sarah's milk coming in now. I've brought forward my 7 weeks paternity leave (an excellent benefit Google offers) to start as of Zoe's delivery. Sarah's Mum arrives on the 19th for 4 weeks, which will be great. We expect to be discharged from hospital on Friday. Luckily we were pretty much all ready for this happening a little bit earlier. We had our last baby classes on the weekend. The nursery is ready enough to bring a baby home to, so aside from Sarah's Mum being disappointed that Zoe's going to be a bit older when she first gets to see her, we're all good. The WiFi in the hospital is great. We've already Skyped with both grandmothers and they've had a chance to see Zoe. We've had a steady trickle of visitors, and the whole baby routine is making the time go pretty quickly.

5 May 2010

MJ Ray: General Election 2010

You may have noticed that the UK votes in a General Election tomorrow. It looks like the closest for at least 18 years and maybe more. Happily, all the major parties are saying nice things about cooperatives, but I wonder how much of that will translate into policies that are practical for co-ops like mine. Our national body Cooperatives UK has gathered the commitments from 18 manifestos and summarised them in a PDF. The first 7 pages deal with the five biggest English parties. One striking thing is how many gaps there are in the Labour, LibDem and UKIP policies, while it s not really clear to me that the Conservatives or LibDems really understand cooperatives. The Conservatives seem to suggest council-controlled co-ops (which wouldn t normally be co-ops if they lack autonomy), while the LibDems mention employee trusts more often than worker co-ops. I m sulking at Labour after several recent schemes that subsidised private competitors and excluded worker co-ops and I don t believe Labour can win in Weston-super-Mare. That would leave the Greens, who probably can t win but do seem to get it, except that there s no Green candidate where I live because he stood aside and recommended the LibDems (as I understand it). Drat. So, only a few hours to go before the start of the ballot and I m still an undecided voter.

Gunnar Wolf: Post-apocalyptic times

Pestilence, War, Famine, and Death, the mythological Four Horsemen of the Apocalypse. Mexico's de facto president, Felipe Calder n, once again showed his involuntary aptitude for deep political analysis: On Monday, on a State visit to Germany, he declared Mexico has faced the Five Horsemen of the Apocalypse (second source, in English). I agree: One year ago, we were facing a health emergency, the AH1N1 epidemic, hence pestilence. Since he took power in December 2006, the president's main action has been the war on drugs, hence war. The country was the worst performing Latin American country in 2009, with our economy falling 6.5%, more than any other country, and prices have been really on the rise, hence famine. Finally, death... official numbers state that there have been over 22000 deaths in the "war on drugs" And merrily he stated that only 10% of that were civilians. Whatever that meant... But... What about the fifth? Who is he? A plausible hypothesis is offered by cartoonist El Fisg n in today's cartoon in La Jornada:
We don't know how he got here, but he is the most effective one Now... However good El Fisg n's analysis might be... Lets not get distracted with silly details. Hern ndez, another of La Jornada's great cartoonists, shows the hidden meaning:
We are over the apocalypse!
Does that mean we are facing the Final Judgement?
The coming of the five horsemen of apocalypse can only mean... It is time for the Final Judgement and the end of time!
AttachmentSize
hernandez_20100505.jpg16.6 KB
fisgon_20100505.jpg28.11 KB

Ritesh Raj Sarraf: Debian Developer

Finally, I am proud to be officially part of one of the most successful and well organized Free/Open project, the Debian project.I would like to thank everyone who have worked with me. I would also like to thank my Advocate Giridhar and my AM Pablo. It was and is really awesome working with you guys.

Alastair McKinstry: EGU 2010 - Monday afternoon

The EGU conference is packed, and this blog isn't anything remotely like real-time, but some interesting talks came up on Monday evening : Simon Katterhorn gave a neat presentarion on icy moon tectonics, specifically on Europa and Enceladus. He showed the cycloid tracks on Europa, and how these are probably generated by tidally-driven ice tectonics. The presence of these of different ages shows the existence of a global ocean underneath, and the decoupled ice shell on top. More on this can be seen in Greenbergs book on Europa; but he also showed further follow-on work on Enceladus. Enceladus is small enough that people thought it had cooled and could not support an ocean, explaining the geysers and plumes by "small reservoirs". He shows instead that the 'tiger stripes' at the south pole are also tidally-created stresses, and moreover older generations of stripes, at an angle to the current ones, are also present: the plumes occur at the intersections. This shows free rotation of the ice shell and almost certainly an ocean. As to how to heat it: tidal heating is the primary candidate. I'm looking forward to Tidal heating and orbital evolution of Enceladus on Thursday. Tags , , ,

4 May 2010

Erich Schubert: Facebook tracking users via "like" function.

Facebook recently launched the "Like" function, which basically can be embedded into arbitrary web sites. Naively, it does two things:
  1. Provide a "Like" button for sharing the web site
  2. Show you how many other users like the web site
Sounds good, doesn't it?But now reconsider: even when you don't use the "Like" function, facebook is in fact notified of which web sites you visit!.Encouraging you to "share" content with friends is the hanger for this function. This is what makes web masters install it on their sites: they expect to get some extra traffic from your friends, so they just add it.But whether you like it or not, it basically allows Facebook to track your complete web viewing habits. And it's the target web site that opts in, not the user! Combined with all the personal information Facebook already has on you, this is a major privacy concern. Combining this information might even be illegal in some countries (but probably not in the US where Facebook lives, privacy unfortunately has a low role here).The best workaround currently is to blacklist Facebooks "Like" function using some kind of AdBlock, for example using this element filter:
IFRAME[src^="http://www.facebook.com/plugins/like.php"]
But in general, we should try to make this kind of data aggregation illegal without explicit consent and force Facebook to make this an opt-in feature. Political work needed here ...P.S.: Make sure to check if your AdBlock actually blocks and not just hides. As far as I can tell, WebKit Adblock, including Chromes, only hide ads. Firefoxs AdblockPlus seems to be more powerful.P.P.S.: yes I've read the claim that Facebook doesn't track. No wait, all they basically said was that they are not going to announce at F8 they will be selling web surfing behaviour based ads to their customers. They actually did NOT state (or guarantee) they will NOT use data mining on this data. Just that you probably will not be able to buy eyeballs based on rules such as "has visited/liked disney.com" ...P.P.P.S.: I've been told that facebook.com/widgets/like.php also needs to be blocked, since some sites use this URI scheme. And of course, Privoxy and similar privacy-increasing proxies are a useful addition, too.

Alastair McKinstry: EGU 2010 - Monday

I'm at the European Geosciences Union (EGU) General Assembly, 2010, the biggest gethering of European geoscientists, in Vienna, May 2-7. This is my first time here and its huge: over 9000 participants. Merely finding the talks and posters is a challenge (they supply a USB stick with the abstracts and agendas as they can't print them all! The first day I spent mostly at the exoplanet stream (and putting up my own poster). Some neat stuff on show: summaries by Borucki on Keplers findings (on the Hot Jupiters they found :" these things glow like a blast furnace; forget life"). He points out that when they look for Earth sized planets, radial velocity confirmation would take 1000s of hours on 10M telescopes - so it won't happen. hmm. Steve Unwin on SIM: neat astrometric mission for planet hunting and galaxy measurement. A targeted mission list, unlike the Gaia survey; to fly in 2016 if the Decadal survey says yes. 20% of time available under the general observer program, so get proposals ready ? Nestest poster idea: Anomalous night-time temps on Mars, Gonzales et al.. Finding hot spots on Arsia Mons, a volcano. Explained by air rising from 100km long lava tubes. We've seen pit entrances to caves on Mars with HiRISE, etc. here they model heat output from a pit entrace/exit and imply 100km caves. Oh to go exploring... Tinetti points out that we lack proper spectra, both experimental and theoretical, for high temperature and pressure gases such as methane, etc. Hmm, I know a group in Galway that might be able to help ... Helmut Lammer raised an interesting point at the poster session, that many groups ignore the stellar wind when looking at H2 atmospheres around exoplanets. Theis grossly inflates the apparent H2 atmosphere. Without taking this into acount it would be easy to mistake H2 detections with a Neptune-like atmosphere. He points to a 1.7M UV telescope that the Russians are planning to launch that would help do UV measurements when Hubble is gone. Lena Noack gave a talk on convection in tidally-locked planets (with related poster Low-lid formation on Super-Earths and implications for the habitability of Super-Earths and Sub-Earths). They argue that no covection can be expected in the mantle, and hence no geodynamo or magnetosphere. This could be a problem for holding an atmosphere. Time to check for planetary magnetic fields. Break out the polarimeter ? Oh, and it seems that That Damned Volcano is closing Irish airspace on Tuesday. Might be an idea to go to the meeting about it. Hope it clears by Friday ... Tags ,

Alastair McKinstry: EGU 2010 - Monday

I'm at the European Geosciences Union (EGU) General Assembly, 2010, the biggest gethering of European geoscientists, in Vienna, May 2-7. This is my first time here and its huge: over 9000 participants. Merely finding the talks and posters is a challenge (they supply a USB stick with the abstracts and agendas as they can't print them all! The first day I spent mostly at the exoplanet stream (and putting up my own poster). Some neat stuff on show: summaries by Borucki on Keplers findings (on the Hot Jupiters they found :" these things glow like a blast furnace; forget life"). He points out that when they look for Earth sized planets, radial velocity confirmation would take 1000s of hours on 10M telescopes - so it won't happen. hmm. Steve Unwin on SIM: neat astrometric mission for planet hunting and galaxy measurement. A targeted mission list, unlike the Gaia survey; to fly in 2016 if the Decadal survey says yes. 20% of time available under the general observer program, so get proposals ready ? Nestest poster idea: Anomalous night-time temps on Mars, Gonzales et al.. Finding hot spots on Arsia Mons, a volcano. Explained by air rising from 100km long lava tubes. We've seen pit entrances to caves on Mars with HiRISE, etc. here they model heat output from a pit entrace/exit and imply 100km caves. Oh to go exploring... Tinetti points out that we lack proper spectra, both experimental and theoretical, for high temperature and pressure gases such as methane, etc. Hmm, I know a group in Galway that might be able to help ... Helmut Lammer raised an interesting point at the poster session, that many groups ignore the stellar wind when looking at H2 atmospheres around exoplanets. Theis grossly inflates the apparent H2 atmosphere. Without taking this into acount it would be easy to mistake H2 detections with a Neptune-like atmosphere. He points to a 1.7M UV telescope that the Russians are planning to launch that would help do UV measurements when Hubble is gone. Lena Noack gave a talk on convection in tidally-locked planets (with related poster Low-lid formation on Super-Earths and implications for the habitability of Super-Earths and Sub-Earths). They argue that no covection can be expected in the mantle, and hence no geodynamo or magnetosphere. This could be a problem for holding an atmosphere. Time to check for planetary magnetic fields. Break out the polarimeter ? Oh, and it seems that That Damned Volcano is closing Irish airspace on Tuesday. Might be an idea to go to the meeting about it. Hope it clears by Friday ... Tags ,

Raphael Geissert: Debconf10 needs your help!

We are getting closer and closer to this year's Debconf. Debconf is a very important event for the Debian project, where developers, all sorts of contributors, and interested people can meet in person to learn and work together.

As important as it is, it needs your help!

That's right: it needs help from potential sponsors and donors to help cover the costs implied by this event.
If you are interested in becoming a sponsor please contact sponsors [at] debconf.org, or if you want to make a donation please visit the debconf10 donations page.

Remember that Debian is developed by volunteers and this yearly event is unique and very important.

If you use Debian please consider becoming a sponsor or a donor of this year's Debconf!

Marco Túlio Gontijo e Silva: Google Summer of Code

It s kind of late now to talk about this, but I was accepted as a Student in the Google Summer of Code student. My project is about making the binaries produced by GHC faster by improving its Garbage Collector algorithm. I ll implement the techniques described in the Immix Garbage Collector. It ll be great to work on GHC, specially in the RTS, and to produce code that can contribute to a wide number of users, like the users of darcs, XMonad, pandoc and other softwares built with GHC. I ll be blogging here about the status of my project. Coding starts at May 24th, until then I ll read the GHC source code documentation and experimenting with performance measurements using Criterion in a system with no daemons enabled. Good Summer to everyone.

3 May 2010

Matthew Garrett: PCI power management problems

I've previously written about some of the implementation details of runtime PCI power management. One of the key aspects for PCI devices is that the PME line on the device be able to generate a wakeup event. Unfortunately, it turns out that since Windows makes no use of this functionality at present, some vendors have started failing to wire this up. This is problematic because the device itself still announces PME support and will even raise a PME signal when it gets woken up - but it's pretty much screaming as hard as it can and nobody's listening because somebody's replaced the air with cheese.

Bother, etc.

The obvious question is what to do next. We could poll all the PCI devices every second or so to see if there's a PME status register that's been set. This would be reasonably cheap (we're going to wake up at least once a second on x86 anyway, so it makes no real difference to power consumption) but would introduce obvious latency in the wakeup path. This would be fine for certain types of situation (you're probably not going to be too sad if your SD reader takes a second longer to notice a card insertion) but not others (if an sdio wireless card generates a wakeup interrupt then we really ought to do something about it in a more sensible timeframe). A second is to force users to pass a boottime argument to enable this at all. That kind of sucks.

The third possibility is limited to a subset of hardware, but does allow the introduction of some kind of elegance into what would otherwise be one of those nightmarish scenarios that makes me consider taking up farming instead. If we can trigger a PME ourselves then we can test whether the line is connected. This doesn't appear to be possible on SDHCI but the spec for firewire makes it look like we can do it there - one of the interrupt sources is the port enable/disable register, and we can hit toggle that ourselves. I haven't actually tested this yet, but if it works that would let us make this determination.

It's depressing that doing anything interesting with power management is still heavily determined by what Microsoft have bothered to implement - to the extent that on some machines (hello, Thinkpads) there are no GPE methods at all for PME signals and you don't get runtime power management at all. The only thing that saves us is that (a) it's pretty hard to be able to screw up stuff that's already all glued into one chip package, so integrated stuff like USB should be fine anyway, and (b) PCIe does this as part of the normal traffic stream so there's no way to get that wrong. Unless you're still missing the GPE methods for the signals (hello, Thinkpads) in which case you get nothing unless the native PCIe signalling works. I suspect that we can always force that, so there's some hope yet.

In summary, then: dispassionate.

Russell Coker: Flash, Apple, and Linux

Steve Jobs has published an interesting article about Flash [1]. He criticises Flash for being proprietary, this seems a little hypocritical coming from Apple (who s the only competitor for Microsoft in terms of being the most proprietary computer company) but is in fact correct. Steve advocates HTML5 which is a better technical solution to a lot of the things that Flash does. He claims that Apple users aren t missing out on much, but I think that sites such as Physics Games [2] demonstrate the benefits of Flash. I think that Apple s attack on Flash is generally a good thing. HTML5 web sites will work everywhere which will be a good incentive for web designers to fix their sites. I also think that we want to deprecate it, but as it s unfortunately popular it s useful to have tools such as GNASH to use Flash based web sites with free software. Microsoft has belatedly tried to compete with flash, but it s Silverlight system and the free but patent encumbered Linux equivalent Moonlight have very little content to play and will probably disappear soon. As an aside the relentless determination of GNOME people to force the MONO project (including Moonlight) on it s users convinced me to remove GNOME from all systems that I run. OS News has a good analysis of the MPEG-LA patents [3] which are designed to prevent anyone making any commercial use of H.264 which includes putting such videos on sites that contain Google advertising! These patent terms are so horrible that they want to control video streams that were ever encoded with them, so you can t even transcode a H.264 stream to an open format without potentially having the scum at MPEG-LA going after you. This is worth noting when examining Apple s actions, they support MPEG patents and therefore seem happy to do anything that reduces the freedom of their customers. Apple s 1984 commercial has been proven to be a lie, it s Apple that wants to control our freedom. Charles Stross makes some good points about the issues related to Apple and Flash [4]. He believes that it s all part of an Apple push to cloud computing and that Apple wants to own all our data at the back-end while providing a relatively reliable front-end (IE without all the anti-virus nonsense that is needed on the MS-Windows platform. Cloud computing is a good thing and I can t wait for the Linux support for it to improve, I support a number of relatives who run Linux and it would be a lot easier for me if they could have the primary storage for everything be on the cloud so that I can do central backups of user data and they can use their own data while visiting each other. I think that a network filesystem that is similar in concept to offline-IMAP would be a really good thing, I know that there are some filesystems such as AFS and CODA that are designed for wide area network use with client-side caching but as far as I am aware they aren t designed for the type of operation that offline/caching IMAP supports. Matt Brubeck has given a good status report of the work porting Firefox to Android [5]. He notes that the next version of Fennec (mobile Firefox) will have Electrolysis the Firefox one process per tab feature that was first implemented in Google Chrome [6]. I think that the development of Fennec and the one process per tab feature are both great developments. Matt also says One of my personal goals is to make Firefox compatible with more mobile sites, and to give web developers the tools and information they need to make their sites work great in mobile Firefox. I ll write much more about this in future articles , that sounds great, I look forward to the results of his coding and to reading his blog posts about it!

David Welton: Mochiweb proto-deb and hacking

I had some time over the weekend to play a bit with Mochiweb. It's a very nice little bit of work, but kind of strange for an open source project. I think both things come from the fact that it was built to do some very specific things in a business, and once those goals were accomplished, that suited the owner just fine. There is no nice/fancy project home page, no links to documentation, and in general, all of the stuff you're supposed to do for a successful open source project. The code, however, is good, fast, and pretty easy to deal with. Anyway, I wanted to use it for a thing or two I'm working on, so I created some .deb packaging for it. It's been ages since I've done that (indeed, I officially retired from Debian), so it's probably missing something, but I thought I'd throw it out there for people to have a look. The git repository is here: http://github.com/davidw/mochiweb - my changes live in the 'deb' branch. The big thing I've tried to do is make it so that if you have several mochiweb projects on the same machine, they'll all be started/stopped by the init scripts, if you so choose. What you do is add a file with the path to the application to the /etc/mochiweb/apps directory, and when you do /etc/init.d/mochiweb start, it will start all of those. At stop time, it will run the stop.sh script, which shuts things down. It runs things as the user that owns the start.sh script, unless it's root, in which case it simply doesn't run. The thing that's missing right now is a way to get the thing to write logs somewhere, and I'm not quite sure how to do that, so here's hoping someone will write in with a suggestion. The .deb file I generated ought to be attached to this post, although there are no guarantees that I'll keep it up to date.

2 May 2010

Dominique Dumont: Improve config file upgrades Ep 01

Hello The GSoC project Krzysztof and I are working aims to facilitate configuration upgrade during package upgrades. Most of the cases, this upgrade should not require any input from the user, even if the user had previously customized his configuration file. Currently configuration upgrade may ask questions to the user which may be hard to answer for most non-technical users. For more details see PackageConfigUpgrade on Debian wiki. (If you are not familiar with upgrade issues, you might want to read this page.) At the 2 extremes of upgrade tools, we have: Each tool has its own advantages and drawbacks. On the plus side of diff3 tools : On the other hand, here are the issues with diff3 based tools: For more details on diff3 issues, see Benjamin Pierce s paper (thanks to David Lutterkort from Augeas for the info) On the other end of the spectrum, Config::Model pros are: But, Config::Model main problem is: diff3 tools is lackluster for users. While Config::Model puts too much strain on packagers because it requires configuration models where all parameters are defined and declared in the model. For fast evolving projects, this can be a huge recurrent task (been there, done that for Xorg) . (Well, this recurrent task is a problem until doc, implementation and config model can be extracted from a single meta-description But I digress, this may be a project for GSoC 2011 :-p ) So, this GSoC project (for 2010) aims to find a compromise between these 2 extreme cases. On Config::Model, I ve always had a drawer statement whenever I was asked why Config::Model does not handle unknown parameter:
a configuration file cannot be validated if an unknown parameter can t be distinguished from a user typo.
This stance is fine for casual user interaction on a stable system: an unknown parameter is most likely an error. And the user must be warned of his error as soon as possible. For a stable distro release, packagers should have the time to provide complete models, so basing upgrade on complete models should be possible (famous last words ?). On the other hand, a lot of configuration upgrades will be done on unstable systems where software evolve quite fast, where models will likely fall behind software evolutions. Another shorcoming of my drawer statement is that it assumes user interaction where erroneous input is more likely. In case of configuration upgrades, there should be no user interaction. And we can assume that the config file to be upgraded was used (and thus validated) by the old version of the software. So unknown parameters should be tolerated and managed as best as possible. Now, the big question is: how ? In all attempts I ve seen in managing upgrades that goes beyond diff3 tools, the configuration is stored as structured data. Sometimes this structure can be infered from the configuration file syntax (shell vars, INI files, YAML, XML), sometimes not (sshd config file). In the latter case, some structural knowledge must be built in the upgrade tool. Currently, Config::Model is designed to bring a complete description of the structure and semantics of a configuration file. This is perceived as bringing too much structural and semantic knowledge ( too semantic ). So the maintenance cost is perceived as too important. That may be right or wrong, but that does not matter. Perception is more important here. So, let s figure out a way to reduce the amount of work required to perform upgrades (you may want to read a little bit more on configuration model creation before going on ) One possibility would be to support configuration models that allow unknown leaves in nodes. Such a model would provide a kind of fallback leaf description. Something like: this parameter is unknown, let s assume it s a simple string value . Let s consider sshd_config example to see how such a behavior would pan out for some upgrade scenarios. sshd model is made of 2 main classes:
- Sshd
- SshdMatchElement The second one contains all parameters allowed in a Match class (in fact, Match parameter is the only one in sshd that defines a new hierarchical level. All other parameters are simple leaves). Now let s consider typical upgrade scenarios from old version (with old models) to a more modern version. Let s assume that the model is lagging behind and the model does not follow sshd evolutions. So Config::Model will face 3 upgrade cases (extracted from sshd config history):
  1. Unexpected parameter that are actually simple leaf parameters. E.g. introduction of ClientAliveInterval.
  2. Obsolete parameters that should be migrated. E.g KeepAlive is renamed into TCPKeepAlive
  3. New structural parameters (introduction of Match element)
So what would happen with a model allowing unknown parameters but lacking specific instructions for these upgrades:
  1. ClientAliveInterval value would be kept. :-)
  2. KeepAlive would be kept as is.TCPKeepAlive would also be kept. No migration is performed, but the configuration would be good. As long as sshd supports the old parameter, we re good. :-/
  3. Without knowledge of the structure brought by Match parameters, Config::Model would consider that parameter in Match block would duplicate parameters in the main block and remove the duplicate. User data may be lost. :-(
So, there s not silver bullet. Let s resume what we ve learnt: Next step is to figure out what would happen if the same strategy is applied to other types of configuration files. But that will be for another blog. All the best

Next.

Previous.