Monday, 5 December 2011

Stalk^W Following designs, the easy way

If you want to follow all the new designs from the GNOME Design team, including work-in-progress mockups, gathering of relevant art, etc. be sure to subscribe yourself to the pages that interest you in the various sections of the GNOME Wiki.

A nice trick is using our Wiki's notification, with regex support. Head onto your notification settings page, and add those lines to the "Subscribed wiki pages":

GnomeLive:Design*
GnomeLive:GnomeShell/Design*
GnomeLive:GnomeOS/Design*

Sunday, 4 December 2011

WebKitGTK+ Hackfest: Day 5

Yesterday was our sponsored dinner, at a very nice vegetarian place, followed by some cinema discussions in a bar where the toilets are hidden behind mirrored walls (most strange).

Still, quite a few happenings in code land:


The hackfest is drawing to a close, and I'll take this opportunity to thank our very kind sponsors for flights, accomodation and even feeding us in the office so we didn't have to stop hacking for long.









Also a big thank you to Igalia for providing us with hacking beer in the evenings (left-overs from Igalia's 10th anniversary party, a happy coincidence).

Many thanks to Xan, Juanjo and Alex for the hackfest organisation, and the personal chauffeur service, and my most heartfelt thanks to Juanjo for his infinite patience to our tourist needs (such as showing us the Torre de Hércules on a windy December afternoon).

Vegas Baby!

Before: No video, because no Flash, and no MP4 support


After: Video, through Totem's Vegas plugin

Totem's new Vegas browser plugin provides you with a way to watch Flash based videos, without using Flash, using libquvi's growing collection of supported sites.

Code is available from GNOME git this instant. Be sure to pass --enable-vegas-plugin=yes to compile the plugin.

Saturday, 3 December 2011

WebKitGTK+ Hackfest: Day 4

The crema de ojuro took effect. While the effects simmered down, code fixing was still in full flow.


  • Philippe finished landing the fullscreen fixes for the <video>
  • Xan and Claudio started fixing GNOME 3.4 Epiphany design bugs (on the road towards the Web app design)
  • Alex, Martin, Joone and Nayan all looked into Accelerated Compositing. They all owe you, dear reader, blog posts full of nitty gritty details.
  • Jon didn't spend the day debugging bizarre browsers crashes
  • Wingo punched the air as he figured out a tricky memory allocation issue. He also listened to the Thundercats theme tune, in a loop
  • Gustavo and Dan figured out a design for multipart/x-mixed-replace support, as used by some streaming IP cameras, and Gustavo started the implementation
  • Nayan showed legendary patience waiting for tourists outside a haberdashery
  • Dan committed a number of libsoup related cleanups in WebKitGTK+, including a very impressive minus 200 lines cleanup.

WebKitGTK+ Hackfest: Day 3

Another incredible day of hacks, and UI design.


And despite the crema de ojuro, hacking carries on at the week-end. Join us in #webkit-gtk-hackfest on GIMPNet.

Thursday, 1 December 2011

WebKitGTK+ Hackfest: Day 2

After a late evening yesterday, the hackfest started a bit slower, but started picking up pace again with a big ticket item, the WebKit2 GTK+ API discussion. This was the destination for a lot of the WebKitGTK+ hackers, leaving us outsiders, well, outside. The discussion isn't quite finished.

This lead us onto a little lunchtime kick-about. The arrange 6 v. 6 game turned into a 5 v. 4 before getting to the ground, and finish as a 3 v. 4 when two of our most jet-lagged/backbroke hackers dropped out.

And then onto a lunch. And another late evening.
  • Philippe fixed more bugs in WebKitGTK+'s fullscreen video playback mode
  • Bob uploaded a new draft of his WebKitGTK+ cookbook
  • Gustavo was playing Street Fighter whilst increasing the size of his farm on Facebook (in WebApp mode!)
  • And the new buildbot is up, running, and churning through test suites in a loop, as fast as the hackers can add new code.

Wednesday, 30 November 2011

WebKitGTK+ Hackfest: Day 1, Afternoon

After num-num tapas for lunch (and some chocolatey cake), we got back to the agenda, with Jon presenting the design for the Web application, successor (in spirit, and perhaps in code) to Epiphany.


  • Andy did the initial work on adding new language features to JavaScriptCore (let and const, as used heavily in gnome-shell)
  • Martin and Gustavo worked on a way to automate running the WebKitGTK tests with test fonts, and are working on making all the tests automated, and reproduceable
  • Philippe fixed fullscreen support in the HTML5 YouTube player
  • Dan fixed the broken security status in Epiphany
  • Carlos worked on the WebKit2 support for windowed plugins, and the WebKit side of favicons support
  • Philippe, Martin and yours truly discussed sharing of fullscreen media controls (UI and behaviour) between WebKitGTK, Totem and Sushi, as well as a way to make fullscreening smoother.
I hear they didn't finish all the beers for Igalia's 10th anniversary party...

WebKitGTK+ Hackfest: Day 1, morning

After landing in (not so sunny) A Coruña yesterday, we started bright and early today with the WebKitGTK+ hackfest agenda.

We've got most of the topics pinned, as listed on the wiki. If you have more topics to add to the discussion, feel free to drop by #webkit-gtk-hackfest on GIMPNet IRC, and try to drum up interest in somebody championing your topic.

It looks like we could get some pretty cool demos done by the end of this week!

Monday, 7 November 2011

ObexFTP in GNOME, (non-)update

If you've tried to use ObexFTP browsing (browsing files on mobile phones over Bluetooth) in GNOME in recent times, and didn't get a good experience from it (crashes, or very unreliable browsing), those problems are known, and due to the architecture used to implement the functionality.

If you want to help make ObexFTP browsing good again, please try to convince one of your coder friends to help port the existing code to use the "gobex" library that the obexd D-Bus service uses.

Unless somebody steps up in the GNOME 3.4 timeframe, I will disable the access to the functionality in gnome-bluetooth. The brokenness makes us look very bad, and the files are still available through other (cabled) means in most cases.

Tuesday, 18 October 2011

Bluetooth panel merged

The Bluetooth panel was the last bad citizen in getting merged into gnome-control-center itself. It's now been integrated into gnome-control-center itself, using a very cleaned up libgnome-bluetooth.

Ready for GNOME 3.4! Please report any breakage.

Friday, 16 September 2011

OMG! I haz designed a bug fix!

In GNOME 3, we removed an option which got GNOME users hot under the collar (and gave the opportunity to the ones who weren't something to troll about): we removed the configuration option to select what happens when you close your laptop lid.

We started digging, and found out that the main reason for people wanting this feature was so that they could go from a table to another in the coffee shop, from their desk to the meeting room in the office, or a table to the next in the library, with the laptop lid closed, and your internet connection still on-going.

In that case, what's really needed is a way to disable suspending when you're moving the laptop. But having to dig in the settings would take too long anyway. And, apart from a number of tethered ones, users would live happily without that ability, so we wouldn't be adding this in the gnome-shell UI itself.

Let's add the button in a separate application. A single button isn't too interesting though. Let's make this more interesting!

Office Runner!

Testimonials

  • “this is the best thing ever”
  • “the most creative way I've heard of to solve a power management bug in a while”
  • “I expect people to spill their coffees over this”
What now?

The code is available in GNOME git, and we're just waiting to knock a few TODO items, and get a UI  review before releasing the first version. Patches welcome. Enjoy!

Wednesday, 24 August 2011

COSCUP 2011: Taipei

Just got back from Taipei, where I attended COSCUP, alongside troublemaker Xan López, both of us having been invited to represent GNOME.

Pre-COSCUP

After a fairly smooth but long flight (followed by a shorter flight from Hong-Kong), I landed in Taipei International Airport where I met Max, holding a card with a GNOME foot and my name on it, at the arrivals hall. Max then drove me to the hotel, or rather, he was my driver to the hotel, as he insisted that I ride in the back seat rather than up front alongside him (I think you'll see a pattern emerging soon).

Our very nice and modern hotel (with “North-European furniture”, as the brochure said, and it did indeed have Ikea branded glasses in the bathroom) was a stone's throw away from the Nangang Software Park MRT (metro) station.

I only saw those on TV when I was a kid.
I proceeded to catch up on my sleep, after a quick look at the TV channels (Hackers!).

Garbage!


The next morning, thanks to Max' helpful cue cards, I managed to get myself a network adapter and cable out of  Guanghua Digital Plaza. This place must be an absolute dream for people who like making their own computers, though the newness of the hardware is dependent on the use. No Bluetooth 4.0 dongles, but the latest in anime shaped USB sticks.


Blade Runner, day time.
After being reminded on the plane quite how important business cards were, I asked the hotel reception whether they could help me get this sorted. After 10 minutes of calls by the enormously helpful receptionist, Max arrived from another airport run with Xan. Ten more minutes of phone calls, Max drove me to the print shop, where they live designed my business cards. It took a good half hour. At which point I should mention that during that whole time Max's wife was in the car, double-parked not very far from the shop. And that Max managed to arrange for the business cards to arrive at the hotel.



Snooze, mail, and we got ready for the speaker's dinner. In the lobby, we met David Cuartielles, the co-founder of the Arduino project, and Pofeng, one of the organisers. Pofeng proceeded to organise for my business cards to be delivered to the dinner we were just going to.


Dinner, num-num, early night.


COSCUP


I'll cut short on the presentations, as most of the slides and videos should find their ways online soon. Jonathan Corbet made a nice feature out of my presentation (which was followed by Aaron Seigo's Plasma active on tablets talk).


Demo time!
Side note, if you cannot access the Linux Weekly News article, you can wait a week, or give to Friends of GNOME, and get a free LWN subscription.


The talk was well received, and a few hardware makers are interested in our approach.


Xan's presentation was also well received, and we started discussing the idea of Epiphany's web applications integration using standardised metadata information, as Firefox also needs such integration.


I would advise future organisers of GUADECs and associated to talk to the organisers of COSCUP in terms of getting staff on the grounds, online social interactions (including COSCUP Cheese), or even the mobile apps for the conference.


Social and touring


Xan hacking.

David hacking.
We tried our best to mingle amongst the conversations during the conference, but it's soon fairly obvious that the Westerners end up together, if only because we were all tourists. Which is how I ended up spending a fair bit of time with the Beijing-based German Ollo, Berlin-based Frenchman Paul Rouget (who's just bad at Mario), Malmö-based Spaniard David, Living-out-of-a-suitcase Xan, and Taipei-based Englishman James.


We spent some time trying to find veggie food for Xan in the night markets, amongst the game arcades, Angry Birds T-Shirts, and potent smell of soy sauce (no, not the same one you have in your cupboard).


The day after the end of the conference, the speakers were invited to a tour of the city. We went up Taipei 101 (where my mild acrophobia made me feel queasy looking down the emergency stairwell, 90 stories to the bottom), and down it for some gadgets shopping, and the most awesomest dumplings in the existence of the world at Din Tai Fung.


This was followed by a visit of the National Palace Museum (where you could see the most amazing work on ivory, and jade, real craftsmanship), and the change of guard at Martyr's Shrine.


Tourist information


The working hours are mostly European ones, but they're not in sync with the sun. So getting out of a dark building at around 10 AM means that you'll be in the noon sun, and nearly blinded. Bring sunglasses.


It's really hot and humid (BBC Weather mentioned 36 Celsius, with 86% humidity for last Monday), bring light clothes. Women can buy a sun-umbrella locally. Bring a napkin/cloth to wipe your face.


It's part of culture to exchange gifts amongst friends. Even if you don't have any friends there yet, the people are so nice that you are bound to feel that they deserve those gifts anyway. Bring gifts, especially foodstuff.


Don't look like a plonker by not bringing business cards to any business meeting (like I did). You can probably get them printed in Taipei (expect to pay around 200NT for 200 business cards, eg. around 5£). Bring name cards (as they call them there).


You're in the Republic of China, not the communist People's Republic Of China.


And read the metro map properly...


Thanks


My wholehearted thanks to all the COSCUP organisers, and the conference itself, for inviting us to Taipei, taking great care of us, and sponsoring our accommodation, to the well-connected Emily Chen (who everyone seemed to know) who proposed me for a talk, Max and his wife, for being the best of hosts (and for the Stephen Chow DVDs!), and the GNOME Foundation for sponsoring my flight there.


I can now say I've been to Asia, crossing a bridge in Istanbul doesn't really count :)

Monday, 15 August 2011

Desktop Summit all done

Like a large number of Desktop Summit attendees, I made my way back home shortly after the end of the conference. I will spare you the details of my schedule, and will share a few things of note.

Hackfests

As I attended one of those recently, I did a presentation about them for the Advisory Board on Tuesday. The things to come out of the discussions that followed is that we would want more reporting in some cases, even post-hackfest if the network access isn't good enough, or there are loose items (filing bugs, long-term goals definitions, etc.).

This help our AdBoard members, the Friends of GNOME contributors, the community, as well as the hackfest sponsors, know how the hackfest helped the project.

Seeing as we were in a shared event with KDE, I would also like to note that if you want to work on lower levels of the stack, such as hardware enablement, or features that can be shared as standards through FreeDesktop.org, talk to the board about organising a Hackfest.

Presentations

My presentation about tablets (and not sofas) went past. I'll know for next time that antihistamines don't make for a clear mind, but if you were present and I missed a particular subject you were interested in, don't hesitate to contact me.

During the conference, Nohemi fixed a number of the bugs I reported through her mentor, and my tablet can now be booted with the on-screen keyboard enabled by default.

I also prepared a presentation for the Advisory Board meeting that ties in to the above subjects, which generated a fair bit of discussion, but this will require reporting separately.

Miscellaneous

  • They have high towers and holes in Berlin
  • I'm a sucker for a bratwurst, and had the best kebab of my life
  • Museum Island is impressive
  • I was in the winning team at FreeFA, though people say we had too many Brazilian full-backs on our team.
  • Kay knows how to make a rose from a napkin
See you all next time in A Coruña!

Update: No dots in "A Coruña".

Thursday, 23 June 2011

Pretty, oh so pretty

There was a tiny problem with the Bluetooth panel has it was implemented in GNOME 3. There wasn't a way to rename the Bluetooth adapter. Well, there was a way, but it wasn't implemented, but it was there, in our minds.

We started by adding support to the Info panel to set a machine's pretty hostname, as implemented by systemd. Looks simple enough.


The next step was to make bluetoothd know about this file, and use it to name Bluetooth adapters, instead of crappy hostnames. And voila.


Implemented as it should be.

If you have applications where using a device's name (as opposed to the user's name) makes sense, please look into using the machine's pretty hostname.

If you want to test all this, packages will soon be trickling into Fedora 16 (aka Rawhide). All the patches are upstream, though the bluez patches are still pending.

Friday, 17 June 2011

IM, Contacts and Social Hackfest, final day

Today was a shorter day, with many of the attendees taking their leave before the week-end (and a pizza lunch turning into kitchen discussions).

Today focused on brainstorming around a Conversation app, to eventually replace Empathy. There are still many problems to be solved before that jump can be made though, so don't expect it to happen for GNOME 3.2.

The other topic today was a reusable contact selector widget, to be used in applications that offer sharing to contacts, like Tiffany's on-going GSoC for document sharing in Evince.

No cats were harmed during the making of this hackfest.

Wednesday, 15 June 2011

IM, Contacts and Social Hackfest, day four

Day four. People had bad dreams last night due to the huge amount of cheese ingested. Will need to seek counselling. Travis' knee doesn't hurt too much anymore.

Today we discussed the interaction of the “presence chooser” in the Shell's user menu with IM statuses, especially given that we soon hope to make it possible to answer chats without launching an “empathy” binary. A number of options were discussed, and the best one now lives in a bug. (Note that both reports are incredibly detailed, thanks to Will Thompson's amazing screenwriting skills).

Morten then presented his current plan for integration of contacts within the Shell. More details are available on the wiki, and most of the problems and potential solutions were discussed at a high-rate, given the well-known problem space.

We missed out on some interesting changes to account creation (as well as edition) in Empathy/Telepathy yesterday.

IM, Contacts and Social Hackfest, day three

Day three, and the walls are closing in.

Some of our hosts mention they have “work to do” and hide away from light, behind shades.

Alex Larsson showed up, bright and early in the Collabora offices, and most of the day has been spent working on a Folks hit list [1] with Travis and Philip as tech leads. Integration of GnuPG contacts metadata (can I encrypt e-mails for that person?), as well as more general IM integration in apps (slide-show sharing for example) was also mentioned, as we hope to share most of this infrastructure.

[1]: Travis' knee was on the hit list, got whacked against a table leg.

Tuesday, 14 June 2011

IM, Contacts and Social Hackfest, day two

Day two, in the Collabora house, Rob Bradford graced us with his presence, on his birthday, and today started discussing integration of gnome-online-accounts into Empathy/Telepathy[1], libsocialweb and interactions with various accounts systems.

Most of the rest of the pre-lunch hacking was about setting ourselves up for hacking on the above. The afternoon was spent with much of the same, trying to get more documentation for things like Google's Chat authentication, including a draft patch to gnome-online-accounts, Empathy/Mission Control work for this support, and tons of related bug fixes.

The Telepathy hackers also discussed text handling in Telepathy (with the goal of making the specification clearer, avoid problems of "missed" messages, etc.).

[1]: https://bugzilla.gnome.org/show_bug.cgi?id=652546 and https://bugzilla.gnome.org/show_bug.cgi?id=652544

IM, Contacts and Social Hackfest, the sponsors

Many thanks to Intel, Red Hat, and the GNOME Foundation for sponsoring participants at the hackfest, and heaps of thanks to Collabora who are contributing a lot of participants to this hackfest, their offices, their coffee machine, and getting us pizza and Nutella dough balls yesterday. Num Num!

Monday, 13 June 2011

IM, Contacts and Social Hackfest, day one

In Cambridge (the proper one, in Cambridgeshire), at the Collabora offices, for the first day of our IM, Contacts and Social Hackfest.

Today, we:
  • discussed end-user problems with Telepathy and Empathy's gnome-shell integration (and started the specifications necessary to fixing some of those bugs) (everyone for the problems listing, Danni and Guillaume for the start of bug fixing)
  • started working on integrating gnome-keyring dialogues into the Shell (Stef Walter)
  • fixed libfolks bugs (Philip), and discussed a potential problem API problem in the folks to evolution-data-server synchronisation code (which will be used in the Contacts API) (Travis, Raul, Bastien)
  • packaged up gnome-online-accounts for Fedora (Bastien)
  • worked on better high-level tp-glib support for file transfers (Morten)
  • HMAC support in glib (Stef Walter)
Tomorrow we'll have Rob Bradford joining us, and probably start talking about GNOME Online Accounts integration with libsocialweb, as a way to kickstart its use all across the desktop.