RaspbmcCrystalbuntu

Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Debianize raspbmc ?
06-28-2012, 12:24 AM
Post: #1
Debianize raspbmc ?
Hi Sam/all

First of all, congratulations for the nice job on Raspbmc !!! :)

I have been using OpenELEC at the raspberry pi (even building myself from git) but my setup isn't something that I want to write to my SD card and forget it hidden behind my TV and failing the purpose of being an experimentation platform. Won't extend further my comment on OpenELEC beyond of : Making changes to OpenELEC is a PITA. I gave up trying to debug connman to make some changes to my network setup, or trying to figure out how to make it possible to have a console login.

Then I've found Raspbmc, which by being a debian sysadmin I've found quite well known to use, edit files, etc... but ...

What about making Raspbmc more "debian" like, i.e., what about providing the xbmc setup (and its dependencies) through debian packages? Having the Broadcom drivers as a package, the linux kernel as another (maybe more complicated because of the different partition, but should be possible).

AFAIK, Raspbmc (and other Raspberry PI linux distros) is made of :
1. bootloader, specific to the bcm chip (vfat partition)
2. kernel, including patches from raspberry pi foundation (vfat partition)
3. debian root fs (the images we have could be assembled with debbootstrap couldn't ? )
4. kernel modules and additional files (generated from item 2)
5. XBMC and dependencies to work (libraries, python, etc.)

Is there any reason why not making items 2,4,5 (and dependencies) as debian packages, using the "debian" way (buildd) of crosscompiling, leaving most of the cases of upgrade to be a matter of apt-get update/upgrade ?

My point is .. I would like to have a raspberry pi with just a plain debian OS, play with it, install stuff from armel arch from debian, maybe a webserver, python and pyramid ... whatever .. If I would like to fire xbmc in it, why not then just apt-get install xbmc (with apt sources added pointing to raspbmc) ? If you want to make it all automatic run for the end user, why not a xbmc-rpi package that would setup the proper init scripts, etc etc ?

Unless it isn't possible to provide a common debian "base" for xbmc and any other usage (apart from changing the bootloader to provide more RAM and less video RAM if you don't want xbmc).

My "problems" with Raspbmc :
1. I don't live in UK :) I live in Germany, don't speak german and I use a US keyboard. the supplied image have a uk keyboard layout setup on it. Installing console-data and setting it up for US wasn't a big deal after I've found that @ needs altgr+q :)
2. debian stable packages aren't good for everyone (even more things that gets updated really often. It's common to lack a lot of latest drivers), having a buildd would be able to build packages for stable/testing/unstable.
3. Don't know what was setup at those images. As a sysadmin, I would like to "rebuild" the install than to download a img from a torrent file hosted at some cyberlocker and put that into my network. An example, I would rather setup /etc/network/interfaces with my wifi than to use NetworkManager :).

I'm asking this because I'm thinking about setting up a crosscompiling environment and try to provide those packages that need to be added/overwritten to a normal debian installation at the raspberry pi but I wouldn't wish to duplicate the efforts that have been spent on Raspbmc and made it such a nice thing :D

AFAIK having packaged software shouldn't be difficult to provide a virtual-package that deploy everything you have now at Raspbmc images and additional scripts/config can always be provided by a specific package.

Let me know your thoughts on this.

Cheers,
Find all posts by this user
Quote this message in a reply
06-30-2012, 12:31 AM
Post: #2
RE: Debianize raspbmc ?
Your problems can be solved very, very easily.

1. dpkg-reconfigure locales, dpkg-reconfigure tzdata, etc.
2. you can use sid or unstable by changing sources.list quite easily. Stable might not fit everyone's need, but it'll fit most.
3. Go to SVN > testing > oscore and build your own rootFS then. Nothing is at all stopping you from doing so. You can choose whatever packages you want included and if you want to make changes, patches welcome.

I'm not using Debian's APT system because Raspbmc wouldn't work great with this. There is a great differentiation from Debian, and while almost all of the Debian packages in the repository are available, the system is a little different. E.g. providing a deb package would be difficult for everything, as these deb packages would need to change the core OS. Let us then consider, that for automatic updating, we would have to apt-get update EVERY boot, which would be incredibly slow.

If you want XBMC on Debian, then you can do so, by building XBMC using my wiki instructions, ldd'ing xbmc.bin and apt-get installing the dependencies, pulling the other deps down from the download server.

Cheers
Visit this user's website Find all posts by this user
Quote this message in a reply
07-10-2012, 10:36 AM
Post: #3
RE: Debianize raspbmc ?
hi,

where can i get the built-filesystem from yout wiki? http://www.raspbmc.com/wiki/technical/building-xbmc/

http://download.raspbmc.com/downloads/so...-r9.tar.gz seems to be down.

thank you
Find all posts by this user
Quote this message in a reply
07-10-2012, 10:45 AM
Post: #4
RE: Debianize raspbmc ?
It is not. Make sure your DNS is up to date
Visit this user's website Find all posts by this user
Quote this message in a reply
07-10-2012, 11:50 AM
Post: #5
RE: Debianize raspbmc ?
ok, you're right ... it's working now. i just reconnected my internet.

Can i take a minimal Debian and then start your HowTo, or do i have to install additional stuff?
Find all posts by this user
Quote this message in a reply
07-10-2012, 01:53 PM
Post: #6
RE: Debianize raspbmc ?
(06-30-2012 12:31 AM)Sam Nazarko Wrote:  I'm not using Debian's APT system because Raspbmc wouldn't work great with this. There is a great differentiation from Debian, and while almost all of the Debian packages in the repository are available, the system is a little different. E.g. providing a deb package would be difficult for everything, as these deb packages would need to change the core OS. Let us then consider, that for automatic updating, we would have to apt-get update EVERY boot, which would be incredibly slow.

If you want XBMC on Debian, then you can do so, by building XBMC using my wiki instructions, ldd'ing xbmc.bin and apt-get installing the dependencies, pulling the other deps down from the download server.

Sorry, I don't get some parts of what you mentioned.
Afaik the main difference from Debian already built packages and raspberry pi optimized was that they target a generic armv7 arch whereas raspberry pi targets a armv6 + hardFP ABI. I understand that involves rebuilding the packages for the whole debian system, toolchain, etc, . Was for this reason you mentioned Debian APT System doesn't work great ?
I don't get why running updating on every boot.
Normally with a packaging system one can:
1. Update whenever you want / have time. If you are demoing the device to a friend, it doesn't try to update when it powers on and then screw up your demo at the worst time possible.
2. Check which packages are going to updated and maybe skip superfluous ones if you are in a hurry and only update what matters
3. Rollback
4. Always decompress them in a faster linux machine and only run the post-install/triggers on raspberry pi.

I will make some experiments if the time allows me and have some performance comparisons between openelec, raspbmc and a debian+xbmc.

One (not related) thing I've enjoyed on OpenELEC was the read-only system partition that won't crash if you power off the device without shutting down (at least not to a point it won't boot). I've plan to have my raspberry pi straight from my TV USB power. Many times I've powered it off before the Pi and had to fsck Sad (user data is stored over the network).

As mentioned before, don't take me wrong. I've enjoyed using raspbmc but I don't want to start a new "yet another raspberry pi debian" image and go through the same issues that others might already learned from it.

Cheers,
Find all posts by this user
Quote this message in a reply
07-10-2012, 03:24 PM
Post: #7
RE: Debianize raspbmc ?
Quote:Sorry, I don't get some parts of what you mentioned.
Afaik the main difference from Debian already built packages and raspberry pi optimized was that they target a generic armv7 arch whereas raspberry pi targets a armv6 + hardFP ABI. I understand that involves rebuilding the packages for the whole debian system, toolchain, etc, . Was for this reason you mentioned Debian APT System doesn't work great ?

it's built for x11 not fb and omx. It's a bad package and will NOT run on the Pi properly.
Quote:I don't get why running updating on every boot.
Normally with a packaging system one can:
1. Update whenever you want / have time. If you are demoing the device to a friend, it doesn't try to update when it powers on and then screw up your demo at the worst time possible.
2. Check which packages are going to updated and maybe skip superfluous ones if you are in a hurry and only update what matters
3. Rollback
4. Always decompress them in a faster linux machine and only run the post-install/triggers on raspberry pi.
1. Disable updates
2. Updates come in related packages, this pick and mix will cause issues with users and get rid of simplicity.
3. Updates are approved by a quality assurance team, yet you can dd the image you have at any time to preserve its state.
4. Decompressing a kernel takes around 20 seconds.. Using a Linux box to handle things WILL complicate the process unnecessarily.
And if you want ro then mount FS are ro and mount .xbmc/temp to a network share or tmpfs and done.

It sounds like you should maybe roll your own distribution
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)

Sponsored Advertisement