RPi Distributions

From eLinux.org
Revision as of 14:04, 1 June 2012 by Theinternetftw (talk | contribs) (Forgive me if I'm wrong here, but I think the Wheezy for RISC OS on the old table was misplaced, and meant for Raspbian)
Jump to: navigation, search


Back to the Hub.


Software & Distributions:

Software - an overview.

Distributions - operating systems and development environments for the Raspberry Pi.

Kernel Compilation - advice on compiling a kernel.

Performance - measures of the Raspberry Pi's performance.

Programming - programming languages that might be used on the Raspberry Pi.

Available Distributions

Operational Systems for Raspberry Pi models A and B
Arch Linux ARM Debian ARM Fedora Remix Meego MER + XBMC Risc OS OpenELEC + XBMC Raspbian QtonPi SliTaz
Latest version 29/04/2012 Squeeze

(19/04/2012)

F14 Remix R1 Wheezy 0.2 4.0
29/05/2012
First version 01/03/2012 Squeeze

(16/02/2012)

F14 Remix R1 F14 Remix R1 Wheezy 0.1 29/05/2012
Type Linux Linux Linux Linux (embedded) ARM RISC OS Linux (embedded, hard float) Linux (hard float) Linux
License OSI GPLv2 Core: OSI, mixed

(GPLv2, BSD, etc)

OSI, mixed

(GPLv2, BSD, etc)

OSI, mixed

(GPLv2, BSD, etc)

Shared Source OSI, mixed

(GPLv2, BSD, etc)

Core: OSI, mixed

(GPLv2, BSD, etc)

GPLv2
Memory footprint ~34 MiB + XBMC 80 MiB (inc. XBMC) ~30 MiB w/o desktop <~34 MiB
Image/Installer raw image raw image Fedora RPM: installer

Windows Zip: installer
Other Linux: Python script

build instructions

install instructions
raw image

pi image list

qemu image

qt 5 sdk + sdcard image raw image
Packages 4,416? 20,000+ 16,464? ~320 (core) ~140 33,000+
Default login Username: root Password: root Username: pi Password: raspberry Username: root Password: fedoraarm Username: root Password: openelec

(Shell access only possible via SSH)
Username: root Password: hexxeh (Hexxeh image)

Username: root Password: raspbian (Pisces image)
Username: root Password: rootme

Username: qtonpi Password: qtonpi
Username: root Password: root

Fedora Remix

As announced on February 20, 2012 [1]: Raspberry Pi Fedora Remix 14, developed by Seneca College, is the recommended distribution for newcomers to Raspberry Pi and day-to-day use. Pre-loaded SD cards with this distribution are planned to be available at some point after the initial launch through the Raspberry Pi Store.

Eben says (regarding default distribution): "Either Ubuntu or Fedora; the main point in Fedora’s favour is their ongoing support for ARMv6 architectures."

http://fedoraproject.org/wiki/Architectures/ARM

As of October 15 2011: the Raspberry Pi alpha board boots Fedora F13 (armv5tel) to a character-mode login prompt in about 23 seconds, taking 14-17MB of memory. XFCE and LXDE graphical environments are both available (but more work on the X drivers is needed). F15-ARM will be tested as its release date approaches in November. A 1-minute video is available at [2]. Video about Seneca College and Fedora on Raspberry Pi: [3]

Link: to Raspberry Pi Fedora Remix wiki pages [4]


What is the Raspberry Pi Fedora Remix?

The Remix is a distribution comprised of software packages from the Fedora ARM project, plus a small number of additional packages that are modified from the Fedora versions or which cannot be included in Fedora due to licensing issues – in particular, the libraries for accessing the VideoCore GPU on the Raspberry Pi.

The SD card image for the Remix includes a little over 640 packages, providing both text-mode and graphical interfaces (LXDE/XFCE) with an assortment of programming languages, applications, system tools, and services for both environments. There are over 16,000 software packages available from the Fedora ARM repositories which can be easily installed using the Internet to customize your system to meet your needs and interests (again, using either command-line or graphical tools).

Some of the highlights of the software included in the SD card image:

  • Programming languages: python, perl, ruby, bash
  • Version control: git
  • System administration tools (command line and/or graphical) for configuring various aspects of the system including the network, date/time, users, and printers
  • Command-line and graphical tools for installing/removing/updating software

ssh (secure remote login) and printer services

  • Graphical applications: word processing (AbiWord), spreadsheets (Gnumeric), image editing (GIMP), and web browsing (Firefox)
  • Editors for programming: vim (text mode) and gedit with plugins for file management, terminal, and python console (graphical mode)


The Kernel

The Kernel provided in the Remix image is the Raspberry Pi 3.1.9 kernel from GitHub, with a combined Fedora/Raspberry Pi configuration file. This configuration includes the devices in the System-on-a-Chip, modular support for most USB devices and optional network features, and kernel features expected by Fedora packages, including IPv6.


Raspberry Pi Libraries

The Raspberry Pi proprietary libraries, headers, and utilities, included in /opt/vc in the Debian image, are installed into regular system locations in the Fedora Remix image (/usr/lib for libraries, /usr/include for headers, and /usr/bin and /usr/sbin for utilities). This reflects the fact that these files are part of the core distribution and not a third-party add-one.

The source code for the demonstration multimedia apps is contained in the /usr/share/vc-demo-source directory. Instructions for compiling and using these apps is on the Raspberry Pi Fedora Remix wiki documentation (see link, below).


Repositories

The kernel, GPU firmware, start-up scripts, and proprietary libraries/headers/demo source are all provided by RPM packages. This software, along with all of the Fedora packages, can be installed/removed/reinstalled/updated from online software repositories. This means that if new GPU firmware or multimedia libraries become available, they can be installed with a simple update command (“yum update”) or a mouse click on the graphical software updater.

The Remix is distributed as four separate pieces, carried by three separate mirror networks:

  • The SD card image files are being mirrored by the Raspberry Pi community’s mirror network.
  • The Velocix content delivery network is mirroring the installer program plus the Raspberry Pi-specific remix package repositories.
  • The Fedora mirror network is mirroring the Fedora ARM package repositories.

Many thanks to Liam Fraser and the sites comprising the three mirror networks.


The Future of the Raspberry Pi Fedora Remix

From Chris Tyler (Seneca College, part of the Fedora Project) on 8th March 2012 :

"The Fedora ARM project is hard at work building Fedora 17, which we hope to release concurrently with the PC versions in May. This should be the most complete Fedora ARM release produced to date.

Students in the SBR600 course at Seneca College are working to on an improved version of the Remix incorporating files from Fedora ARM 17, and this will also be released in May.

The Fedora ARM project has the goal of achieving primary architecture status during the Fedora 18 development cycle — which means that, from that point on, the ARM build of Fedora will receive the same priority and be released on the same schedule as the PC (x86) versions.

As this project progresses, we anticipate moving most of the Raspberry Pi-specific software packages into the main Fedora ARM project, except where prevented by licensing issues."


More Information

Release notes, information on where/how to get help or to get involved, FAQ about the Remix, and more are on the Seneca CDOT wiki at http://cdot.senecac.on.ca/raspberrypi.


A Quick Word on Trademarks

Important note from Chris Tyler :

"This software distribution is counted as a “Fedora Remix” in the terminology of the Fedora project because it contains software not found in the Fedora package collection. Please do not refer to the Remix as “Fedora” or use the Fedora infinity logo or wordmark in conjunction with the remix – please refer to it as a “Fedora Remix” and use the secondary mark in accordance with the Fedora Trademark Guidelines. (Note that we have specific approval to use the Secondary Mark with a modified colour scheme to match the Raspberry Pi logo)."

Debian (Squeeze)

http://www.debian.org/ports/arm/

Debian was the default distribution on the Alpha boards. Boot time depends on width & speed of SD-card. Alpha board boot into Debian prompt (no GUI) was timed taking about 34 seconds.

The Debian distro for Raspberry Pi is the Cambridge reference filesystem, which is a fully functional Debian Squeeze installation containing LXDE (desktop) and Midori (browser); development tools; and sample code for accessing the multimedia functionality on the device.

Arch

Arch Linux ARM is based on Arch Linux, which aims for simplicity and full control to the end user. It provides a lightweight base structure that allows you to shape the system to your needs. For this reason, the Arch Linux ARM image for the Raspberry Pi does not come with a graphical user interface, though you can easily install one yourself. There is a step-by-step guide for installing Arch with the Enlightenment desktop. Please note that the Arch distribution may not be suitable for beginners.

Arch Linux ARM is on a rolling-release cycle that can be updated daily through small packages instead of huge updates every few months.

More information is available at http://archlinuxarm.org

Raspbian

Raspberry Pi + Debian = Raspbian. A project to create a hard float port of Debian Wheezy armhf for the Raspberry Pi. The intent of Raspbian is to bring to the Raspberry Pi user 10,000s of pre-built Debian packages specifically tuned for optimal performance on the Raspberry Pi hardware. The project is still in it's early phases, but the major push to rebuild nearly all Debian packages for the Raspberry Pi is expected to be completed by the end of May, 2012. After that, efforts will focus on making Raspbian the easiest to use, most stable and best performing Linux distribution available for the Raspberry Pi.

More information is available at http://www.raspbian.org

Announced distributions

The following distributions have been announced and may have been publicly demonstrated but distributions are not generally available quite yet.

Gentoo

Gentoo Linux is a computer operating system built on top of the Linux kernel and based on the Portage package management system. It is distributed as free and open source software. Unlike a conventional software distribution, the user compiles the source code locally according to their chosen configuration. There are normally no precompiled binaries for software although for convenience some software packages (such as Mozilla Firefox and LibreOffice) are also available as precompiled binaries for various architectures where compiling would otherwise be very time consuming.

Discuss: http://www.raspberrypi.org/forum/?mingleforumaction=viewtopic&t=462

KidsRuby

KidsRuby is what it sounds like – a Ruby for kids – and it’s running beautifully on the Raspberry Pi. This is exactly the sort of application we want to see on the device, and we’re really pleased to see it up and running. It looks like there will be some optimisation for speed before we launch, but what’s there already is very useable.

R.Pi blog entry: http://www.raspberrypi.org/2011/09/kidsruby-on-raspberry-pi-another-video-demo/ More info & Video: http://confreaks.net/videos/637-gogaruco2011-kidsruby-think-of-the-children?player=html5

Meego MER & XBMC

The MeeGo MER project provides a Linux-based, open source software platform for the next generation of computing devices. The MeeGo MER software platform is designed to give developers the broadest range of device segments to target for their applications, including netbooks, handheld computing and communications devices, in-vehicle infotainment devices, smart TVs, tablets and more – all using a uniform set of APIs based on Qt. XBMC is an award-winning free and open source (GPL) software media player and entertainment hub for digital media. Meego TV 1.2 uses XBMC as a reference GUI (that is, a starting point for creating a custom GUI).

OpenELEC

OpenELEC is an embedded operating system built specifically to run XBMC, the open source entertainment media hub. The idea behind OpenELEC is to allow people to use their Home Theatre PC (HTPC) like any other device you might have attached to your TV, like a DVD player or Sky box. Instead of having to manage a full operating system, configure it and install the packages required to turn it into a hybrid media center, OpenELEC is designed to be simple to install, manage and use, making it more like running a set-top box than a full-blown computer.

Puppy

Puppy is the number one small Linux. Puppy Linux is going back to his roots. Designed to run from 256MB ram. Making every bit count. Join the Puppy geek adventure for 2012. Woof Woof

RISC OS

RISC OS is a fast and lightweight computer operating system designed in Cambridge, England by Acorn. First released in 1987, its origins can be traced back to the original team that developed the ARM microprocessor. RISC OS includes BBC BASIC which was primarily conceived to teach programming skills as part of the BBC computer literacy project.

Bodhi Linux

Bodhi Linux is a small Linux distribution using the Enlightenment window manager and the ARM build is based on Debian.

Other Distributions

These are other popular distributions that are often asked about for Raspberry Pi but are not available.

Android

http://www.arm.com/community/software-enablement/google/solution-center-android/index.php

Discuss: http://www.raspberrypi.org/forum/?mingleforumaction=viewtopic&t=144

GeeXboX ARM

GeeXboX is a free and Open Source Media-Center purposed Linux distribution for embedded devices and desktop computers. GeeXboX is not an application, it’s a full-featured OS, that one can boot as a LiveCD, from a USB key, an SD/MMC card or install on its regular HDD. The GeeXboX distribution is lightweight and designed for one single goal: embed all major multimedia applications as to turn your computer into an HTPC.

http://www.geexbox.org/category/arm/

Ubuntu

Ubuntu was initially planned to be the default distribution, but the current version of Ubuntu only supports ARMv7 onwards, not the ARMv6 architecture used by the Raspberry Pi's processor. Therefore Ubuntu does not work on Raspberry Pi, and there is no further information about this changing in the near future.

A bug report on this subject was submitted to Ubuntu's bug tracker. The responses to that bug include an unofficial viewpoint from a Canonical employee, outlining the amount of work required to support ARMv6 (and therefore, potentially, Raspberry Pi). See Bug 848154

https://wiki.ubuntu.com/ARM

Development environments

Instead of just using a compiler and editor, you can use a complete image to create "development tool chains" which integrate compiler, build system, packaging tools etc. in one tool chain.

OpenEmbedded

OpenEmbedded is a build framework and cross-compile environment for embedded Linux.

http://openembedded.org/

QEMU

A detailed tutorial by emercer: http://cronicasredux.blogspot.com/2011/09/installing-and-running-debian-armel-on.html

Discuss:

Scratchbox

Scratchbox is a cross-compilation toolkit designed to make embedded Linux application development easier. It also provides a full set of tools to integrate and cross-compile an entire Linux distribution. To find out what it can do, take a look at some of the documentation.

http://www.scratchbox.org/

There is now an Oracle Virtualbox VM image with a scratchbox2 install inside.

More details and discuss: http://www.raspberrypi.org/forum/?mingleforumaction=viewtopic&t=454

Eclipse

Mamona

EMBINUX