Repository

The purpose of this page is to answer some (good) questions and misunderstandings that come up frequently in the community. These questions are:

  1. Where can I find new applications for my Maemo device?
  2. What is this "Extras" I keep hearing about? How about repository and package?
  3. How does maemo.org facilitate application development, testing, and distribution?
  4. Why shouldn't I download .debs or install applications from Extras-devel?
  5. How can I learn more about these resources?

Contents

The Basics

A repository, or "repo" is a library or storehouse of software made available online. All software for Maemo is distributed this way, most of it through the Extras repository hierarchy. Everything stored in the repository is contained in packages.

Benefits

Using a repository system for software has some great benefits:

  • Resolving dependencies When a package is requested to be installed, an application manager can automatically install any other packages the application requires in order to work. These other packages are called dependencies.
  • Update awareness Whenever a new version of the application becomes available, it will automatically be detected by the application manager.
  • Uniformity All users can be sure they have the exact same copy of the software. This makes testing and sharing information about the applications easier, which is good for both the developer and the user.
  • Security Because all software comes from repositories, knowing the requirements for software to get into the repository means knowing the security risks involved when installing software. Compare this with downloading applications from arbitrary websites operated by independent parties. Each and every one of those operators has to be trusted not to provide malicious software.

Repositories and You

Because of the simplicity, safety and convenience of repositories, the only supported way to install applications in Maemo 5 is using an application manager set up to use the repositories. However, no knowledge of this or understanding of repositories is necessary for end users, who can simply browse to the downloads page on their maemo device. The page lists all the applications in the main Maemo repository (Extras) and the user can simply click. The application manager will then automatically handle everything necessary to install the application.

Beyond the Basics

Maemo has a hierarchy of repositories that help the community move forward. New applications are first packaged and uploaded to the Extras-devel repository. They are worked on by developers until they are considered safe for users. At that point, they are "promoted" to Extras-testing. Power users who understand that these packages might still be risky to use and are able to recover from any problems then install and test the packages. When enough testers have given a vote of approval, the packages are again promoted, this time to Extras. They are available to the whole community.

Because of this hierarchy, there may be multiple versions of a package in the repositories: a stable version in Extras, a beta version in Extras-testing, and a development version in Extras-devel.

More technical details for the curious

Debian Package System

Debian has a manual on how to use repositories, which is relevant because maemo applications are distributed using the Debian package system. In the Debian package system, each package is a compressed archive (similar to the well-known "zip" file) with a .deb extension, and has information about its contents and dependencies built into it. When these packages are installed, the application manager maintains records of all of this information, making it easy to uninstall again.

Compatibility

Note that while Maemo uses the Debian package system, the actual contents of the packages are not the same. A .deb package from the Debian project or Ubuntu won't work with Maemo, unless it uses the armel processor architecture.

Individual .debs

When a developer is building a new package, she or he might use one of the Debian utility programs to install the individual package. It is hoped that the preceding discussion was sufficient to convey that this is not an end-user appropriate usage of the Debian package system.

List of Maemo repositories

More info:

diablo repos (copy&paste sources.list)

# nokia is no more, anyone knows a mirror?
#deb http://catalogue.tableteer.nokia.com/certified/ diablo user
#deb http://catalogue.tableteer.nokia.com/non-certified/ diablo user
#deb http://catalogue.tableteer.nokia.com/updates/diablo-2/ ./
# beware, extras is user contributed software:
deb http://repository.maemo.org/extras/ diablo free non-free
# extras-devel is even more risky:
#deb http://repository.maemo.org/extras-devel/ diablo free non-free

fremantle repos (copy&paste sources.list)

# nokia is no more, muarf.org is private mirror
#deb http://maemo.muarf.org/apt-mirror/mirror/downloads.maemo.nokia.com/fremantle/ssu/apps/ ./
#deb http://maemo.muarf.org/apt-mirror/mirror/downloads.maemo.nokia.com/fremantle/ssu/mr0/ ./

# This is another mirror for the same thing as those above. 
#deb http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle/ssu/apps/ ./
#deb http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle/ssu/mr0 ./
# This mirror also includes OVI
#deb http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle1.2/ovi/ ./



# beware, extras is user contributed software:
deb http://repository.maemo.org/extras/ fremantle free non-free
# risky, enable only when needed:
#deb http://repository.maemo.org/extras-testing/ fremantle free non-free
#deb http://repository.maemo.org/extras-devel/ fremantle free non-free
''
## DO NOT INSTALL THIS REPO, IT'S AUTOINSTALLED BY CSSU-INSTALLER AND NOT MEANT TO GET INSTALLED MANUALLY!
# are you a tester?
#deb http://repository.maemo.org/community-testing/ fremantle free non-free
''

Mirrors of standard Nokia repos (using Application manager)

Nokia is no more, maemo.muarf.org is a private mirror.

Catalogue name: Nokia Applications (mirror)
Web address: http://maemo.muarf.org/apt-mirror/mirror/downloads.maemo.nokia.com/fremantle/ssu/apps/
Distribution: ./
Catalogue name: Nokia System Software Updates (mirror)
Web address: http://maemo.muarf.org/apt-mirror/mirror/downloads.maemo.nokia.com/fremantle/ssu/mr0/
Distribution: ./

These two are an alternative mirror, the same as the two above:

Catalogue name: Nokia Applications (mirror)
Web address: http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle/ssu/apps/
Distribution: ./
Catalogue name: Nokia System Software Updates (mirror)
Web address: http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle/ssu/mr0/
Distribution: ./


And this is for OVI:

Catalogue name: Nokia OVI (mirror)
Web address: http://maemo.linenoise.info/downloads.maemo.nokia.com/fremantle1.2/ovi/
Distribution: ./