Differences between revisions 4 and 5
Revision 4 as of 2020-03-23 15:51:59
Size: 4428
Editor: HolgerLevsen
Comment: add instructions how to check the sha256 sum against the gpg signature
Revision 5 as of 2020-03-23 15:52:49
Size: 4438
Editor: HolgerLevsen
Comment: fix formatting
Deletions are marked like this. Additions are marked like this.
Line 46: Line 46:
{{{
Line 57: Line 58:
}}}

Debian buster should be able to run on all of the Raspberry Pi ≤3 models, but there are a few issues preventing us from releasing an official image:

  • We need to more thoroughly test the Raspberry's hardware:
    • At least Raspberry Pi 0W, 2 and 3B+ are known to boot. Model 1 is not yet tested; other submodels are expected to work (but testing and documenting them is necessary!)

    • 3B+ image reliably supports the wlan interface; 0W's not yet
  • The Bluetooth module is untested everywhere :-/
  • We definitively don't want to ship a non-preview image with a default password!
  • The new (June 2019) Raspberry Pi 4 is not yet supported (the kernel does not yet have a Device Tree for it)

Longer-term improvements:

  • The hardware still needs a non-free binary blob to boot (included in the raspi3-firmware package). A free software replacement is being worked on but development is stalled.

Any help on these issues is very welcome!

Preview images

First, lets set up some environment variables matching your needs. First, the raspberry model — It can currently be 0w, 2 or 3. If it's a 0w:

$ export RPI_MODEL=0w

Second, where is your SD card detected in your computer? Lets say, it's /dev/sdf:

$ export SD_CARD=/dev/sdf

Now, get the image you need:

$ wget https://people.debian.org/~gwolf/raspberrypi/20190628/20190628_raspberry-pi-${RPI_MODEL}_buster_PREVIEW.img.xz

It is recommended to check the image was correctly downloaded by comparing its SHA256:

$ wget https://people.debian.org/~gwolf/raspberrypi/20190628/20190628_raspberry-pi-${RPI_MODEL}_buster_PREVIEW.img.xz.sha256
$ sha256sum -c 20190628_raspberry-pi-${RPI_MODEL}_buster_PREVIEW.img.xz.sha256
20190628_raspberry-pi-0w_buster_PREVIEW.img.xz: OK

You can also verify this SHA256 sum is the same Gunnar has:

$ LANG=C gpg --verify 20190628_raspberry-pi-3_buster_PREVIEW.img.xz.sha256.asc 
gpg: Signature made Sat Jun 29 06:19:48 2019 CEST
gpg:                using RSA key 7C795E5399688DDF66F7D62049DD2A4E4979619C
gpg: Good signature from "Gunnar Eyal Wolf Iszaevich <gwolf@debian.org>" [full]
gpg:                 aka "Gunnar Eyal Wolf Iszaevich <gwolf@gwolf.org>" [full]
gpg:                 aka "Gunnar Eyal Wolf Iszaevich (Instituto de Investigaciones Econ�micas UNAM) <gwolf@iiec.unam.mx>" [full]
gpg: WARNING: not a detached signature; file '20190628_raspberry-pi-3_buster_PREVIEW.img.xz.sha256' was NOT verified!
$ cat 20190628_raspberry-pi-3_buster_PREVIEW.img.xz.sha256.asc |grep img.xz
98970fa80eb55a9245cd99605e2b372236ed80d3ada85231b2293a6bec634557  20190628_raspberry-pi-3_buster_PREVIEW.img.xz
$ sha256sum  20190628_raspberry-pi-3_buster_PREVIEW.img.xz
98970fa80eb55a9245cd99605e2b372236ed80d3ada85231b2293a6bec634557  20190628_raspberry-pi-3_buster_PREVIEW.img.xz

Now, write the image to your SD card! Make sure $SD_CARD is right! (you risk losing information otherwise!)

$ xzcat 20190628_raspberry-pi-${RPI_MODEL}_buster_PREVIEW.img.xz | dd of=${SD_CARD} bs=64k oflag=dsync status=progress

If resolving client-supplied DHCP hostnames works in your wired network, you should be able to log into the Raspberry Pi using SSH after booting it (otherwise, you can only log in from the console):

$ ssh root@rpi3
# Password is “raspberry”

Of course, we want to come up with a better way to do this than shipping a network-listening service with a preset root password :-Þ

For the sources of this image (and/or for customizing your own build), please see https://salsa.debian.org/raspi-team/image-specs

Installation

It’s not necessary to dump a prebuilt image onto the SD card. You can use the configurable builder used to create the images linked above or a simple shell script creating Raspberry Pi 3B+ arm64 (or armhf) images to create your own image file or install straight to the SD card, from another running GNU/Linux machine.

This avoids problems with things like preset passwords, machine IDs, lack of random bytes/entropy, …