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.
What is armhf
The official Debian Squeeze image issued by the Raspberry Pi foundation uses "soft float" settings. The foundation found it necessary to use the existing Debian port for less capable ARM devices due to time and resource constraints during development of the Raspberry Pi. Therefore, it does not use of the Pi's processor's floating point hardware - reducing the Pi's performance during floating point intensive applications - or the advanced instructions of the ARMv6 CPU.
Raspberry Pi distributions that are optimized for ARMV6 and are optimizes for "hard float" should have better performance on certain CPU intensive tasks.
There are some info on the news groups that "hard float" optimization can speed up floating point operatins upto 10x, please read detailed discussion on Raspberry Pi forums - http://www.raspberrypi.org/phpBB3/viewtopic.php?p=61497#p61497
|Distribution||Latest||First||Type||License||Memory footprint||armhf||Image/Installer||Packages||Username:Password||default GUI|
|Arch Linux ARM||2012-04-29||2012-03-01||Linux||OSI GPLv2||No||raw image||4,416?||root:root||none|
|Debian ARM||2012-04-19 (Squeeze)||2012-02-16 (Squeeze)||Linux||Core: OSI mixed (GPLv2 BSD etc)||No||raw image||20,000+||pi:raspberry|
|IPFire||2012-06-27 (2.11)||2012-06-27 (2.11)||Linux||Open Source||~20 MiB||No||raw image||Addons system||N/A|
|Fedora Remix||2012-07-07 (F14)||2012-07-07 (F14)||Linux||OSI mixed (GPLv2 BSD etc)||No||Fedora RPM: installer
Windows Zip: installer
Other Linux: Python script
|Meego MER + XBMC||2012-04-27 (0.2)||2012-04-11 (0.1)||Linux (embedded)||OSI mixed (GPLv2 BSD etc)||~34 MiB + XBMC||No||~320 (core)||N/A|
|Risc OS||2012-07-10 (5.19)||2012-07-09 (5.19)||ARM RISC OS||Shared Source||No||System Files
Unofficial SD Card Image
|OpenELEC||2012-07-04||2012-05-10||Linux (embedded)||OSI mixed (GPLv2 BSD etc)||70 MiB (inc. XBMC)||Yes||build instructions
raw image (unofficial)
|~140 (+ 7 via xbmc)||root:openelec
|Raspbian Debian||2012-06-06 (Wheezy)||2012-05-28 (Wheezy)||Linux||Core: OSI mixed (GPLv2 BSD etc)||~30 MiB w/o desktop||Yes||pi image list
|QtonPi||2012-05-27 (0.2)||2012-05-07 (0.1)||Linux||No||qt 5 sdk + sdcard image||root:rootme|
|SliTaz||2012-05-29 (4.0)||2012-05-29 (4.0)||Linux||GPLv2||<~34 MiB||No||raw image||root:root|
|PwnPi||2012-06-29 (Squeeze)||2012-05-26 (Squeeze)||Linux||GNU General Public License version 3.0||No||Image||20,000+||root:root|
|raspbmc||2012-07-05 (Squeeze)||2012-06-30 (Squeeze)||Linux||custom||No||nightlies
The Raspberry Pi Fedora Remix is a Linux software distribution for the Raspberry Pi computer. It contains software packages from the Fedora Project (specifically, the Fedora ARM secondary architecture project), packages which have been specifically written for or modified for the Raspberry Pi, and proprietary software provided by the Raspberry Pi Foundation for device access.
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 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
Raspberry Pi + Debian = Raspbian. A project to create a hard float port of Debian Wheezy (7.x) 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 early June, 2012 (only several hundred packages remain as of June 1st). 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
IPFire is an Open Source firewall distribution for x86 and ARM-based systems. It turns the Raspberry Pi computer into a small router for home networks and very small businesses. As the Raspberry Pi computer comes with only one NIC, it works perfectly as a 3G router without plugging in additional hardware.
The generally small system that provides essential services for networks can be enhanced by addons which add new features to IPFire. So the system can be turned into a file server and much more.
More information is available at http://www.ipfire.org
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.
- OpenELEC Mainsite
- In February 2012, OpenELEC.tv announced their ARM port for Raspberry Pi
- OpenELEC forum thread
- RaspberryPi forum thread
- Raspberry Pi build instructions for OpenELEC
Raspbmc is a minimal Linux distribution based on Debian that brings XBMC to your Raspberry Pi. This device has an excellent form factor and enough power to handle media playback, making it an ideal component in a low HTPC setup, yet delivering the same XBMC experience that can be enjoyed on much more costly platforms. Raspbmc is brought to you by the developer of the Crystalbuntu Linux Distribution, which brings XBMC and 1080p decoding to the 1st generation Apple TV.
OpenWrt is described as a Linux distribution for embedded devices. Initial patches for the support against the latest development version "trunk" has been posted on the openwrt-devel mailing-list.
The following distributions have been announced and may have been publicly demonstrated but distributions are not generally available quite yet.
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.
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).
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.
- RISC OS Open (ROOL) has released the sources. Community members have ported the OS to the BeagleBoard and similar hardware
- In November 2011, RISCOScode.com announced that RISC OS will be available as an alternative OS for Raspberry Pi
- RaspberryPi forum thread
- ROOL forum thread
Bodhi Linux is a small Linux distribution using the Enlightenment window manager and the ARM build is based on Debian.
- what-about-the-raspberry-pi Forum thread
- bodhi-linux-arm-repository-online Developer Blog
- one-year-with-bodhi-linux Developer Blog
These are other popular distributions that are often asked about for Raspberry Pi but are not available.
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.
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
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 is a build framework and cross-compile environment for embedded Linux.
A detailed tutorial by emercer: http://cronicasredux.blogspot.com/2011/09/installing-and-running-debian-armel-on.html
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.
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