Planet maemo


A good time to try Firefox for Metro

2013-11-10 17:20 UTC  by  Unknown author
Firefox for Mobile Firefox for Mobile A good time to try Firefox for Metro - November 10 from Matt Brubeck - Comment - Like

Passing the Torch for AGTL

2013-11-07 20:00 UTC  by  webhamster
About four years ago I created the first code for AGTL. It was built on previous experience I made with a very simple geocaching application for Android. Ever since, I kept AGTL running, first on the Openmoko Freerunner, then on the Nokia N900 (still a great phone!) and finally on the Nokia N9. And ever since, I had less time than I wanted to fix bugs, create new features and to stay in contact with you, the community.

A few days ago, I switched from the Nokia N9 to the Dark Side, a.k.a., Android (Nexus 5). With this switch I lost the ability to test new version of AGTL on the N9 and to use the software for myself (still the best method for finding bugs). Therefore, I decided to lay the responsibility for AGTL into the hands of somebody else. I decided to name Aapo Rantalainen as the new maintainer for AGTL. He caught my attention with many helpful bug reports and patches for AGTL, so I decided to pass the torch to him. Apparently, this has already paid off: Aapo made a lot of commits during the last days, fixing bugs and applying patches that I didn't have time for.

I hope to be able to help here and there with AGTL, and to stay up-to-date on its further development. New versions will be announced on this website.

Thanks to Aapo for taking the responsibility and to all the other people that provided me with bug reports, feature suggestions and (sometimes also monetary) input during the last years! It was definitely a great time and its not over yet!
Michael Sheldon

Eyrie for Ubuntu Touch

2013-11-07 00:15 UTC  by  Michael Sheldon


Eyrie is a music identification program that I originally created for the Nokia N9 but which I’ve now also ported to Ubuntu Touch. It works in a similar way to commercial applications like Shazam and SoundHound, listening to music through the phone’s microphone and then generating an acoustic fingerprint using the open source EchoPrint algorithm. Currently the EchoPrint database isn’t anywhere near as large as the various commercial offerings, so it won’t recognise everything, but it has reasonable coverage.


Video of Eyrie running on Ubuntu Touch


To install Eyrie on Ubuntu Touch simply search for “Eyrie” on your phone and it should appear.

Categories: Development


2013-11-05 00:00 UTC  by  Benoît HERVIER

I've just release a new version of Tirelire 1.1.0. This minor release add a settings page, so you ll be able to set the currency symbol for the money you use.

Felipe Contreras

Demystifying the init system (PID 1)

2013-11-04 16:23 UTC  by  Felipe Contreras

With all the talk about debian choosing a default init system (link, link), I’ve decided to share with the world a little project I’ve been working on to help me understand /sbin/init aka. PID 1.

Click to read 4904 more words
Categories: Linux

A SailfishOS Co-creators Community in 2014?

2013-11-03 21:24 UTC  by  stskeeps
Click to read 6099 words
Alberto Mardegan

Mappero: public source code, CLA, Qt5 port

2013-11-03 17:55 UTC  by  Alberto Mardegan
Mappero has always been distributed under a GPL licence. However, since when I started selling Mappero Geotagger (which is built from the same source), I decided not to publish the source code in a public repository, but only to provide it to those who made an explicit request to obtain it.

I spent some time reconsidering the matter, and I've finally decided to let the source code live in a public repository. I also setup a mailing list for it. And indeed I welcome code contributions, however there's a small catch: a CLA. While Mappero is distributed under the GPLv3 licence, I request that all contributors send me an e-mail in which they give me the right to re-licence their contribution under any licence published by the Free Software Foundation.

Since I believe that the busiest time for my involvement with speculo has passed, I expect to be able to spend some more time developing Mappero. The qt5 port is more or less working, but most of the cool features are missing, so it's little more than a map viewer at the moment (Mappero Geotagger, however, is fully working under Qt5!).

Here you can see Mappero running on an Ubuntu Touch powered Nexus 4. Pinch zooming and GPS are not yet working, but I promise they'll be there in less than a week. Also I found a nasty bug which can cause the application to crash when downloading map tiles, and I'll fix it ASAP (I'm mentioning it just so that I won't be flooded with identical bug reports now :-) ).
Categories: english
Alberto Mardegan

speculo, or shared memory made easy

2013-11-02 15:41 UTC  by  Alberto Mardegan
The last few months I've been dedicating most of my (very little) free time to a new project: speculo, a library which implements IPC (Inter-Process Communication) on top of shared memory. Since developers appreciate conciseness and minimalism, here's a description of speculo in a few bullet points:
  • written in C
  • POSIX (tested in Linux and FreeBSD)
  • small (~850 LOC)
  • well commented (~400 lines)
  • good test coverage
  • zerocopy
  • lockless
  • one writer, many readers
  • data is written and read in chunks of arbitrary size
  • a data chunk becomes visible to the readers as soon as the writer commits it
  • data chunks can have an expiration time
  • data chunks can be obsoleted by a newer copy
  • garbage collector
  • no file descriptors are permanently kept open
  • no change notification
But here I probably need to write some paragraphs to explain a couple of points.  Except for a few memory addresses which hold the state of the memory area and which are atomically updated and guarded with memory barriers, all the data written to the shared memory object is immutable. This in particular guarantees that readers have a consistent access to the data, which will not change under their eyes. Data chunks are only appended, which means that the shared memory object can only grow. However, data chunks can be marked as expired (if they have an expiration time associated with them) or obsoleted (if a new chunk is said to replace their contents), which means that not all of the data which is written in the SHM object is actually valid. The readers' functions know this, and skip over the invalid data.
At some point the garbage collector will kick in, when the conditions specified by the writer are met or when the SHM area is completely full. All the chunks which are still valid will be copied over to a new SHM object, and then the SHM objects will be atomically switched. Readers will be able to complete their ongoing reads, and transparently move on to the new SHM object as they request to read a new data chunk.
Click to read 682 more words
Categories: D-Bus

Q4 2013 Community Council Election Update

2013-11-01 19:57 UTC  by  chemist

due to the lack of nominees we decided to extend the nomination period by one month.

From the merger with HiFo-Council we furthermore need to extend the election process by another week, adding a one-week contemplation period.

We are extending the acceptance of nominations till the end of the day 2013/11/30 (GMT).

Contemplation will start 2013/12/01 ending with the end of the day 2013/12/07 (GMT).

The Election then starts 2013/12/08. You will be notified with an election-token within the week before.

For detailed information on upcoming elections, general information about the process and if you are an eligible person to vote or as candidate - see:
Election Process

On behalf of the Maemo Community Council

Best regards
Ruediger Schiller
Community Council Chair

Categories: council


2013-10-26 00:00 UTC  by  Benoît HERVIER

I ve just release a new software for Harmattan: Tirelire. A fast, easy to use, and simple expenses tracker.

Currently available only for Meego / Harmattan, port for SailfishOS and Nemo Mobile planned.


MainPage ExpensePage MonthYearPicker

More informations


ownNotes 1.1.0 New Package

2013-10-25 00:00 UTC  by  Benoît HERVIER

Following the update of the Sailfish SDK, with the availability of the ARM compilation, i ve packaged ownNotes for ARM for SailfishOS. You can find it in the downloads section.

The Sailfish and Harmattan version are also available on

More informations on ownNotes

Robin Burchell
QMake users: public service announcement. If you use CONFIG+=ordered, please stop right now. If you don't, I'll hunt you down. I promise to god I will.

There is simply no reason to use this, ever. There's two reasons this might be in your project file:
  1. you have no idea what you are doing, and you copied it from somewhere else
  2. you have a target that needs to be built after another target, and you don't know any better
If you fit into category 1, then I hope you're turning red right now, because by using CONFIG+=ordered, you're effectively screwing over multicore builds of your code. See a very nice case of this here.
If you fit into category 2, then you're doing it wrong. You should specify dependencies between your targets properly like this:
TEMPLATE = subdirs
SUBDIRS = src plugins tests docs
plugins.depends = src
tests.depends = src plugins

And then you'll have docs built whenever the build tool feels like it, and the rest built when their dependencies are built.

If you have subdirectories involved in this, then you need an extra level of indirection in your project, but it's still not rocket science:

TEMPLATE = subdirs
src_lib.subdir = src/lib = sub-src-lib

src_plugins.subdir = src/plugins = sub-plugins
src_plugins.depends = sub-src-lib

SUBDIRS = src_lib src_plugins

For those of you wondering why I sound frustrated about this, I've fixed so many instances of this by now that it's just getting old and tired, frankly. And I still keep running into more. That's countless minutes of wasted build time, all because of laziness boiling down to a single line. Please fix it.
Categories: C++