Posts mit dem Label rant werden angezeigt. Alle Posts anzeigen
Posts mit dem Label rant werden angezeigt. Alle Posts anzeigen

Dienstag, 27. Dezember 2011

Argh Ovi Store and COBS (and stray .debs in Forums)! ..or: I want my Maemo Extras back

Rant mode on (once again). The reason why gPodder 3.0.2, which has been released two weeks ago has not yet made it into Ovi Store is not because I was lazy (in fact, I uploaded the .deb on the same day as the release day, i.e. 2011-12-13) but because it took Ovi Store QA one whole week(!) to realize that the gPodder package isn't optified. Guess what? Optification isn't really needed by Harmattan anymore, and the Ovi Store has passed all previous gPodder releases which have been packaged exactly the same. Apparently they decided it's necessary this time.
Cool, so now I have to modify my packaging, and Marius' maemo-optify isn't in the Madde environment of the Qt SDK (and I'm not even sure if the package would be accepted then).

For some other reason, my gPodder 3.0.2 package hasn't yet been accepted in Apps For MeeGo even though I've submitted two requests already (and one should be enough?). Add to that that the Community OBS is not really easy to understand or use, but then maybe it's just my incompetence and other developers have no problem with it. It might also be overkill now that nobody cares about building against all these dead MeeGo UXes. The only thing I want to build my stuff against is the latest Harmattan release.

Contrast that to the simplicity, ease of use and clarity of Maemo Extras and its fabulous autobuilder. While it had its own problems, it was surely easier to use, and you knew where the packages came out, and the Maemo 5 Extras QA process has been fine-tuned for several months now. Can't we just have the same for Harmattan? :/

Oh, and by the way: I'd much rather trust an Extras repository (or even the OBS if need be) with a Community-driven QA and building on the server (with sources readily available for the interested!) than the Ovi QA - my Calenderr Hack, which modifies .desktop files of Nokia-provided built-in packages was uploaded by somebody else (I still haven't seen the full source of that package, and only found out that it has been uploaded by a post in the forum thread..) to Ovi Store, and it got accepted.

Bonus question: Which is the most comprehensive software directory for Harmattan? Answer: My-MeeGo.com's ad-infested Software Catalog, mixing Ovi Store links with deeplinks to .debs on some random web servers (and doing a very good job at it, they got most of my Ovi apps/games and random .debs listed). They even got lots of user comments that provide good feedback for developers, while apps.formeego.org looks nice and is ad-free, but contains a whopping 10 stable apps in its directory for the N9, with 14 more apps waiting for review. Because apparently it's hard to come up with something like Maemo.org Downloads for Harmattan.

Montag, 26. Dezember 2011

Tedious fragmentation (maemo.org / meego.com)

Rant mode on. It's really tedious to hunt down information about Harmattan. It's not really MeeGo (and MeeGo Is Dead(tm), anyways) and it's not branded as Maemo, even though it's Maemo. Yeah. It's not really Maemo, but it is. And it's not really MeeGo, but it is branded as such.

Wiki. The Wiki pages are split between maemo.org and meego.com. For example, there's the ARM/N950 page on meego.com and the Nokia N950 page on maemo.org. Oh, and if two Wikis are not enough, have a look at the MeeGo 1.2 Harmattan category on Nokia Developer's very own Wiki. Add to that the Qt Developer Network Wiki content for N950 and you have information spread onto 4 different Wikis. So, where are YOU going to add information?

Forums. Next up are the forums. You know the drill. It's called Handset on forum.meego.com and MeeGo/Harmattan on talk.maemo.org. And if you feel more like a Nokia fanboy, discuss on developer.nokia.com. Or troll(tech) your Qt love on Qt's own Mobile and Embedded Forum.

Repositories. Writing apps is supposedly easy. Publishing them is hard. What will it be? Nokia Store Publish to reach the masses? Or the not-so-well-known Apps for MeeGo? And independent of where you publish your packages, if it's an open source package it's hard for users to track down the sources of your package (which you really should make easily accessible).

Hosting. The good old Maemo Garage still provides good service, the MeeGo Garage never materialized, but is still advertised on meego.com. Nokia Developer obviously also has an offering for you: projects.developer.nokia.com allows you to host stuff (but apparently has been down for a few weeks recently). The rest of the projects is spread between private web pages and Gitorious/Github.

Yes, choice is good. But right now, everything is more complicated than it should be. In the Good Old N900 Times(tm), we gathered information on wiki.maemo.org, discussed on TMO (which was Internet Tablet Talk merged into the maemo.org domain - while not without resistance, this was IMHO a good move) and had the Maemo Garage and the awesome Maemo Extras for all our repository/packaging needs. Granted, the OBS might be better suited for building packages than the Extras Autobuilder, but i'm missing a package interface a'la packages.debian.org for Harmattan which is available for Maemo 5.

The other question is: How long will meego.com hosting be funded, and how long will maemo.org hosting be funded? Wouldn't it make sense to deprecate one of them for Harmattan content and try to move content from the deprecated one to the preferred one?

We (as the Harmattan Community, which I would see as the collective of N950 and N9 users and developers) are a small community, so we should focus our energy on one collaboration place/domain instead of splitting everything between maemo.org and meego.com. I don't want to announce new things on two different pages/forums, don't want to check two different places for new content and publish packages to two different repositories.

Mittwoch, 15. Dezember 2010

The Qt promise and what Maemo 5 needs

(tl;dr: Nokia should provide updated Qt packages as official SSU for Maemo 5.) Before I start, here are some facts (correct me if I'm wrong):

  • The N900 runs the Maemo 5 operating system
  • Maemo 5 received some updates (the latest one being PR1.3)
  • We don't really expect PR1.4 to come out any time soon, if at all
  • The MeeGo Handset images from meego.com are inferior to Maemo 5 and not a replacement (and never will be)
  • The MeeGo operating system on the first Nokia MeeGo handset will have a proprietary UX and proprietary apps, and won't be available for the N900

In summary, it means: We are stuck with Maemo 5 on the N900. And that is a good thing! Lots of useful apps, a helpful community (if you subtract the trolls) and a polished OS. Sure, there's room for improvement, and lots of open bugs that should be fixed, but that's another issue (which will ideally be solved by open sourcing closed components with bugs that Nokia isn't interested in fixing anymore and by the Community SSU). This one is about Qt.

Two days ago, an e-mail was sent to maemo-community, proposing a "community service pack", which basically is a big pile of workarounds. Read my response for some initial thoughts.

When Qt arrived on Maemo 5, the promise was two-fold:

  • Write your apps in Qt and you're ready for MeeGo (apps written now will run on the platform released in the future)
  • Maemo 5 gets Qt support, so MeeGo apps will run on the N900 (apps written in the future will run on the platform released now)

It turns out that the first one will probably hold true (surely with QML, maybe even with QWidget), while the second one is doubtful, as Maemo 5 has only got Qt 4.7.0 through the official channels (PR1.3), with no real official update in sight. If you use QML, use QtQuickCompat as workaround ("Qt Qml plugin that reregisters all “Qt 4.7” types in the “QtQuick 1.0” namespace … useful if you’re forced to stay with 4.7.0 (e.g. on N900), but still want to use the new namespace.").

There is also a real bug (yes, a bug!) in Qt 4.7.0 on the N900, and the fix isn't released as update - it's a new package: libqt4-bearer-hotfix ("This is a hotfix for the broken ICD package in Qt 4.7.0. It can be removed once Qt mobility 1.1 is released."). Now, the proposed "Community service pack" would combine all these fixes into a single dependendable metapackage (yes, a new one). It becomes the "Unbreak my Qt" feature that every app developer has to depend on and specify in the packaging.

This is wrong! No developer targetting MeeGo who has not heard about Maemo 5 will go through all those ugly workarounds and spend a week fixing things up for Maemo 5 just so that the app works. Now imagine what would happen if the first MeeGo device also introduces such kludges once it falls out of its support life cycle. Or what if the problems on Symbian are similar, and developers have to special-case things there. Not only for Symbian^3, but also for S60v5? Fragmentation.

How to avoid fragmentation? Simple: Provide Qt as a "feature" with a quicker release cycle that can be updated every month if need be. Provide Qt updates also for operating systems that don't get updates for the OS anymore. Here's my proposal:

  • Provide SSU updates for Maemo 5 for Qt (and Qt Mobility) through official channels (that's the important part here!)
  • A new Qt (and Qt Mobility) release should be available on all platforms (Maemo 5, S60v5, Symbian^3, MeeGo) at the same time through official (end-user approved) channels
  • Apps targetting stores and repositories (Maemo Extras, Ovi Store, MeeGo Apps/Downloads) should be able to depend on the latest Qt (and Qt Mobility) version

Without that, you'll get fragmentation similar to Android: The 1.5, 1.6, 2.1 versions are similar to Qt 4.6, Qt 4.7.0 and Qt 4.7.1 (for example). Again, you don't need to update the OS, just update the framework - through official channels!

Freitag, 19. Februar 2010

Want MæPad 1.2? Vote for bug 9070!

MæPad 1.2 is out now, and includes (apart from bugfixes and usability fixes) some cool new features such as word wrapping, mass-removal of all checked items and the often requested "share your sketches" feature that allows you to upload sketches to Flickr or send via E-Mail or Bluetooth.

Sadly, the "share your sketches" feature makes MæPad build-depend on the "sharing-dialog-dev" package, which is not available in the auto-builder. Anyway, with MæPad 1.2 you can upload useful or even pointless sketches directly to hosting services:

If you want to get MæPad 1.2 into Maemo Extras, please vote for bug 9070. Alternatively, you can grab the armel .deb for MæPad 1.2 from the MæPad website.

In other news, the MæPad Git repository and MæPad on Transifex are now online, so if you want to contribute code or translations, please feel encouraged do so (send me your Transifex username, so I can add you to the MæPad project there to allow uploads).