diff options
| -rw-r--r-- | source/desktop/index.rst | 1 | ||||
| -rw-r--r-- | source/desktop/verifying_debian_arm_installer_images/index.rst | 64 | ||||
| -rw-r--r-- | source/microcontrollers/index.rst | 1 | ||||
| -rw-r--r-- | source/microcontrollers/raspberry_pi_pico/index.rst | 42 | ||||
| -rw-r--r-- | source/self_hosting/modern_xmpp_server/index.rst | 14 |
5 files changed, 115 insertions, 7 deletions
diff --git a/source/desktop/index.rst b/source/desktop/index.rst index 0ba8afc..353278f 100644 --- a/source/desktop/index.rst +++ b/source/desktop/index.rst @@ -8,3 +8,4 @@ command_line_printing/index desktop_environment/index + verifying_debian_arm_installer_images/index diff --git a/source/desktop/verifying_debian_arm_installer_images/index.rst b/source/desktop/verifying_debian_arm_installer_images/index.rst new file mode 100644 index 0000000..44e13e6 --- /dev/null +++ b/source/desktop/verifying_debian_arm_installer_images/index.rst @@ -0,0 +1,64 @@ +*************************************** + Verifying Debian Arm Installer Images +*************************************** + +Most ARM SBCs aren't able to boot the plain debian installer images, so +they require a custom per-board concatenateable image, and these don't +have a convenient ``SHA256SUM`` + ``SHA256SUM.sign`` file to verify them. + +There is however a chain of verifiability (to the keys distributed in +the debian-archive-keyring package), and this is the non-trivial +procedure to verify them. + +1. Download the images from + https://deb.debian.org/debian/dists/trixie/main/installer-armhf/current/images/ + (choose either hd-media or netboot, then SD-card-images and download + the ``firmware.*`` file for your board as well as + ``partition.img.gz``). + +2. Download the checksums file + https://deb.debian.org/debian/dists/trixie/main/installer-armhf/current/images/SHA256SUMS + +3. Download the Release file from + https://deb.debian.org/debian/dists/trixie/InRelease + +4. Verify the Release file:: + + gpg --no-default-keyring \ + --keyring /usr/share/keyrings/debian-archive-keyring.pgp \ + --verify InRelease + +5. Verify the checksums file:: + + awk '/installer-armhf\/current\/images\/SHA256SUMS/ {print $1 " + SHA256SUMS"}' InRelease | tail -n 1 | sha256sum -c + + (There is probably a way to skip the tail command and use just awk) + +6. Verify the actual files, for ``hd-media``:: + + grep hd-media SHA256SUMS \ + | sed 's#hd-media/SD-card-images/##' \ + | sha256sum -c --ignore-missing + + and for ``netboot``:: + + grep netboot SHA256SUMS \ + | sed 's#netboot/SD-card-images/##' \ + | sha256sum -c --ignore-missing + + and check that all of the files you wanted are there with an OK + +The same procedure can be used to verify arm64 images by changing armhf +to arm64 everywhere. + +See also +======== + +* `Vagrant on the debian-arm mailing list + <https://lists.debian.org/debian-arm/2023/02/msg00001.html>`_ +* `My blog post where I wrote these instructions the first time + <https://blog.trueelena.org/blog/2023/02/02-how-to-verify-debian-arm-installer-images/index.html>`_ + +.. + vim: set filetype=rst: diff --git a/source/microcontrollers/index.rst b/source/microcontrollers/index.rst index 3e6fc88..f02a334 100644 --- a/source/microcontrollers/index.rst +++ b/source/microcontrollers/index.rst @@ -9,3 +9,4 @@ maple_mini/index olimex-esp32-c3-devkit-lipo/index olimex-esp32-pro/index + raspberry_pi_pico/index diff --git a/source/microcontrollers/raspberry_pi_pico/index.rst b/source/microcontrollers/raspberry_pi_pico/index.rst new file mode 100644 index 0000000..63870c6 --- /dev/null +++ b/source/microcontrollers/raspberry_pi_pico/index.rst @@ -0,0 +1,42 @@ +******************* + Raspberry Pi Pico +******************* + +Some notes on using the Raspberry Pi Pico series. + +Circuitpython +============= + +The official documentation_ from adafruit is pretty comprehensive; these +are just quick notes with easy to copypaste frequently used commands. + +.. _documentation: https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/overview + +I2C +--- + +There is no board.I2C(), to use i2c instead see the pinout_ diagram to +find a pair of pins with an available I2C port (I2C0 or I2C1, both +available on multiple pins) and then:: + + import board + import busio + i2c0 = busio.I2C(scl=board.GP1, sda=board.GP0) + +.. _pinout: https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/pinouts + +SPI +--- + +Like I2C, you can use any set of pins labelled SPI0 or SPI1 on the +pinout_ and then e.g.:: + + import board + import busio + spi0 = busio.SPI(clock=board.GP2, MOSI=board.GP3, MISO=board.GP4) + +See also +======== + +.. + vim: set filetype=rst: diff --git a/source/self_hosting/modern_xmpp_server/index.rst b/source/self_hosting/modern_xmpp_server/index.rst index 3c09bc8..4ac2bef 100644 --- a/source/self_hosting/modern_xmpp_server/index.rst +++ b/source/self_hosting/modern_xmpp_server/index.rst @@ -27,7 +27,7 @@ reached with ejabberd_ and other servers. .. _ejabberd: https://www.ejabberd.im/ I'm also targetting Debian_ stable (+ backports_); currently that's -bookworm and prosody 0.12. +trixie and prosody 0.13. .. _Debian: https://www.debian.org .. _backports: https://backports.debian.org/ @@ -58,7 +58,7 @@ the following to explicitely set a certificate location:: certificate = "/etc/ssl/public/example.org.pem"; key = "/etc/ssl/private/example.org-key.pem"; } - legacy_ssl_ssl = { + c2s_direct_tls_ssl = { certificate = "/etc/ssl/public/example.org.pem"; key = "/etc/ssl/private/example.org-key.pem"; } @@ -175,16 +175,16 @@ syncronize message history between multiple clients (XEP-0313) You can also add the following line to enable rich media transfers via http uploads (XEP-0363_):: - Component "upload.chat.example.org" "http_upload" + Component "upload.chat.example.org" "http_file_share" The defaults are pretty sane, but see -https://modules.prosody.im/mod_http_upload.html for details on what +https://prosody.im/doc/modules/mod_http_file_share for details on what knobs you can configure for this module; you may want e.g. to change the maximum file size limit and setup an expiry date:: - Component "upload.chat.example.org" "http_upload" - http_upload_file_size_limit = 1024 * 1024 * 2 - http_upload_expire_after = 60 * 60 * 24 * 7 + Component "upload.chat.example.org" "http_file_share" + http_file_share_file_size_limit = 1024 * 1024 * 2 + http_file_share_expire_after = 60 * 60 * 24 * 7 .. _XEP-0363: https://xmpp.org/extensions/xep-0363.html |
