[Sugar-devel] Regarding the Sugar on Raspberry Pi project

James Cameron quozl at laptop.org
Tue Mar 28 16:40:40 EDT 2023


G'day Simrann,

Running Sugar on Raspberry Pi OS to identify what needs fixing will be
a good thing for Sugar Labs.  It will also feed into and affect the
other proposals and ideas.  There is an opportunity to collaborate
with many others.

Your proposal could include a list of Raspberry Pi focused Linux
distributions you have tested Sugar on, along with the broad outcomes.

On Wed, Mar 29, 2023 at 01:43:04AM +0530, Simrann Arora wrote:
> Hello James,
> 
> Thanks for your quick response.
> 
> From what I understand, `rpi23-gen-image` repository is old so it cannot be
> used for this project.
> I think I should run Sugar on Raspberry Pi OS and identify what is broken/bugs,
> so I can work on fixing them during my GSoC period.
> 
> I will also check out other debian image builders for Raspberry Pi which can be
> leveraged to create Sugar OS images.
> 
> I would also request my mentors @walterbender and @alexperez  to see if my
> understanding is correct and also discuss the hardware requirements to extend
> the functionalities of existing activities like Turtle Blocks, Measure, and
> Pippy.
> 
> Thanks and Best Regards
> Simrann Arora
> GitHub Handle: @simrann20
> *
> On Tue, Mar 28, 2023 at 5:39 AM James Cameron <[1]quozl at laptop.org> wrote:
> 
>     Hello Simrann,
> 
>     I've just now tested [2]https://github.com/drtyhlpr/rpi23-gen-image on a
>     Debian 10 Buster 64-bit system, and it got past the debootstrap stage,
>     compiled a kernel, generated an image, but failed with "losetup:
>     cannot find an unused loop device".  I did not see an exec format
>     error.  The method was;
> 
>     ```
>     apt install -y git debootstrap debian-archive-keyring qemu-user-static
>     binfmt-support dosfstools rsync bmap-tools whois git bc psmisc dbus sudo
>     crossbuild-essential-armhf crossbuild-essential-armel bison flex libssl-dev
>     git clone [3]https://github.com/drtyhlpr/rpi23-gen-image.git
>     cd rpi23-gen-image
>     ./rpi23-gen-image.sh
>     ```
> 
>     I suggest making sure you are using the operating system versions
>     described in the README.md file, and the HEAD of the master branch.
> 
>     Do not use the Sugar Labs fork of the repository, as it is very old.
> 
>     Do engage with the rpi23-gen-image project; it is not part of Sugar
>     Labs, and we have not used it for a while.  Your problem with
>     debootstrap is best answered there, or by reading the debootstrap
>     or Linux source code.
> 
>     I'm not a mentor for Google Summer of Code this year, but I've a few
>     things to say.
> 
>     I doubt that rpi23-gen-image is suitable for your project.  It is for
>     making images.  It is an external tool, and not part of the workflow
>     of either the Raspberry Pi Foundation, Debian Project, or Fedora
>     Project.  These projects use other tools to prepare their images,
>     based on their package archives.
> 
>     Sugar is available for Raspberry Pi on Debian, Fedora, and Raspberry
>     Pi OS already.
> 
>     Raspberry Pi OS does not include Sugar in the images, but it can be
>     installed.  This is because Raspberry Pi OS is based on Debian.
> 
>     The Fedora Sugar on a Stick images are available for Raspberry Pi.
> 
>     The number of organisations involved that are not Sugar Labs makes
>     your project a challenge.  Mentors working for Sugar Labs can't easily
>     affect the other projects or make resources available for you.  You
>     should ask your mentors to better define the scope, without creating
>     work dependencies on other organisations.
> 
>     Sugar on Raspberry Pi does have several bugs, and does not have
>     Raspberry Pi specific extensions.
> 
>     Fixing those bugs is a matter of either (a) fixing our software in a
>     Sugar Labs repository, (b) fixing packaging in the Fedora or Debian
>     Projects, and (c) waiting for the fixes to reach the released images.
>     That wait always exceeds the time available for Google Summer of Code.
> 
>     Adding features specific to the Raspberry Pi is important.  For that,
>     you will need a Raspberry Pi, and electronics components and tools.
>     If you've worked on Arduino previously, this will be easy.  You will
>     write software in Sugar Labs repositories, such as Turtle Blocks,
>     Measure, and Pippy.
> 
>     References:
> 
>     [4]https://arm.fedoraproject.org/
>     [5]https://spins.fedoraproject.org/en/soas/
>     [6]https://fedoraproject.org/wiki/Architectures/ARM/Raspberry_Pi
>     [7]https://github.com/sugarlabs/sugar/blob/master/docs/rpi-soas.md
>     [8]https://github.com/sugarlabs/sugar/blob/master/docs/rpi.md
>     [9]https://github.com/sugarlabs/sugar/blob/master/docs/debian.md
>     [10]https://wiki.sugarlabs.org/go/Raspberry_Pi
> 
>     On Tue, Mar 28, 2023 at 03:09:48AM +0530, Simrann Arora wrote:
>     > Hi Mentors, 
>     >
>     > Hope you all are doing well!
>     >
>     > My name is Simrann Arora and I am an aspiring GSoC 2023 contributor. I
>     have
>     > been actively trying to contribute to the 'Sugar on Raspberry Pi' project
>     that
>     > has been selected for GSoC this year. As far as my progress is concerned,
>     till
>     > now I have completed the following tasks: 
>     > - Setting up Debian version 11(bullseye) VM on my mac using Parallels
>     Desktop,
>     > earlier I had installed Ubuntu 23.04 using VMware Fusion
>     > - Cloning the rpi23-gen-image repo for building Sugar OS image.
>     > - I tried running the rpi23-gen-image builder script but I am getting
>     this
>     > error:
>     > ```
>     >  chroot: failed to run command '/debootstrap/debootstrap': Exec format
>     error.
>     > ```
>     >
>     > I did some research to fix this, and found out that it might have
>     occured due
>     > to the architecture mismatch of the chroot environment and the command
>     that I
>     > am using to run the script, like suppose the chroot environment is 64-bit
>     and
>     > the executable is 32-bit. Another reason could be that the executable is
>     not
>     > compatible with the OS or the linux distro within the chroot environment.
>     >
>     > - To fix this, I created a chroot environment of Debian version 9
>     (stretch)
>     > within my Debian 11 distro to make it compatible with the
>     `rpi3stretch-sugar`
>     > template as given in the `rpi23-gen-image` repository and cloned it.
>     > However, when I ran the script, I encountered the same error:
>     > ```
>     >  chroot: failed to run command '/debootstrap/debootstrap': Exec format
>     error. 
>     > ```
>     >
>     > To further troubleshoot this, I tried installing the `binfmts support`
>     and
>     > enabling qemu-arm within the chroot. 
>     > Again I got an error:  `update-binfmts: warning: qemu-arm not in database
>     of
>     > installed binary formats. `
>     >
>     > Now to fix this one I tried reinstalling qemu-user-static and enabling it
>     but
>     > it says that it might be possible that this package isn't installed in my
>     > system's repo or I need to use another repo for the same.
>     >
>     > I would like to request the mentors to guide me further on this and
>     discuss the
>     > next steps of implementation and the project requirements. 
>     > I am very keen on working on this project, gaining in-depth understanding
>     on
>     > this and taking it further.
>     >
>     > Also, as the proposal deadline is just around the corner, I would be
>     really
>     > grateful if I could connect with all the mentors on a Zoom/GMeets call to
>     > discuss the project
>     >
>     > Thanks a lot
>     > Simrann Arora
>     > GitHub Handle - @simrann20
>     >
>     > *
> 
> References:
> 
> [1] mailto:quozl at laptop.org
> [2] https://github.com/drtyhlpr/rpi23-gen-image
> [3] https://github.com/drtyhlpr/rpi23-gen-image.git
> [4] https://arm.fedoraproject.org/
> [5] https://spins.fedoraproject.org/en/soas/
> [6] https://fedoraproject.org/wiki/Architectures/ARM/Raspberry_Pi
> [7] https://github.com/sugarlabs/sugar/blob/master/docs/rpi-soas.md
> [8] https://github.com/sugarlabs/sugar/blob/master/docs/rpi.md
> [9] https://github.com/sugarlabs/sugar/blob/master/docs/debian.md
> [10] https://wiki.sugarlabs.org/go/Raspberry_Pi


More information about the Sugar-devel mailing list