Community SSU

Report bug



[edit] What is it?

Seamless Software Update (SSU), is the term Nokia formerly used for over-the-air updates of Maemo (generally marketed as Maemo Update as of Maemo 5).

The Community Seamless Software Update (CSSU) is being developed by the Maemo community as a continuation of, and expansion on, Nokia's update support. It aims to deliver fixes which would be difficult to deliver through Extras (like core Maemo packages). It won't, however, bundle software which can (or could) be installed through the Extras repositories.

There are two such efforts for the Maemo platform. This page describes the one for Fremantle (Maemo 5, as used in the Nokia N900). The Diablo Community Project is doing the same for Diablo (Maemo 4.1, as used in the Nokia N800, N810 and N810 WiMAX Edition).

So this CSSU is the recommended update method for Maemo 5 Fremantle. It's not a new version of maemo distribution.

[edit] Whom is it for?

[edit] Everyone

Since the release of the stable branch CSSU-S is meant to be the LongTermSupport hotspot for all N900 users/owners.

Maximum compatibility for all N900 owners is CSSU primary guidance.

[edit] Testers

Power-users, developers, Nokia/Maemo/MeeGo engineers, testers, documentation writers and those willing to risk a re-flash in order to help can still install the testing version and stay as bleeding edge as possible inside CSSU universe, not implying CSSU will be the bleeding edge and pacemaker of development away from maemo5 towards something above and beyond (that's not what CSSU is meant to be and never will be, see above note about maximum compatibility).

[edit] Thumbers

Tired of the N900's memory bottleneck, look no further. CSSU-Thumb is reducing code size by compiling packages with Thumb2 ISA.

CSSU-Thumb is based on CSSU-Testing flavor, but uses a very low level patch to kernel to overcome the bugs in OMAP chip related to thumb/ARM mixed code. Thus the binaries from CSSU-Thumb will not work in a "normal system", and several things like uBoot or flashing --flash-only=kernel stop working the way they used to, and you need to take special care regarding the changed behaviour of those. If you don't, our system might start segfaulting like mad and probably not even boot up anymore. Thus to go back from thumb-enabled kernel to stock- or any other non-thumb-kernel is not an option for CSSU-Thumb users. Generally this solution is deprecated for you if you don't feel familiar with kernel installation stuff.

Main article: Community SSU/Thumb

CSSU-Thumb Thread

[edit] Installation

"Newbie" Video Tutorial:

Another nice one (I (jr/docS) prefer it better):

Nevertheless read this full page as well, before starting CSSU installation, so you understand what it's all about.

Note that both videos show installation (and features) of CSSU-T - for (on first glance missing) features of CSSU-S see


There's no way to "uninstall" CSSU! Although you hardly ever want to do that. So:

  1. [NEW]: Since original Nokia system repositories vanished together with Nokia, please see to get working source of core system components. You'll need that to satisfy dependencies of packages you're going to install during the process.
  2. Install backupmenu . Do a full backup of your system, by rebooting with keyboard open. Get your battery charged up to state "green". All this is not mandatory but highly recommended, as usual. Plug in wallcharger. Get a softdrink of your choice :-)
  3. If you haven't done yet (unlikely): Upgrade to at least PR1.3, Nokia's last official major Maemo 5 update. PR1.3.1 is fine as well. If you're unsure if you have, Settings > About product should show Version beginning with 20.2010.36(PR1.3) or 21.2011.38(PR1.3.1). Make sure you have no too weird catalog settings in Application manager, esp it's recommended you never disable the core Nokia SSU repositories. see 1.
  4. In case you have modified hildon-desktop installed (you will know when you did that) remove it before taking further steps, all your settings will work since cssu does include all m-h-d changes. Rebooting the N900 prior to next step is probably a good idea, to make sure no memory hogs or anything is running. Make sure your device has a working connection to internet prior to next step, preferably via WLAN or a high bandwidth 3G data connection.
  5. Open this page in N900 webbrowser. Think a minute if you want to be a tester supporting CSSU bleeding edge, or you rather need a rock solid CSSU, then click on the according Install stable or testing icon at top of this page, or directly on the links in this very sentence.
  6. Hildon Application Manager (HAM) will launch and begin processing (be patient as nothing seems to happen for some minutes). There are a series of installations for which it will prompt you with messages and warnings. Click "Accept" and "Done" for each to install.
  7. Once this is completed, close HAM and go into the applications menu. Tap the Community SSU icon. This will run through a series of scripts to ensure the community repository are set up.
  8. HAM will re-open and present you the real thing: a system upgrade called Maemo 5 Community SSU - probably you want to install it ;-D. This will take a while. Once installed, your device will reboot "into" CSSU.
  9. If you installed the stable version and have edited your transitions.ini before installing, then you'll find your old settings in the file /usr/share/hildon-desktop/transitions.ini.precssu. You can either just copy it over the new one and miss out on the new features, or incorporate your changes.

Problems? Check the Installation FAQ

[edit] Features

Main article: Community SSU/Features

Main article: Community SSU/FeaturesStable

You find there how to use new features such as Thomas Perl's hildon-desktop improvements and the status of applications in Portrait Mode with forcerotation.

[edit] Changelog

Main article: Community SSU/Changelog

Main article: Community SSU/ChangelogStable

lists all changes from stock PR1.3 to CSSU and between various CSSU releases.

[edit] Contributing

Get involved on IRC (#maemo-ssu), Talk, Bugzilla and Github.

Can you write documentation? If so, it'd be great to flesh out the wiki page with installation instructions (to make it easy for users to install without worrying about missing a step or getting it wrong); explain more about the SSU and generally spruce up the wiki page and maintain things like the changelogs etc.

Were you involved in developing Maemo? If so, with Nokia now looking to Harmattan and MeeGo, we'd love to see your itches addressed in the Community SSU (CSSU). Have you always wanted to implement something in hildon-desktop, but Management stood in your way? We'd love to have it!

Have you written a patch for Maemo? Raise a bug and let's get it in the CSSU.

Are you a developer? There are numerous patches floating around for hildon-desktop; but they can't be included in the CSSU until they are configurable (via gconf) and default to off.

Want to test? Not only testing this release, but writing test scripts so that each release of the CSSU can get sanity checked before unleashing it into a "stable" repo for end-users. How do we do it? What should be tested? How is it organised?

Want to organise? There's still lots of process left to organise; hopefully there'll be bugs and features to triage and manage in as well as communication of the testing, releases and end-user readiness of the CSSU.

Have great ideas? If you have suggestions that you think could be picked up by the CSSU developers, please add them here: CSSU Requests. However see the notice above about CSSU not going to include anything that better gets implemented as a normal app. Nonetheless CSSU actually will host apps that are specific to CSSU core system, the orientation-lock applet being first of a possibly ever increasing number.

For more information: contact MohammadAG on #maemo-ssu on FreeNode IRC or

[edit] QA and bugs

Main article: Community SSU/QA

Quality is of paramount importance to the Community SSU. There are, therefore, two repositories: testing and stable. Changes are carefully tested, with an extensive set of tests, before things are made "stable". Packages in cssu-testing are supposed to be crafted and tested to be in a shape where the contributor and cssu maintainers expect them to pass those tests for "stable".

If you have found a bug, in either the testing or stable releases, please raise a bug. Getting involved through testing, bug triaging and running of the tests is a good way to get involved; as, of course, is writing documentation!

[edit] Development

Main article: Community SSU/Development

The Community SSU is developed and managed through Github. Bugs are tracked in Bugzilla. Collaboration largely happens on IRC. Getting involved through development, bug triaging and managing developers is a good way to get involved.