Planet ALUG

Syndicate content
Planet ALUG - http://planet.alug.org.uk/
Updated: 1 hour 45 min ago

Andrew Savory: Twitter Weekly Updates for 2012-02-04

Sat, 04/02/2012 - 13:15

Powered by Twitter Tools

Categories: LUG Community Blogs

MJ Ray: Two Campaigns, One Spot

Thu, 02/02/2012 - 20:08

Sometimes two campaigns that I care about a lot pick the same day to hold an awareness-raising drive. It happened again on Tuesday.

The one I took part in was advertising the Stop ACTA London Protest on Sat 11 Feb. The Anti-Counterfeiting Trade Agreement (#ACTA) is a plurilateral international agreement on enforcement of so-called “intellectual property rights” – copyrights, trademarks and so on. It’ll have major implications for freedom of expression, access to culture and privacy. It will also harm international trade and stifle cooperation. (More background at EDRI or a fairly large AJE page – thanks to Occupy Bristol for the AJE link.)

So the one I didn’t support at the time was the Move Your Money UK launch day. That’s a great idea too, suggesting that if we, the 99%, are actually unhappy with the big banks and their titled leaders, we should move as much as possible out of those banks and into financial institutions that we control. As you might expect for someone whose first memory of mutuals is a trust account at the local building society, I support that too. I still have building society accounts, as well as banking with the co-op bank and recently joining my local credit union. I’ve moved my money. Why don’t you?

I didn’t try to support both campaigns simultaneously on social networks because I thought it would reduce the number of people who saw my message. I backed the ACTA protest because a lot of my networks were already discussing Move Your Money and I thought Stop ACTA would benefit more. Was that the right decision? Who can tell? What would you have done?

Categories: LUG Community Blogs

Andrew Savory: Predictive Text, part 2

Thu, 02/02/2012 - 10:54

Not even a month after my predictions for the year, and the first of them has failed. I said:

No IPO for Facebook: This could go either way. My bet is it will be very late 2012 or early 2013

They said:

Facebook unveils $5bn stock market flotation plans

Hrmph. Thanks Zuckerberg, you impatient hasty prediction-killer!

Categories: LUG Community Blogs

Andrew Savory: Backlight

Sat, 28/01/2012 - 01:12

If you use a computer for any amount of time, you may find some backlighting for your computer screen is beneficial.

I couldn’t find any medical research that says one way or another whether it’s a good thing or not, though I did find one article which states “one of the recommended tips for reducing computer eye strain is to control the screen glare caused by both indoor and outdoor lighting” (Reduce eye fatigue by backlighting your monitor).

I thought I’d give it a try. Via hackaday I read about the awesome Ikea Dioder light strips; the white 4-piece strips are now £19.99, reduced from £40, which makes them a bit of a bargain. So I snapped some up on a recent trip to Ikea, and so far I’m impressed.

Here’s my laptop screen with and without the backlight. I stuck the backlight to the edge of the desk behind the laptop:

And here’s my monitor with the backlight:

And here’s the LED strips stuck on the back of the monitor:

The LEDs are low power. They don’t get warm, and come with fairly long cables. You can either run them serially or have them on individual spurs from the main plug.

So far I’m preferring them to normal halogen or tungsten desk lights. The light is whiter, which is somehow more pleasant. And my eyes definitely feel happier when I’m working at night.

Categories: LUG Community Blogs

Andrew Savory: Juice

Fri, 27/01/2012 - 09:40

This week has been a mini detox, with copious juices. Here’s the recipes for a couple of them, from Sainsbury’s magazine. These make enough for one glass. Throw the ingredients in a juicer, or apparently you can put them in a liquidiser with 300ml water and then strain well.

Apple and Carrot Detox Speeder

  • ¼ white cabbage
  • 3-4 carrots
  • 1 small apple
  • 5cm root ginger, peeled
Super-charged Spring Cleaner

  • 2 carrots
  • 1 beetroot, peeled
  • 5cm root ginger, peeled
  • 1 apple
  • 3 broccoli florets
  • Juice of ½ lemon

Alternatively you can just chuck a handful of whatever sounds good into the juicer. This morning’s was an arbitrary amount of carrots and apple, with a chunk of ginger for extra kick.

Enjoy!

Categories: LUG Community Blogs

MJ Ray: Phones, Privacy and Co-ops

Thu, 26/01/2012 - 05:26

And now a slightly longer than usual rant: The problem with the o2 network disclosing mobile browsers’ phone numbers that I repeated 2 days ago (and it appeared on our co-op website) snowballed yesterday to the point that it was on the short bulletins from ITN, BBC, IRN… and probably many more. And then o2 fixed it. Good!

The reply claims that it’s only since 10th January which is rather at odds with other claims that it has been happening since at least March 2010 in some situations.

I started buying from o2 in December. I was using Three, but their network where I stay in Norfolk isn’t reliable and you can’t just buy a device in a shop for The Phone Co-op. The dongle from o2 is a recent Huawei USB device that just worked in debian and was fairly easy for me to get working in Ubuntu. There’s space in it for a memory card, so maybe I could boot from it… but that’s an idea for later.

The o2 deal is OK but not great, and the included wifi is nowhere near as good as it looked: when it says it includes “BT Openzone” that doesn’t include any of the “BT Openzone-H” hotspots that are much more common. You’re only allowed to register one device for wifi, so no using your phone, tablet and laptop at different times!

I can’t believe it’s legal to advertise that as “unlimited wifi”, but o2 is still a better offer than access to “BT Openzone-H” hotspots at £39/month (yes, that’s the price for wifi-only…).

Ultimately, I think the problem is that there’s a rubbish choice of mobile (wifi or 3G) internet access providers in the UK. It’s a completely and utterly failed market, so you need to use Virtual Private Networks and similar tricks to protect yourself from the dysfunctional networks. My VPN meant my mobile number was safe: how about yours?

As luck would have it, I had already proposed a resolution about protecting customer privacy to The Phone Co-op (affiliate link) for our AGM on Saturday 4 February (if you’re a member, let me know). We were trying to find a compromise wording and I don’t think this little o2 scandal has hurt my proposal at all!

At least the phone co-op’s mobile service is based on Orange’s network, which wasn’t affected. How does your network perform? There’s an Internet Service Provider evilness test which might tell you.

Categories: LUG Community Blogs

Andrew Savory: Tethered to o2

Tue, 24/01/2012 - 15:10

I’m on a train tomorrow, and thought it was a good opportunity to use my phone as a wifi hotspot.

This works flawlessly with the Samsung Wave 3 (though the GUI to turn it on is a bit suboptimal). It turns out it’s not so simple with the iPhone – because the network operators appear to have “upgraded” the experience for iPhone users.

On an iPhone you turn on Personal Hotspot by going to Settings, then General, then Network. You get a straightforward-looking button “Set Up Personal Hotspot”, like so:

Unfortunately, when I click on it, I get a prompt to visit my network operator’s website, at http://www.o2.co.uk/iphonehelp/modem:

Fortunately there’s a button “Go to Website”. Unfortunately, when you click on it, this is what you get:

That small text says “File not found“.

I opened the website in my desktop browser, and it redirects to http://service.o2.co.uk/IQ/SRVS/CGI-BIN/WEBCGI.EXE?New,Kb=Companion,question=ref(User):str(Mobile),T=guruCase,VARSET_COBJID=11820,Problem=Obj(11820) (that’s a nice URL). The page is basically a collection of FAQs, but rather surprisingly the first FAQ is not “How do I set up tethering?”:

While I was on that page, I got prompted to use o2′s online support chat, which seemed like a shortcut to solve the problem. I was connected to Guru Hayley, and encouraged to ask her anything. Turns out anything does not mean “how do I set up tethering?”:

“Our system isn’t working” is the new “my dog ate my homework”.

Ok, so reading through the FAQs a bit more it looks like I need an “Internet Tethering bolt-on”. According to the “My tariff & Bolt Ons” page on o2′s website, I already have “iPhone Web Bolt On (Unlimited data access in the UK on your iPhone)” and “Unlimited Wifi for iPhone SIMO (Unlimited Wi-Fi access on your iPhone at over 7,500 Wi-Fi hotspots from The Cloud or BT Openzone in the UK)“. Leaving aside whether it should be “Wifi” or “Wi-Fi” (doesn’t matter but at least be consistent), neither of these sound like “iPhone Internet Tethering”, so let’s have a look at the other bolt ons I can add to my account:

None of those sound like “iPhone Internet Tethering” either.

So if I want internet tethering on my iPhone it looks like I need to email o2 and wait 24 hours, or call them up at 5p a minute (probably to be told to call back when their system is working).

Or I could just stick my SIM back in the Samsung Wave 3 when I need tethering, and skip the “Bolt-On”. Which option seems easier, cheaper, and more likely to work in the time available – and less offensive to a customer who’s just wasted 30 minutes on what should be a perfectly simple task?

Perhaps I’ll just read a book on the train tomorrow…

Categories: LUG Community Blogs

Andrew Savory: Out for delivery?

Mon, 23/01/2012 - 12:06

It feels like my Amazon order has been in transit for ages. It was dispatched over 40 years ago and I’m still waiting …

Categories: LUG Community Blogs

Jonathan McDowell: I want you to see my storage automagically

Sun, 22/01/2012 - 23:57

For my day job I build storage systems. A lot of what I do at present involves caring a lot about how different OSes deal with things like new LUNs being presented from a SCSI target, or errors along a subset of the available paths to a device.

It will come as no surprise to you to discover that they all suck (for values of all equal to Linux, Solaris, Windows and VMWare). New LUNs are particularly annoying. I'm in the situation that creation and removal of a LUN is exceptionally easy.

Hmmm. Maybe I need to back up here a bit first. SCSI has the concept of a target (think, device, eg hard drive). Each target can present multiple logical units. Each of these is assigned a number - a Logical Unit Number. Most devices (a hard drive, or a CDROM drive) will present a single LUN. A storage array will tend to present multiple LUNs; one for each volume that is exported to the host. At the host level each LUN really just looks like a separate device (for Linux /dev/sda and /dev/sdb may well be separate LUNs on the same array, rather than 2 separate arrays/hard drives, for example. At the block device level you don't care about the difference usually).

Anyway. For various reasons I end up adding and removing LUNs quite often. And there are ways for the array to indicate that this has happened to the host (the UNIT ATTENTION/REPORT LUNS DATA CHANGED check condition seems to be favoured these days, as a complete Fibre Channel LIP can be disruptive). What I'd like to happen in that case is the host to pick up the check condition and drop and/or add the devices that have changed. Instead everything wants a manual rescan. rescan-scsi-bus tends to be simplest for Linux. Windows wants a manual refresh in Disk Administrator. VMWare a "Rescan HBAs" from vSphere. Solaris a "devfsadm -C" and possibly a "cfgadm -al" first. And all of these can be temperamental about picking up the changes.

We've done a lot about hotplug for the desktop user experience, without doing the same level for the server experience. I appreciate that there are situations that you don't want your server to reconfigure things without being told to, but the current situation can be detrimental (for example Linux multipathing will hold a device open even after it's disappeared and is returning an "INVALID LUN" response; it would be much better if it could cleanly close that device and wait for it to return). Storage is capable of being much more than just a single block device these days, and it's a shame that nothing seems to deal fully with that fact.

(Yes, yes, I should write and submit patches, but I appreciate that there's not always a simple answer, nor necessarily an answer that works for all situations automatically. Plus, y'know, not enough hours in the day and I hope you all appreciate I've taken a break from watching BSG to write this.)

Categories: LUG Community Blogs

Jonathan McDowell: Totally divorced

Sun, 22/01/2012 - 22:12
I got divorced earlier this month; the decree absolute arrived in the post last weekend. I'm hoping this isn't news to anyone who knows me well, and I only really mention it here as an endpoint given that I blogged about the wedding itself.
Categories: LUG Community Blogs

Andrew Savory: Media and storage of the future

Sat, 21/01/2012 - 22:11

I just lost a hard disk. No big deal.

My somewhat complicated home media setup is this: I have a Samsung TV plugged in to a first generation AppleTV. The AppleTV is connected to the network via wired ethernet to an Apple AirPort Extreme base station / router. Hanging off the USB port of the Airport Extreme is several terabytes of storage courtesy of a Drobo containing a bunch of cheap(ish) OEM hard drives.

The AppleTV has been upgraded with a Broadcom Crystal HD chip in the internal PC Card slot – which normally has a wifi card in it. I figured it was worth sacrificing wifi, since with the size of HD video you really want to be using a fast wired network anyway. In order to make use of the HD chip, I have XBMC installed on the AppleTV.

So I sat down this evening to watch a film over dinner. I switched the TV over to the AppleTV, fired up XBMC, and navigated to the files on my Drobo – except they weren’t there. For some reason, the AppleTV wasn’t seeing the Drobo. I pulled the face plate off the Drobo to find out what was going on, and noticed it was in standby mode – unmounted by the Airport Extreme. No wonder the AppleTV couldn’t see it!

I restarted the Airport Extreme, but when it came back up and woke up the Drobo, I had the ominous flashing red light beside one of the drives. The light that means “drive failure”.

At this point in the story, there would normally be panic at the thought of lost data. What actually happened was a swift trip to Amazon, a quick calculation of cost per megabyte followed by ordering a new OEM drive to replace the failed one. It should be here on Monday, but meanwhile I can still access all my data.

It’s not always smooth sailing – see Drobo good, bad, ugly and Drobo updates. But when talking to a friend the other day who was still nursing individual external USB drives, I realised that on the whole the Drobo has been well-behaved and fits into the “it just works” category of technology that is so rare these days. It’s been online for almost two and a half years, and I’ve only had to mess with it on three occasions until now: installation, adding capacity, and replacing the first blown disk.

So I’d thoroughly recommend a Drobo instead of an external USB drive, and for a home media centre solution it works really well with the AppleTV (and associated hacks) as well.

Categories: LUG Community Blogs

Andrew Savory: Statistics

Fri, 20/01/2012 - 23:17

Borrowing from Alex King’s Simple SQL Queries for Blog Stats, here’s some stats on this blog.

  • The first post “It’s alive!” was made on 31st May 2003, some nine years ago.
  • There have been 1,572 posts.
  • On average, there are around 160 posts a year.
  • Most posts are comfortably over 1000 characters long.
  • The average post is about 170 words long; the longest is currently FOSDEM 2011: Saturday, and the shortest is This week’s addiction (whatever happened to…)
  • There’s been an inexorable move toward fewer, longer posts in the last few years.
  • These stats don’t include this post. I’ll leave that madness to xkcd.

Meta meta…

Here’s some useful queries for getting blog stats from a WordPress database.

Get first and last post:

select min(post_date) as start, max(post_date) as end from wp_posts; +---------------------+---------------------+ | start | end | +---------------------+---------------------+ | 2003-05-31 10:35:11 | 2012-01-13 18:14:58 | +---------------------+---------------------+

Get number of posts:

select count(*) from `wp_posts` WHERE post_status='publish'; +----------+ | count(*) | +----------+ | 1572 | +----------+

Get number of posts per year:

select YEAR(post_date), count(*) from `wp_posts` WHERE post_status='publish' GROUP BY YEAR(post_date); +-----------------+----------+ | YEAR(post_date) | count(*) | +-----------------+----------+ | 2003 | 154 | | 2004 | 329 | | 2005 | 501 | | 2006 | 225 | | 2007 | 176 | | 2008 | 75 | | 2009 | 17 | | 2010 | 19 | | 2011 | 70 | | 2012 | 6 | +-----------------+----------+

Get average number of posts per year:

drop table if exists average_posts; create temporary table if not exists average_posts select YEAR(post_date) as Year, count(*) as Count from `wp_posts` WHERE post_status='publish' GROUP BY YEAR(post_date); select avg(Count) from average_posts; +------------+ | avg(Count) | +------------+ | 157.2000 | +------------+

Get average length of posts (in characters) per year:

SELECT YEAR(post_date), AVG(LENGTH(post_content)) FROM `wp_posts` WHERE post_status='publish' GROUP BY YEAR(post_date); +-----------------+---------------------------+ | YEAR(post_date) | AVG(LENGTH(post_content)) | +-----------------+---------------------------+ | 2003 | 1260.8182 | | 2004 | 1174.0729 | | 2005 | 1062.4770 | | 2006 | 1003.2622 | | 2007 | 1473.9489 | | 2008 | 1862.2267 | | 2009 | 3575.2941 | | 2010 | 3447.3158 | | 2011 | 6024.9000 | | 2012 | 8707.6667 | +-----------------+---------------------------+

Get average word count of posts per year:

drop table if exists word_counts; create temporary table if not exists word_counts SELECT `ID`, `post_date`, SUM( LENGTH(`post_content`) - LENGTH(REPLACE(`post_content`, ' ', ''))+1) AS 'Wordcount' FROM `wp_posts` WHERE `post_status`='publish' GROUP BY `ID` ORDER BY `post_date` DESC; SELECT YEAR(post_date), AVG(Wordcount) FROM `word_counts` GROUP BY YEAR(post_date); +-----------------+----------------+ | YEAR(post_date) | AVG(Wordcount) | +-----------------+----------------+ | 2003 | 148.3052 | | 2004 | 147.6809 | | 2005 | 112.4611 | | 2006 | 105.3289 | | 2007 | 161.6875 | | 2008 | 218.9600 | | 2009 | 451.3529 | | 2010 | 450.3158 | | 2011 | 673.8714 | | 2012 | 1017.6667 | +-----------------+----------------+
Categories: LUG Community Blogs

MJ Ray: The New UK Co-op Bill: In Praise Of Diversity

Fri, 20/01/2012 - 16:00

I’ve given my reaction to yesterday’s announcement by the prime minister in my blog on the Co-operatives UK website. If you want to comment and can’t do so there, comments can be left on this article too.

Categories: LUG Community Blogs

Brett Parker (iDunno): StarTech IP KVM - SV1107IPEXT

Thu, 19/01/2012 - 11:20

So, at work we have a little single port IP KVM, it is a StarTech SV1107IPEXT - it's not a "bad" bit of kit, if you're completely configured for using it in the way they expect... When you're not, then it throws a NullPointerException when you try to connect with it's Java applet.

This morning (mostly because the monitor and keyboard I had been using for building stuff on my desk has gone missing) I decided I'd try again with the device, it's not on our default office network range, mostly because it might not always be in the office, so I quickly added an ip alias using ip addr add 192.168.0.59/24 dev wlan0 on my laptop to bring up a route to it. Navigated to the page and asked it to fire up the Java applet. Straight off, a NullPointerException happens - hmm. So looked at what was being logged by the JVM - it was trying to run ifconfig (no, really, the java applet ran ifconfig... with no path...) which, on my debian laptop, is not in the default path... so I went and make a quick wrapper in ~/bin for it... right - now it can run that... still a NPE, hmm. So look a little closer, it's looking for the MAC address assigned to the IP that you're coming from... no, really! WTF! So I went and hacked my little ifconfig wrapper to rewrite the address for wlan0 to be what the KVM expected it to be, low and behold, I can now run the java client (hoorah!).

Why the heck are they doing that though - that's just plain insane! On the plus side, I now have a work around, on the minus side, egad that's ugly!

Categories: LUG Community Blogs

MJ Ray: SOPA: Lash Out is better than Black Out

Wed, 18/01/2012 - 19:21

Once again, lawmakers are considering a stupid protectionist measure and this time it’s the US, so it has some effects outside the US too.

Once again, some websites have taken themselves offline and caused great inconvenience to their supporters.

This is really annoying. Protesting about threats to take websites offline by taking websites offline is as stupid as protesting against a ban on kissing by not kissing. It just demonstrates that you can do without your websites/kisses if you must.

I feel it’s much better to use websites to distribute information and call people to action, like this epetition for UK citizens and residents, or by asking your associations and suppliers to oppose these measures and their supporters.

Wikipedia is probably a bit to blame. Although it called its action a blackout, it wasn’t one and there were still many ways to access its information. In fact, if you use NoScript, the banner didn’t even display and there’s only a line on the front page to say anything is happening.

The one that really annoyed me was identi.ca, which even turned off its API so clients just started spewing errors everywhere (I returned to my desk to a stack of retry questions). That stopped some of my websites from distributing a link to the anti-SOPA epetition because they read from my identi.ca stream – how much other anti-SOPA activism was hindered?

I’ve been told that Evan held a vote, but I didn’t see it, so I didn’t vote and I don’t know the turnout or anything. How many people voted for the blackout because they use other sites like twitter more anyway?

Banners: yes; Blackouts: no.

Categories: LUG Community Blogs

Brett Parker (iDunno): Mira Grant - Newsflesh Trilogy

Mon, 16/01/2012 - 22:20

OK - so I read, a couple years back, the first book in the Newsflesh Trilogy by Mira Grant, before getting my Kindle - it was fantastic, and I wanted more, ... so, diligently I waited and then after getting my Kindle, I spotted that the second in the series was available for pre-order (yay!), so noting when it was due out, I made sure that a couple of days before the release of Deadline, I could read Feed again - having already owned it in paperback, I also diligently bought it a second time for the Kindle (knowing that I would be reading something else just before starting the voyage through Feed and then Deadline, and travelling with lots of paperbacks in my bag was just getting annoying...).

In a few months time, the final part of the Newsflesh Trilogy comes out - and I await it with baited breath. I also note, that, currently it is only available for pre-orders in paperback - NOOOOOO! So, with that in mind, can everyone please go to the Amazon page for the paperback and click on the magic link that says you want to read it on the Kindle!

Also, if someone can work out why the novellas are only available in audiobook format, and somehow makes them available in a nice printed format (well, kindle), that would be great!

(One day I'll get round to re-enabling comments on here... one day... yes, one day!)

Categories: LUG Community Blogs

Andrew Savory: FOSDEM 2011: Sunday

Fri, 13/01/2012 - 18:14

In advance of FOSDEM 2012, I’m publishing previous years’ notes. Here’s 2011 day two: Sunday.

Barebox

Reason for attending this talk: to understand more of the technical details behind fast boot of Linux devices, which will be an important factor in the success of mobile linux.

The subtitle of this talk was “Booting Linux Fast and Fancy”, and the speaker focussed first on how to make linux boot quickly and then provided tips for making the boot look good. There were approximately 100 people present for this early morning session.

Why worry about boot? The evolution of phones to include linux means boot user experience becomes more important. Industrial devices don’t look like computers and shouldn’t boot slowly. Automotive devices have fast-boot requirements – they must be answering CAN messages in less than 200ms after power-on.

History of the project:

  • 2007 – barebox project – forked from u-boot as a technology study under ‘u-boot-v2′ name.
  • 2009 – first release, renamed barebox, hosted on own infrastructure
  • 2011 – 24 releases to date, timed releases 1 per month + maintenance releases on demand.
  • commit history – missed it! slide went by too quick.

The project supports a range of CPU architectures – arm (at91, ep93, i.MX, netX, nomadik, omap, s3c24xx), m68k, ppc, sandbox, x86 bios based, etc.

It supports:

  • build: kconfig, kbuild
  • boot media: linux16, nand, ubi, sd
  • data: dfu, kermit, z/y/zmodem, tftp
  • gfx: framebuffer, splash screen
  • filesystem: cd, ls, cp, saveenv/loadenv, mount, partitions
  • tools: crc, edit, gpio, unizo
  • user interaction: login, menu (for simple text-based menus)
  • drivers: i2c, mfd, flash, serial, spi, usb host+device
  • modules: insmod, lsmod
  • memory: meminfo, memtest, md, mw
  • network: ipv4, dhcp, netconsole, tftp, rarp, ping, nfs, dns

Configuration done just by assigning variables e.g. eth0=172.0.0.3.

Booting linux fast:

  • power controller releases reset line: optimize hardware (electronics)
  • ROM bootloader starts running: select cpus optimized for fastboot eg mx25
  • fetch boot blok from nand/sd: done by firmware, usually can’t be tuned
  • execute first boot code: first place can do something in sw
  • initialize hardware: only what’s necessary, tune clocks & timings
  • fetch linux kernel from nand/sd: async read and decompression tricks eg prepare kernel image in blocks of certain size, while decompressing block, instruct device to send next block.
  • execute linux
  • extract compressed image: depending on hw, use uncompressed image or zImage
  • kernel boots, initialize hardware: minimized kernel, all tricks from elinux.org wiki
  • /sbin/init: depending on use case, use initramfs or real rootfs (slower)

Example: 336ms from bootloader to init on freescale mx35, 532mhz. On beagleboard this is usually 800ms.

Booting linux fancy:

  • initialise hardware: backlight off load splash show splash backlight on (to avoid flicker)
  • kernel boots, initializes hardware: make sure framebuffer has fixed address between bootloader and kernel – no re-init! (stops splash disappearing)linux driver looks at what is initialized, and doesn’t reinitialize.
  • sbin/init: cross fading with overlay

Fast, but not the 200ms limit for automotive.

BTCS: Boot Time Critical Services (originally inspired by freescale, now implmented with mainline focus).

Idea: set aside some memory, register a poller in barebox, make sure memory is handed over to linux, poller ends up as a normal interupt service routine in linux.Interupt service routine runs during bootloader. compromise – can’t use much infrastructure from isr. possible to run commercial stacks for ECU.

CAN is ready after about < 100ms. Downside: it is a bare metal stack.

Key takeaways: it is possible with attention to detail to create extremely fast booting devices. This would be of significant value in a mobile linux stack.

Linaro

Reason for attending this talk: Linaro could form an important base for a mobile linux platform.

Approximately 300 people attended this talk. The speaker began by outlining the rationale for Linaro’s creation: ARM-embedded is too hard, and there are 4 key problems:

  • under-investment in the open source that makes up linux platform
  • distribution fragmentation: different tools/versions, different graphics and multimedia plumbing, kernel forking and versions
  • SoC fragmentation, different SoC vendors with different approaches eg kernel, power management, graphics and multimedia
  • not enough optimization, features in processors not being used

How is Linaro fixing this? engineering, engineering, engineering!

In the above graph:

  • blue: Canonical
  • red: ARM
  • yellow: codesource?
  • green: IBM
  • pink: TI

They recrutied engineers from all member companies and hiring their own people to work on Linaro.

Linaro engineering : working groups, taking opensource upstream and improving, releasing own branches with new features (will go upstream but maybe not there yet)

landing teams only area with privacy (future products/hardware)

platform engineering: mix all together. important to have reference images prove it works and test/validate work of other groups.

two types of cycle:

  • 6 months design – implement – deliver features
  • subprojects on monthly releases

10.11 technical highlights

  • took member bsps and wrote summary of what was wrong
  • combination of distributions and SoCs .
  • release hardware packs as set of enablement files
  • at end of cycle toolchain widely adopted

lessons learned

  • too high level, goals too abstract
  • ramping up engineers to 90 was time-consuming

2011 plans: build of linaro-enhanced key distributions on member SoCs

  • android
  • ubuntu
  • chrome os
  • meego

Building a test and validation framework for member SoC hardware.

Qt tales from embedded trenches

Approx 200 attending. Speakers are kde developers – kdepim, plasma, libgcal, gallium,…

kinetic scrolling – as made famous in 2007 by iphone. but prior art discussed in 1982 bill buxton two-handed input in HCI, canola 2007

Qt flickable 2008 “oh my god QML’s so wonderful!” in fact a really really neat way to do things. You can do it in C++ but use QML, it’s easier.

implementations;

  • ariya’s flickable 2008
  • toyflick 2009
  • plasma scrollwidget 2009
  • imtk imtkkinecticlistview 2010
  • qml flickable 2010

Meego UI without libmeegotouch? issues with libmeegotouch – can’t run on symbian (uses GTK), so cheat

pure blood qt runs everywhere – nokia n580, n97, n900.

Categories: LUG Community Blogs

Andrew Savory: FOSDEM 2011: Saturday

Wed, 11/01/2012 - 17:52

In advance of FOSDEM 2012, I’m publishing previous years’ notes. Here’s 2011 day one: Saturday.

FOSDEM is the Free and Open Source Software Developers’ European Meeting, an annual free event hosted in Brussels and entirely organised and run by volunteers. Typically around 5-6000 developers attend. The event is run over a weekend, with a networking beer event the Friday beforehand. This year around 1500 people showed up for the beer, according to the estimates of the security staff.

The event comprises a number of keynotes and multiple parallel tracks of volunteer talks. 2011′s main tracks were:

  • System
  • Web Browsing
  • Languages
  • Web Frameworks
  • Cloud
  • Office
  • Lightning talks
  • Developer Rooms – BSD, Cross Distribution, Cross Desktop, Data Analytics, Embedded, Free Java, GNU, Jabber and XMPP, Mono, Mozilla, MySQL and friends, Security and hardware crypto, World of GNUStep, Accessibility, Configuration and Systems Management, LibreOffice, Virtualisation, Open Source Telephony, Perl, PostgreSQL.

Some thoughts from the event overall:

  • Attendance
    • Attendance once again seemed higher than previous years, with a broad mix of attendees in terms of age, profession, geography, language.
    • Many businesses as well as projects now count FOSDEM as a “must attend” event.
  • “Android is a bucket of arse” / “has anyone noticed the only Android talk is about setting it free?” / “Google’s Android is not the perfect embedded OS”
    • The general mood amongst delegates is that Android is an appalling technical implementation, and very few seemed interested in developing for the platform. This was in stark contrast to the level of interest in Linaro and MeeGo.
  • WebOS has problems too
    • Even though Palm WebOS is widely admired by the community, apparently HP has spent the last year since acquisition dealing with licence compliance issues.
  • Consolidation
    • Previous years have seen rooms devoted to specific distributions and specific desktop software. This year all the distributions were in one room and the theme was typically how to work together and on cross-distribution packaging initiatives. All the desktops shared talks on important cross-desktop key components.
  • Device fashion
    • Despite being superseded in the marketplace, the Nokia N900 was still an extremely popular device at FOSDEM. Second most common device sighted was the G1, followed by a range of Android and iPhone models.
    • Some delegates had a range of tablet devices, but these were still very few compared to laptops and netbooks. The most common laptops were Apple Macbooks and Macbook Pros, many of which were running linux.
  • Trends
    • There is an increased interest in the embedded end of the market with more talks and also large crowds around the embedded/beagleboard stands.
    • Firefox and HTML5 seemed significantly more popular this year, and there continues to be notably few talks about WebKit/Chrome.
    • Last year’s buzzword NoSQL has been superseded this year by “big data”.

Some of the talks attended:

Lightning Talk: Is the UK Government backing free software?

Two reasons for attending this talk: firstly, it’s a useful barometer for the acceptance level of open source in general and the progress of open source in large organisations. Secondly, I’ve worked with Sirius on rolling out infrastructure, so it’s good to keep tabs on what else they are doing.

There were about 200 people in the auditorium for the lightning talks. This talk started by pointing out that despite many open source policies and statements of support, the government has never implemented open source to any great degree. The last Labour government were very pro-business, typically favouring large multinationals, and so vendor lock-in through proprietary formats prevented any real adoption of open source.

The civil service typically work with and are supplied by large system integrators who historically have not been open source friendly.

The new administration is taking a top-down approach to driving change and wider adoption of open source. Examples of this include an SME Summit at the Treasury on 11th February 2011, and an Open Source supplier forum on 21st February 2011 where all open source suppliers will be present.

In addition, Bristol City Council are conducting research using a large system integrator paired with a small open source company (Sirius), and Cardiff council are running a series of workshops amongst key stakeholders, facilitated by Sirius, to explore options for using open source.

I wanted to get into the Firefox talks next, but the room was full (standing room only, no-one else allowed in for health and safety reasons).

How to be a good downstream

Reason for attending this talk: I’ve seen first-hand the very real economic and technical problems with the way large mobile platforms relate to upstream projects, in that code is often forked and patched and rarely contributed back, providing both an economic burden of maintenance and technical difficulties in backporting bug fixes and enhancements. It was hoped that by attending this talk key remediation strategies might be identified.

There were about 50 people in this talk. This talk was given by noted Debian developer Thomas Weber, and was subtitled “How to make both your and upstream’s life easier”. It was a follow-up to last year’s talk “How to be a good upstream”.

Key points that need to be remembered:

Communication

  • when you make some specific changes, discuss with upstream what changes were made and why
  • being pro-active is key

Empathy

  • Different people/projects have different goals and constraints
  • Remember that upstream is busy too
  • if you forward bugs, include all necessary information in the bug report – don’t force upstream to use your bug tracking system
  • do not propose unscalable solutions eg. “upstream can subscribe to my distribution’s bug tracking system” : Debian alone has 120+ derivatives

Packaging (initially and ongoing)

  • Introduce yourself – so upstream knows about the package and has a point of contact
  • Keep in contact with upstream and ensure they understand that you are packaging for a distribution
  • Take a look at upstreams bug tracking system before your own release
  • If you leave or stop packaging inform upstream!

Example: xdebug 2.0 bug fixed in 2.1 Aug 2009; first stable was june 2010, in Ubuntu 10.04 LTS it’s still not fixed.

Cooperative work

  • Forward patches (ideally before applying them)
  • Be present on upstream’s communication channels
  • Intercept the questions of the users of your distribution (you know the details of your distribution far better than upstream). This generates good karma.

Key takeaways: mobile platforms don’t always do this. They should all consider identifying their upstream projects, identify all their modifications made against upstream, do an audit of their releases against upstream bug trackers, and introduce their maintainers to all the upstream projects.

Swimming upstream

There were about 75 people in this talk. This talk started with a quick survey of the audience: the audience were geographically well-distributed, some had travelled 1000+ miles to attend. 80% of the audience don’t speak english as their first language, and no-one in room has been using linux for less than 2 years – most have been using it for more than 10 years.

Jared asked “does innovation happen in a conference room?”, and then proceeded with an analogy of why salmon swim upstream and why contributors should push their code upstream. He used another analogy of how multiple streams form a river to describe how “code starts out as 1 or 2 people working together then it forms a larger community”.

What is a community? It is the relationship of people with shared goals and common interests. With a software community: what is the difference between people working on same piece of software and a software community? A software community is a table – where people with different backgrounds, experiences, goals can come together and have healthy discussions. Sometimes they talk more about the process of the table itself!

What is a distribution? It is a bundling of software. When Fedora started, they didn’t want to push upstream – but this approach didn’t work as it became impossible to maintain the platform. Fedora now push upstream aggressively to carry as few custom patches as possible.

Upstream -> Fedora -> Redhat Enterprise Linux

“people take pride in working with open source, contributing to something bigger than themselves”

Key takeaways: Fedora, a relatively large and well-supported open source linux distribution, were unable to handle the burden of maintaining the platform without pushing upstream. Mobile platforms should learn from this experience and understand that it is not possible for them alone to support a forked platform.

Downstream Packaging collaboration

This talk suffered from poor audio, starting too early whilst people were still arriving, and people were talking over the introduction.

The speaker started off with the premise that packaging an open source project is easy, but modifying it (patching) to fit the distribution’s requirements is hard due to the maintenance burden incurred by patches.

The obvious answer is to get the patches upstream as soon as possible, but this is not always possible as some open source projects have missing maintainers or are unresponsive to distribution contributions.

A workaround is for distributions to work together to form a new upstream, but maintaining a new upstream is hard.

One suggestion was to create canonical-package-name-maintainers@distros.freedesktop.org and then subscribe the email address to per distribution package VCS commit mails.

Question: how many examples of upstream abandonment? Several key ones: X11R3, X11R4, lesstif, nedit. Most niche packages, but still with a significant number of users.

The second part of the talk focussed on patch sharing:

  • store all downstream patches at same place
  • give write access to maintainers
  • read to everybody
  • let maintainers collaborate

Advantages: differences are more obvious, one patch can be used for multiple versions.

Whenever someone creates a new patch:

  • push into common repo
  • all maintainers will know shortly
  • know whether it is distro-specific
  • know what it does
  • know when it get upstreamed
  • know about fixes
  • can incorporate it
  • can help cleaning it up
  • can help pushing it upstream

cf. openembedded:

  • one repo with recipes and patches for software
  • everyone works together (even on packaging)
  • only differences are marked

patch conventions – easily parseable metadata:

  • upstream package name and version
  • maintainer (for patch)
  • strip level (-p prefer)
  • list of bugs
  • description
  • status (quick hack, send to upstream, upstreamed)
  • distributions included in

Start with debian patch policy. Other key links:

Bdale Garbee summed it up best: “if you maintain a piece of software for a particular distribution and you don’t know the maintainers from other distributions, you are failing”.

Key takeaways for mobile linux platforms: maybe they should be a patch farm against an existing distribution, rather than a platform in their own right. They could sponsor work toward a common patch store, by helping developers get together to talk about it and plan it. This would help them by mitigating their maintenance burden.

E17

Samsung have a high level of investment in Enlightenment technologies, having hired the principle developer. This talk is therefore critical to understanding the core graphics in Samsung’s Linux platform. There were around 100 people in the room for this talk.

e16 was released in 1997, and e17 has been in development for over a decade. Embedded devices are the main target and e17 has been rewritten from scratch based on e16 experience.

Enlightenment is a lightweight desktop environment based around EFL – Enlightenment Foundation Libraries. Enlightenment takes care of the current layout. All features or gadgets on the desktop are a module – so you can unload them. An e17 desktop consists of a set of modules loaded – a profile. A default basic profile is defined for different use cases. e17 is totally modular so you can load only what you want to use.

e17 supports themes. With edje everything can be themed. There’s only one file to download for the whole theme.

e17 has full compositing support.

e17 is opengl and opengl-es compliant. If the platform has bad graphics drivers it can switch to software engine.

e17 supports textures from pixmaps and indirect rendering.

e17 works on desktop and embedded.

The gui: there is a basic toolkit, there is no complete toolkit, just basic widgets (button, list, scroller…) and some tools to make life easier for coders (for example dbus bridge). You use ecore and evas to create windows. You use edje to create a new widget.

The future: Release. Maintain compatibility.

In e18 the plan is to integrate a complete toolkit for widgets.

Questions from the audience:

  • Do you have a release date?
    • “no”
  • what is the footprint?
    • Around 40mb? 30mb? (the second e17 talk stated around 24mb)

The Enlightenment stand at FOSDEM also had e17 running on a range of devices including what looked like an HTC phone and a Samsung Galaxy Tab.

Key takeaways: there is a fair amount of developer interest in e17, but despite a very long development cycle it still seems relatively incomplete. However, the minimal footprint, embedded target and eye candy focus might provide a more consistent user experience closer to iPhone than it is possible to provide using GTK or Android graphics.

Open Sourcing Java

This talk was given by former Sun Chief Open Source Officer Simon Phipps. It was very well attended with approximately 200 people in the room and a long queue of people unable to get in.

Governance

Sun nearly broke opensolaris with heavy governance. They learnt from that lesson and with OpenJDK they took action first, open sourcing the platform and then wrote the governance after the fact. Another key lesson is that setting up an open source foundation does not fix anything – it is important to make the open source platform work first.

All community members matter

  • it’s a mistake to assume a competitor can’t help
  • there are approximately zero people who show up just to break things
  • the rules you make to control those zero people break things worse than the zero people do

Real relationships help and heal

  • written communications only support existing relationships
  • second languages affect understanding (easy to believe you mean what you say – but you only use the words you know) (saying “I’m not a native English speaker” is a great way to excuse almost anything else you say)
  • old hurts can be cured by positive healing (have breakfast lunch and dinner with people you don’t agree with)

training reptiles takes time (corporations are reptiles)

  • corporations don’t exist, people do (you can’t trust a corporation)
  • confronting corporate problems rarely works (no point going to MS and telling them patents are evil)
  • solutions need to layer and build over time – create habits not traps (gradually change the environment)

Open source isn’t about licenses or code – it’s about a certain set of liberties. Software freedom has to be the guiding principle in what you do.

Software Business Value is the first derivative of Software Freedom

  • Ability to share code -> grows user base
  • Ability to study code -> developers not needing training
  • Ability to modify code -> ecosystem of companies
  • Adopting posture of freedom is not delivering freedom

Pragmatic compromise to achieve larger goal can be acceptable

  • contributor agreement
  • assembly exception to allow mixed licensing

Licenses are constitutions for communities

  • licenses normally bilateral agreements
  • open source licenses are multilateral circle around the community that defines the boundary.

The fact that java wasn’t open sourced in 2003 and packaged in a usable fashion on linux meant it lost a huge amount of momentum.

Why was apache license not chosen? BSD/Apache/GPL were all considered. Apache patent grants and lack of contribute-back would have removed commercial incentives to collaborate. BSD/MIT don’t convey patent grants in any concrete way, so could have been an option.

Bdale commented that it’s a balancing act that GPL represents between conveying rights and ensuring everoyone plays openly.

The most important thing Sun ever did to get Java adopted was not licensing under GPL but sending Tom to debconf to make debian packages. This made the JDK a second class citizen and not a third class citizen.

Key takeaways: companies must work together across commercial boundaries. Foundations / holding organisations should lighten up on governance and focus on software freedom and deriving value from building the platform. Making the platform usable is critical to widespread adoption.

Simon’s slides: Lessons I learned liberating Java

 

 

Categories: LUG Community Blogs

Andrew Savory: Getting started with Tizen

Wed, 11/01/2012 - 09:58

The Tizen source and SDK were unleashed yesterday, and I’ve just had a first glance. The documentation is a bit all over the place, so here’s some notes on getting up and running. For more information on what’s going on with Tizen, read my blog post on Tizen and on platform community.

~

The platform build page at https://source.tizen.org/platform_sbs_install.html states Tizen requires Ubuntu 10.04 or higher. The SDK page at https://developer.tizen.org/sdk.html caps Ubuntu at version 11.04, as does https://developer.tizen.org/sdk_install.html. In reality, the SDK installed on 11.10 without any problems.

Installing the SDK

The SDK page says “To install the SDK you will need to have root privileges” but does not use sudo to run the installer. You will be prompted for the root password during the install.

The following steps worked for me:

  • Install Virtualbox.
  • Install Ubuntu 11.04 (or risk 11.10)

apt-get install git

sudo add-apt-repository ppa:ferramroberto/java sudo apt-get update sudo apt-get install sun-java6-jdk sun-java6-plugin
  • Get the SDK working by running through: https://developer.tizen.org/sdk.html. Install the Tizen SDK prerequisites. Because Tizen loves you, they kindly put commas between package names so you can’t copy-paste them. Here’s the list all ready to go:
sudo apt-get install qemu-kvm binutils-multiarch debhelper fakeroot realpath libsdl-gfx1.2-4 gettext procps xsltproc libdbus-1-3 liblua5.1-0 libexif12 libcurl3
  • Download and install the SDK:
wget https://developer.tizen.org/download/tizen_sdk.bin chmod +x tizen_sdk.bin ./tizen_sdk.bin
  • The installer will exit (“Installing ….. OK”, “Done”) before the GUI installer has completed. Don’t worry about it.
  • Go through the install process. Note the SDK needs 1.2GB to install. The installer is only 4.6mb, so expect some downloading.
  • First time around, my installation failed with the following error:

(Un)Installation failed

Cannot connect to server. Please check your network status or use command line option ‘-proxy <address>:<port>’ for using proxy.

It’s recommended to uninstall all and install again.

The install is wanting to talk to http://112.106.1.254/tizensdkpackages/InstallManager/Linux/ and http://112.106.1.254/tizensdkpackages/current/linux-packages/ but those both work fine.

The second time around it worked (and good grief, the tizen download server is fast … or not very busy. I got 1.52MB/s).

Some random notes about the SDK:

  • the open source license is alphabetical, so the first thing you’ll see on the list of software components is ‘Android Open Source Project(ADT DDMS, adb)’.
  • The SDK license is actually a Samsung SDK license: TIZEN SOFTWARE DEVELOPMENT KIT (“SDK”) LICENSE AGREEMENT [...] A LEGAL AGREEMENT BETWEEN YOU AND SAMSUNG ELECTRONICS CO., LTD. (“SAMSUNG”).
  • The Open Source SDK components are at http://developer.tizen.org/download/tizenopensdk.tar.gz but that basically consists of valgrind, qemu, the emulator kernel and oprofile.

Installing Scratchbox Build System (SBS)

This works pretty much as advertised – though note that the first step 1 (installing package dependencies) conflates two separate lines, and should read:

sudo apt-get update

followed by:

sudo apt-get install dpkg-dev pkg-config uuid-dev cpp gcc gcc-multilib libarchive-dev liblzo2-dev zlib1g-dev libxml2-dev automake autoconf realpath

Or you could just do:

sudo apt-get update && sudo apt-get install dpkg-dev pkg-config uuid-dev cpp gcc gcc-multilib libarchive-dev liblzo2-dev zlib1g-dev libxml2-dev automake autoconf realpath

There’s IP addresses hard-coded all over the place: in the SDK install, in the SBS documentation, in the SBS install script, and in the SBS utilities themselves, for example:

# The server with all required APT repositories _APT_SERVER="${SBS_APT_SERVER:-112.106.1.254}"

This is extremely brittle, and I expect there to be breakages. It’s pretty poor practice and I would have preferred that the ‘source.tizen.org’ CNAME was used more consistently. That IP belongs to Samsung, by the way.

Where there is a domain name configured, it’s www.tizendev.org, which does not resolve to a public machine:

./install-sbs SBS install script git version: 08ecba2 last commit: Date:   Wed Jan 11 16:39:11 2012 +0900 For help see: http://www.tizendev.org

Note that you’ll end up with SBS stuff in ${HOME}/sbs-install and ${HOME}/sbs, which may or may not annoy you.

As per the instructions, ~/sbs-install/bin/sbs -A i386 -c will give you a working i386 Scratchbox target. It’s great to see at the end of the first run:

sbs: All done.  Build environment was successfully setup at /home/savs/sbs

Progress!

~

On the whole, kudos to Samsung (and Intel, and Tizen) for getting the code out there. And especially for having a reproducible build system with clear instructions. This is a huge leap forward for Tizen, and a critical first step.

Categories: LUG Community Blogs

Andrew Savory: FOSDEM 2010

Tue, 10/01/2012 - 17:58

Although I’ve been a regular at FOSDEM for a few years now, I’ve been rather poor in ensuring my notes got onto this blog. In advance of FOSDEM 2012, I’m publishing previous years’ notes. Here’s 2010.

The Free and Open Source Developers’ European Meeting (FOSDEM) is an annual free and non-commercial event organized by the community, for the community. It’s a two day event organized by volunteers to promote the widespread use of Free and Open Source software and to provide Free and Open Source developers a place to meet. The event takes place in Brussels and has been running since 2000. In recent years attendance has been in the region of 4000, and in 2010 the attendance was closer to 6000. The event is hosted by the Université Libre de Bruxelles.

During 2010′s event there were 294 talks organized across 10 tracks (including Keynotes, Security, Scalability, Monitoring, Database, Javascript) and 22 subject-specific rooms (including Distributions, Embedded, Mozilla, GNOME, Openmoko, X.org).

I presented two LiMo talks: “LiMo Platform and Mobile Linux” and “Mobile distributions and upstream challenges“. I also attended a good number of talks, which – due to my employer at the time – mostly had a strong mobile and embedded focus. Some of the highlights included:

Embedded software development best practices (Adrien Ampelas)

Adrien gave a complete end-to-end guide on how to do embedded platform development. He covered everything from source control, to build mechanisms and quality, to code review and distribution. The talk identified many issues that open mobile platforms do not address.

One slide in particular that appealed to me on build processes applies equally well to any software development environment: how long does it take a developer to get up and running?

FreeSmartphone.org and D-Bus (Michael Lauer, OpenMoko)

OpenMoko was hardware and software combined in a single device. The device is now dead, the software lives on. FreeSmartPhone.org (FSO) is the community software platform that has developed out of the ashes of OpenMoko.

What is FSO intended to be? A collaboration platform, a bottom-up stack, and a reference implementation. The heavy focus is on working software in real hardware with constant innovation/improvement on top. The goal is to close the middleware gap. ie. “middleware for mobile phones”. It is deliberately not positioned as a standards effort like LiMo Foundation/LiPs.

There’s heavy reuse of pre-existing components both within community source and old OpenMoko (eg. phone stack). D-Bus facilitates good architecture because it permits separation of business logic from UI. Lightweight, language independent UI independent, P2P and P2M IPC process communication enabler. D-Bus architecture involves a system bus and per user session bus. Methods and signals handle P2P and P2M. Get/Set for fast operations, list/retrieve for slow operations.

  • > “mdbus -s” to enumerated system bus services
  • > “mdbus -s org.freesmartphone.ogsmd” to talk to SIM app toolkit

One D-Bus interface can expose multiple objects.

  • > “cli-framework” gives you a Python command line to D-Bus operation on FSO

Using it everything you can do programmatically with D-Bus can be done interactively which is very cool for demos.

Python D-Bus support: “One small step for programming, one giant leap for middleware”. FSO has control logic all written in Python for faster development time. BUT Python is slow! Also, an interesting comment: people are afraid of using scripting languages in embedded devices. FSO2 has been entirely rewritten in Vala – a high level language that can be compiled to generate C. FSO2 has libmsmcomm (Qualcomm MSM) and libgsm0710 modem (from OpenMoko). The OpenMoko team are looking in 2010 to port FSO2 to OpenMoko Neo FreeRunner, Palm Pre, and HTC Dream.

FSO2 initiative is very interesting – they’re focussing on how to build a mobile Linux platform not as a bunch of disconnected static APIs but as a living system of methods and signals mediated via IPC. The “APIs” are entirely exposed through D-Bus and developers interact with system components/services through D-Bus.

SHR (Thomas Zimmerman)

Stable Hybrid Release (SHR) is the Reference UI for FSO1/2. It’s gradually going to phase over to FSO2 (Cornucopia) in 2010. You build an SHR-based image with a single makefile. There are a set of user side daemons:

  • phoneuid: UI daemon which caches views for performance
  • libphone-ui-shr: main UI library providing dialler, contacts, messages

It’s based on X.Org Xserver 1.7.4, E17 Illume (Enlightenment).

An FSO-SHR Conference was planned for 2010.

hackable:1 (David Wagner)

hackable:1 is a Debian distribution for ‘hackable’ devices. It works by maintaining patchsets and building debian packages by downloading vanilla upstream, applying patches, and compiling for specified target. The focus is on providing a stable and easy to use development environment. It provides a much cleaner way of maintaining downstream changes. It provides a basic platform including simple UI. It’s supported by a Parisian openmoko reseller and ISP.

Tracker and SPARQL (Rob Taylor, CodeThink)

Tracker is an RDF semantic store. ie. a “nosql” approach to data storage – even though today it has an sqlite backend. Metadata is associated with a file through tags which can then be queried to present data in interesting ways. Rob demoed a clutter-based applet that was sorting/sifting photos and twitter feeds. It was written in 200 lines of js and backed by a tracker database being queried using SPARQL. See labs.codethink.co.uk.

~

Previously: FOSDEM ’08, FOSDEM 2010, FOSDEM 2011.

Categories: LUG Community Blogs