Cloud Test Day tomorrow, and LinuxFest NorthWest this weekend

It's Test Day time again. Tomorrow (Thursday 2011-04-28) we have some cool cutting-edge stuff for you: it's a cloudy Test Day, as the Cloud SIG wants some help to test their coolest new stuff coming up in Fedora 15. There's two sub-events, one for BoxGrinder and one for Fedora on Amazon EC2 (assuming it's working!)

Boxgrinder aims to make it easy to create appliances (special-purpose OS installs, generally deployed on virtualized hosting services like EC2), and for Fedora 15 we have a feature for providing Boxgrinder packages to make it easy to create Fedora-based appliances. The BoxGrinder Test Day will focus on testing out these scripts and making sure the appliance creation process works as intended.

EC2 is Amazon's Elastic Compute Cloud, a service providing virtualized computing on a rental model, and for Fedora 15 we aim to provide polished working Fedora 15 images for use within EC2. The Test Day will focus on testing out these images and making sure they work.

It's a great opportunity to check out the future today, so please come along and help us make sure Fedora 15 is fully buzzword-compliant! The event will be taking place all day in #fedora-test-day on Freenode IRC (or you can use WebIRC if you want to get all cloudy about it). The Cloud SIG will be there to help out with testing, as will QA's own inimitable Tim Flink.

In this week's episode of Where's AdamW - well, right now I'm at my desk, eating a rather nice hunk of brie, recovering from Game 7 and getting ready for Game 1 tomorrow night (I have tickets, oh yes.) BUT, at 10:00 this Sunday - 2011-05-01 - I'll be in room DMC 130 at Bellingham Technical College, giving my talk "'It boots, ship it': Quality assurance in a fast-moving community project", the abstract for which I pulled out of my ass a couple of days ago and which I really ought to get around to writing some time before Saturday night. Mind you, I'm up against a live episode of the Linux Action Show and Larry Cafiero on user groups, so I confidently expect a turnout of zero, so maybe I'll just sleep off the inevitable (at any event attended by Jesse Keating andRobyn Bergeron) hangover and tell everyone I did a talk instead. No-one will know.

This will of course be at the awesome LinuxFest NorthWest, the Pacific Northwest's premiere community Linux conference - it's totally free and registration isn't required, so if you're in the region, just roll up to Bellingham Technical College (Google will get you there) this Saturday or Sunday and join us, it's a fun event and there's always interesting people there. There will be a Fedora booth where we'll be presenting Fedora 15 with GNOME 3 (while wearing full-body asbestos suits, naturally), so come along, it'll be fun times.

More home setup tinkering: out with the HTPC, in with the NAS and the media streamer

Vincent Danen's recent post on hacking the D-Link DNS-323 prompted me to finally go out and make a change to my home setup that I've had planned for a while.

For a long time I've used an HTPC system connected to my TV; it plays music and downloaded videos, which it stores on a RAID-5 array (of three 500GB disks) that it also shares with the rest of the network, thus also acting as a NAS. It runs Mandriva with Freevo.

It's always worked pretty well, but it's a bit of a maintenance burden since it's a full-fat PC running a full-fat distro, it looks kind of ugly the way we have the TV bench set up, and it uses a lot of power. So for a while I've been planning to separate out the NAS and media playing functions, and use different hardware to achieve them.

Today I went out and bought one of the aforementioned D-Link DNS-323s, a couple of 2TB hard disks (for the ridiculous price of $75 each - 4TB of disk for $150? The future is nuts!), and a Patriot Box Office media streamer. (I'd have gotten a WD TV Live, if only because the user community seems more active, but the store was out of stock). A media streamer is a little (seriously, it's tiny) box which connects to your TV and just plays media (audio and video); you can get them with various levels of features, and with or without built-in storage. The Patriot is cheap but does what I need: you can put a 2.5" hard disk into it (but I didn't want to - I wanted to have the NAS separate, and RAIDed) but it doesn't come with any storage, and it also doesn't have wireless networking, which I don't need. All I need it to do is connect via ethernet to a CIFS share (or UPnP, really, either works) and play any video I throw at it, and it has the necessary features for that and is nice and cheap.

To replace the last remaining feature of the HTPC - I have it hooked up to one of my HD cable boxes via Firewire and use it as a PVR with MythTV, which is actually pretty neat but again a bit of a pain to set up - I grabbed an eSATA hard disk enclosure. My other HD cable box works as a PVR if you attach an external hard disk to it; they'll sell you a rebadged WD disk for an inflated price but people have confirmed you can use most eSATA disks and enclosures and it'll work with them just fine. So once I have everything transferred from the HTPC to the new NAS, I'll put one of those 500GB disks in the eSATA enclosure and attach it to the HD box to get PVR functionality. This loses some flexibility compared to the MythTV / firewire setup - I can't transfer the files out or watch them anywhere else, and I can't set up recordings remotely (via MythWeb) any more. It's also far less cool. But it is a lot simpler, and good enough (we don't really use the PVR function that much anyway, mostly just for live sports when I'm away from home).

Unusually, and frankly alarmingly and unnervingly, everything so far has gone perfectly to plan. Nothing is the wrong shape or size or format or missing any cables. The Box Office plugged straight into the TV and receiver, powered on, was pretty easy to set up (once I figured out how to set it to HD output), and was able to browse the UPnP servers on my network right away, and play all the files I tried. Logitech has a remote control definition for the Box Office for my Harmony remote - I haven't checked yet, but Google results indicate it should work fine. The 2TB disks slid straight into the 323 - you don't even need a screwdriver. It powered right up, got happily onto the network and presented a very nice admin interface, offered to set up the two disks as a RAID-1 array and actually did so with no trouble, and immediately started sharing them via CIFS. My desktop, the HTPC and the Box Office immediately saw the share and happily accessed it, and the streamer happily plays a file from it. The NFS server add-on provided on the D-Link website (!!) for the 323 installed fine and works fine, and gives somewhat better performance than CIFS, so I'm now busy copying everything from the HTPC over to the 323 via an NFS mount. It'll take a while as there's nearly 1TB of stuff, but once it's finished, I'm basically done. The biggest problem I have is that I can't find a way to set the streamer to default to always showing subtitles, but that's just pathetically small beans. I've come to expect three days of frustration every time I change my home setup - this kind of seamless just-workiness isn't acceptable, damnit.

Seriously, though, I'm very impressed with the 323 in particular: its web interface is very nice, and D-Link seem to support it really actively, and they even have a whole little GPL sub-section on the product page for it on their website. Well played them. The Patriot is a bit more yum-cha but it certainly works, also seems to be pretty actively updated, and the price is definitely right. I'm feeling good about the change, so far, and it should save quite a lot of power and space and look much neater. Also I now have 2TB of space, not a measly single terabyte any more!

Final GNOME 3 Test Day today!

One more reminder, everyone - today is the final GNOME 3 Test Day! Grab a live image from the Test Day page, boot it up and get to testing. Join us in IRC to discuss your results and get any pointers you need. Use WebIRC if you're not an IRC aficionado. The more testing we can get, the better it'll help us make the final Fedora 15 release with its shiny GNOME 3.0 desktop, so please come out and help - thanks!

Fedora 15 Beta is out!

Yes, we had a smooth F15 Beta release today and you can get Fedora 15 Beta now. Remember to read up on the Common Bugs!

I think (he pontificated modestly) we did a pretty good job on this one: the Beta is pretty solid for a Beta and does a nice job of showcasing the awesome GNOME 3 (and no that ain't (just) the party line, I find myself with a really itchy trigger finger to update my F14 laptop to F15, and sad that I can't do it because then I'd have nowhere to test F14 updates). Technically the Beta isn't quite GNOME 3.0 - due to the freeze, most of the final 3.0 release packages didn't make it into the Beta, and it's really somewhere between the last GNOME 3.0 Beta and GNOME 3.0 Final. But what's in there still works pretty nicely, and to get the real true GNOME 3.0 release, you can just install the Beta and do an update.

And remember, it's the final GNOME 3.0 Test Day on Thursday! I have now uploaded the live images for the event, barring any last-minute changes requested by the desktop team, and those really do have the full final GNOME 3.0 on them (plus some post-3.0 updates and fixes, and a new kernel build with some Nouveau fixes). They're also rather less quirky than the ones for the last Test Day, and also they're on time. Way to not suck, me! If you're busy on Thursday, you can go ahead and get the images and run the tests and file your results already. I'll be checking in on the IRC channel from time to time tomorrow, and then on Thursday there should be a bunch of QA and Desktop team members around all day to help out with testing. Be there or be...somewhere else! But somewhere else is definitely less cool. Unless, you know, you're at a playoff game or something. That'd be way cooler. Priorities!

Final GNOME 3 Test Day this Thursday!

Over the last few months, the Fedora project has run a series of test events for the major new GNOME 3 release. The third and final GNOME 3 Test Day is coming up this Thursday, 2011-04-21. Now the final GNOME 3.0 release has been made, this event will focus on testing its integration into the upcoming Fedora 15 release and exposing any remaining bugs that can be fixed with minor updates. This is a great opportunity to test out the final GNOME 3.0 code on a late pre-release Fedora 15 base, and help the Fedora and GNOME teams to produce a great release. There will be live images available to make sure you can test easily and without the need for a permanent installation - there's no need to be a Fedora user to help out. There are comprehensive testing instructions on the Wiki page, and assistance from the Fedora QA and desktop teams in #fedora-test-day on Freenode IRC throughout the day (WebIRC link for those without an IRC client).

Please come out to the event and help us test - the more testing we get, the better the GNOME 3.0 series and Fedora 15 will be! For those who were at the first two events - we should not have a scramble to produce live images this time, as we made sure not to schedule the event during an upstream release week. Live images should be available well ahead of time, and testing with an installed and updated Fedora 15 pre-release is also perfectly valid.

The continuing state of contact + calendar synchronization suck

I've written about this before and now I'm doing it again! Fun for all the family.

Since that post I've continued trying to find a reliable way to share my contacts and calendar between my phone and multiple computers, and still haven't found one yet. Mostly this is down to my phone being an N900, sadly enough.

It's kind of ironic given that everyone has a hard-on for the cloud these days, but it seems weirdly hard to get many people to understand the concept that you might want your contacts to be the same no matter whether you're using your phone or your computer at the moment.

Microsoft gets this. Being Microsoft they got it and then implemented it in the most terrible, terrible way possible; anyone who's actually used ActiveSync (or tried to write a third-party implementation of it - pity the poor SyncE developers) knows what I mean, but they at least got the basic idea. They have a mechanism via which you can make your Windows PC and your Windows Mobile phone (and your Exchange-based company, if you run one) sync up your contacts and calendar, and it more or less works, no matter how crappily it's architected. So they get a C.

Google gets this. Being Google they have an internal identity crisis, so they more or less use existing open protocols but try as hard as they can to pretend they don't. Google Calendar seems to support CalDAV. Kinda. More or less. As far as I can tell, it's kind of believed that Android syncs with Google Calendar using CalDAV. Kinda. More or less. (As far as I can tell, there's no CardDAV support for contacts; there's apparently some kind of mechanism besides ActiveSync, as Evolution can use a Google contact list, but I don't know the protocol it uses). But what you get on Android is a contact / calendar stack that can sync with Google Calendar but not with any other CalDAV-supporting server / service; there's no provision to just enter server information. (There are third-party implementations of generic CalDAV / GroupDAV support available). So if you run your systems or business on Google and use Android phones, you can keep your stuff in sync easily; but only if you're happy for Google to be looking after all that confidential information for you. (Android also has a pretty good ActiveSync implementation, so bonus marks for interoperability there). Google gets a B: marks for a reasonably well-designed and working system, marks knocked off for wanting to own all your data and seemingly intentionally pushing the open protocol on which their system is based way into the background. The third-party clients on Android seemed to have issues when I tried them, but I haven't tried for a bit.

Apple gets this, and actually has generic CalDAV and CardDAV support (CalDAV as of iOS 3, and CardDAV as of iOS 4). They also support ActiveSync. Their server side also has CalDAV and CardDAV support. So, uh...wow. Through gritted teeth, an A for Apple.

Maemo and Meego...really don't get this. Maemo's whole synchronization story is based around SyncEvolution, which is a phrase that's probably enough to strike fear into the hearts of most Maemo users already. From what I can tell, sadly, so is Meego's.

What's the problem with this? The problem with this is two-fold.

One, SyncEvolution is the wrong approach. It's a synchronization tool.

Two, it doesn't fucking work.

To take point 1 first: synchronization is the 2001 way of looking at this whole issue. It's back in the stone age. It's how Microsoft's approach works, and that's always a good sign you're Doing It Rong. ActiveSync is better in that it does actually work, though. Synchronization means that every system in the loop (the 'synchronization group', or whatever) has its own private, somewhat-independent store of the data in question, and every so often you get them all to compare notes and try to resolve their differences so everyone's private, somewhat-independent store is temporarily in the same state.

This is not Web 2.0. This is not The Cloud. This is not any buzzword you care to name. In this case, the buzzwords actually happen to be on to something. By far the better way to do this is the good ol' client-server approach, or what we currently like to refer to as 'storing data in the cloud'. Each system in the loop should only have local copies of the data as a cache so they're not entirely useless when offline. The proper approach is the Google approach: there's one 'true copy' of the data and it lives on a central server. Clients retrieve that data, and send changes to the server immediately (or as soon as you get online). It's hardly something new.

Meego, in a crowning moment of WTF, seems to be going out of its way to screw this up: they have implemented support for the right protocols - CalDAV and CardDAV...as backends for SyncEvolution.

Excuse me while I go and bash my head against my desk for a while. It's just the wrong design. It makes no damn sense to crowbar support for a client/server protocol into a synchronization app...especially when Meego's messaging stack is based on evolution-data-server in the first place. Which, in case you didn't know, has CalDAV and CardDAV (WebDAV) support already. By far the better design would simply be to allow you to create client accounts for remote calendars and address books in Meego's calendar / address book UI, just as you can in Evolution on the desktop.

I mean, let's really hammer this point home: imagine if Meego didn't have a UI for setting up an IMAP email account. Instead, it just had an email app which accessed an unchangeable mbox account on your phone, and you had to run some separate application which you had to fire up every so often to 'synchronize' the mbox file with an IMAP account; it'd go out and take a look at the IMAP account, figure out which mails had shown up since the last time the local mbox file was synchronized, check if read/unread/replied states had changed, pull down all the data, and update the local mbox file...push local changes (mails sent, statuses changed and so on) off to the IMAP server...then log out again.

Would anyone think that was a remotely sane system? I rather doubt it. So why does it seem at all sane to expect everyone to do it for their calendar and address book?

Here's the bug report where this seems to have been decided, but it doesn't look like it was really looked at from an overall perspective: the reporter asks whether this should be done in Dates, but pohly doesn't seem to consider it, and no other Meego developer replies.

Whew. So, Point 2. That one's a lot simpler...and it's just what it says on the tin. I haven't managed to make SyncEvolution sync reliably with anything. Its flakiness in trying to sync with Google is notorious; it seems like it will do an initial sync, but pretty much stop working the instant you actually change any data and then try to sync. I've tried syncing it with various open source groupware server suites using SyncML, notably including egroupware and Horde, and can't get it to fly properly with any of them. Notably, with egroupware, it will happily run a sync with good-looking logs as often as you want, and then no data will actually show up in egroupware. With Horde, it wants to do a slow-sync every time, which results in tasks and contacts being duplicated every time - rendering it useless.

I've spent hours trying to fix these problems and got nowhere. I don't know if the ultimate bug is in the client or the server in each case. I just know it doesn't damn well work, and it makes me tired and pissy - no-one's paying me to do this, I just want my damn data to be consistent and available. I am un-motivated to spend too much time trying to fix it, too, for the reasons given in Point 1: synchronization is fundamentally Doing It Rong. It's a concept from the days of Palm Pilots which had no radios and which you plugged into a computer twice a day to pick up the latest information, it makes absolutely no sense in the days of cellphones with wifi radios and always-on mobile broadband data connections.

Can't we just get proper damn support for CalDAV and CardDAV and/or GroupDAV into everything, but most especially into Maemo / Meego (I'd love to say Android as well, but you know Google. Here's a thread where Yahoo shows up with a CalDAV and CardDAV implementation for Android, all ready to go. Last word? From the Yahoo submitter..."Any update here? Haven't heard anything yet. "), in a sensible way? It'd make life so much easier, and it's the Right Way to do things.

Whoosh: and Virtualization Test Day, and impending Fedora 15 Beta

So I looked up at the clock today and discovered it was 3pm and I'd spent the last five hours in TV Tropes. That site is crack, I tells ya. The link to the impossible quiz didn't help either. Last time I got stuck in Tropeland it cost me a day plus the time it took to read the entire Order Of The Stick archives. "My last breath...is also my mintiest..."

(Notice how I have helpfully hyperlinked those for you. SHARE MY PAIN!)

It's just two days till Virtualization Test Day, where our awesome virtualization team, starring Justin Forbes, will be our guides as we test the various virtualization features of Fedora 15, including shiny SPICE support in virt-manager. Virtualization is a key component of any distribution nowadays, and the virtualization team always put on a smoothly run event, so please come along and help us test!

You can also look forward to the Fedora 15 Beta landing, almost certainly, next Tuesday, 2011-04-19. We have the Go/No-Go meeting tomorrow, but it's looking good at the moment. Thanks to the freezes desired by those freedom-hating bastards in QA, though, it doesn't technically include the Made Of Easy GNOME 3 - mostly it has the final beta, with a few packages updated to final release state. But if you install the Beta and do an update, you'll have all the official release bits of GNOME 3, plus a few post-release fixes (already). Shiny, shiny GNOME 3. F15 is shaping up to be a really exciting release, and I'm really happy with how stable we've managed to keep it so far despite the huge changes that are landing - many thanks to the Anaconda team, the desktop team, and Lennart Poettering for their help and consideration with the release processes.

Politically correct

Handy translation of the day: "Don't expect me to be politically correct" can be more usefully read as "I'm about to be a twat, and I wish to forestall criticism of it".

(I also like Gary Younge's way of putting it: "political correctness has come to mean whatever its opponents want it to, so long as they don't like it.")

Abrt Test Day on Thursday, and Beta validation starting

A couple more announcements!

This Thursday, 2011-03-31, will be ABRT Test Day. As well as checking that ABRT (Fedora's automated crash report tool) is working as expected for Fedora 15, we'll be testing out a big new feature, the retrace server. This allows you to submit crash reports to a remote server which will generate the backtrace - avoiding the need for you to download and install often large debuginfo packages in order to submit reports. Please come along and help us test this exciting new feature! As always, we'll be in #fedora-test-day on Freenode IRC all day long. If you don’t know how to use IRC, no problem – you can use WebIRC. If you click that link it will open the IRC channel (which is like a chat room) in a web page in any good browser. The testing is easy and you can do a lot of it from a live image. There'll be QA and abrt team members in IRC all day to help out with testing.

Also, today we get the ball rolling on Fedora 15 Beta validation, with the arrival of Beta TC1 (traditional installer images only up so far, live images coming soon). If you have time, please grab the TC1 images and help out with the installation and desktop validation testing. Thanks!