Debian Derivative Optimized for the Raspbery Pi Released
sfcrazy writes "The Raspberry Pi foundation has announced the release of the first SD card image based on the Raspbian distribution. The image will make it easier for Raspberry Pi users to switch from 'generic' Debian Squeeze to this 'optimized' image."
The new image is based on Wheezy and optimized for ARM with floating point instructions, and supersedes the Squeeze based soft float image. Benchmarks show much improvement in performance, and the updated software in Wheezy generally improves the usability of the Raspberry Pi.
The bigger performance problem so far are the X window system device drivers.
Right now it seems the driver is just a frame-buffer driver and the CPU does all the work,
and is not using the GPU.
Until they write accelerated drivers, the performance will by slow.
Unless you just want a phone that works and costs $35. Not everyone has unlimited money to buy phones that have processing power that mostly exists for bragging rights.
Because its optimized for the Raspberry Pi hardware and the tweaks it uses are likely to be near worthless for most other hardware. Its like all the distributions that were coming out for the EEE PC (first low cost netbook to gain popularity) which had the main advantage of being really easy to install/use on the particular platform. In other words, instead of spending a few hours configuring Debian to optimize it for my hardware I can just install a simple OS.
Taxation is legalized theft, no more, no less.
They haven't changed much code, only recompiled it with different settings, so there isn't anything to push back to Debian.
Check here: http://www.raspberrypi.org/downloads
in girum imus nocte et consumimur igni
By this logic every deal the Sales Dept. makes is 'subsidized' depending on customer. RPi got a sweetheart DEAL, not subsidization.
Good-bye
This leads one to the question... underpowered for what exactly?
Buy the right hardware for your project. If this doesn't fit then don't buy it. Buy the ODroid-X, which is a quad core 1.4 Ghz if that is better.
PI is giving me a platform to cheaply learn some stuff, so it fits my needs fine.
It is weird when you are fixing someones XP pc and you realize that your phone has 2x the memory, a faster processor and screen with slightly more pixels than theirs. A good kind of weird.
Is the domain being hosted by 1,000 Pi's in a cloud cluster?
sudo make me a sandwich
It was explained way back in the early days how it's being done.
Broadcom originally agreed to keep the fab running when they get a big order and produce a small number of extra chips which they'll sell to the foundation for the bulk price.
Why not contribute the changes you make back to main line Debian?
Well it's not much of a fork, much more a port.
The debian foundation has two ARM binary versions, the 'performance' version (armhf) that's compiled for ARMv7 or better chips, and the 'compatible' (armel) version that's compiled for IIRC ARMv4 or better.
One of the reasons the pi is so cheap is it uses an older SoC, based on ARMv6. The cortex chipsets A9 you see in say, the iphone or samsung SoC are ARMv7 instruction set based. So up to now, the standard raspberry pi debian distro was the vanilla armel squeeze, with a wheezy armel beta. However, the pi ARMv6 does have floating point hardware that allows for 'hardfloat' compilation rather than the 'softfloat' compilation option - which is used in the ARMv7 version of debian, but not the armel version. Using the hardware support for floating point calculation is obviously faster than doing it in software emulation, thus the new port to take advantage of every little bit of performance you can get out of the $5 SoC on the pi.
So raspbian is basically debian ARM, but all the binary packages have been recompiled with the hardfloat option to take advantage of the floating point hardware; they're using wheezy as the target, which is current debian testing IIRC. It's debian armhf, but compatible with the v6 pi. The Debian Foundation weren't interested in supporting a 3rd version of debian on ARM hardware, which is entirely fair enough - the amount of people interested in an ARMv6 with hardfloat who aren't using the pi is going to be very small, though they can of course run raspbian on their hardware too if they also have ARMv6 with hardware floating point; it's not like debian are rolling in money themselves. They were happy for a 'roll your own' version though, which is what has happened.
Last I checked, the raspbian project team (which is basically two guys) had successfully compiled basically everything in the debian package tree, along with keeping up to date with the constantly changing nature of debian testing; they had a compile farm running continuously to keep up, and the setup is worth reading about when the raspbian site comes back; it's a tiny operation that's giving hundreds of thousands of pi owners a significantly faster default distro on a shoestring budget. I think it's brilliant, and is an excellent example of why open source is so awesome. Want an entire OS and software custom compiled to get every ounce of performance out of the hardware? Go for it! And look, these guys have done it for you!
Remember kids, it's all fun and games until someone commits wholesale galactic genocide.
From the Raspbian FAQ:
For the great majority of Raspbian users, for practical purposes the answer is "No". Packages from the Debian repositories cannot and should not be used with Raspbian. However, if you really know what you are doing and can deal with a file system that may no longer boot, it may be possible to get certain select Debian packages working with Raspbian. The rest of this answer deals with how that might be done.
Debian armel packages use the soft float ABI which is incompatible with the hard float ABI used by Raspbian. In theory it should be possible to install Debian armel packages in parallel with Raspbian packages using multiarch. However multiarch setups conflict with a hack we had to make to support the videocore libraries and there are other potential issues too. As such we don't currently recommend or support multiarch configurations with Debian armel and Raspbian armhf.
Debian armhf packages should be compatible with raspbian packages but a system with such a mixture WILL NOT RUN ON THE PI. Furthermore there may be corner cases where libraries build slightly differently on Raspbian. Such mixed systems can be useful for development (they were used heavily in the process of creating Raspbian) but are not recommended for general use.
Architecture independent ("arch all") packages are compatible between Debian and Raspbian. Source packages should in general be compatible though some may need modification to adjust compiler settings (most Debian packages just use the compiler defaults but some use their own settings for various reasons).
Good question, the changes we make in raspbian come into basically three categories.
1: changing compiler defaults. Theese can't be pushed upstream until/unless the debian tools get an understanding of flavours*. This is a subject I intend to bring up on the debian mailing lists in-time but it may well cause a flamewar.
2: hacks, it's inevitable that when you have only two people doing a project on this scale that you will run into issues that you don't have the manpower to solve properly and so have to hack around to keep things moving forward. Such hacks include things like reducing optimisation levels, using non-default gcc versions and disabling testsuites. I don't think debian would want these changes.
3: proper bugfixes, I do try and push these back to debian where possible.
We do not intend to be a fork, the VAST majority of source packages are imported from debian and rebuilt with no source changes whatsoever.
* a flavour is a variant that is binary compatible but has different minimum CPU requirements.
note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
For the record we are NOT cross-compiling. We are building natively on arm hardware (though admittedly not on Pis)
note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register