summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/desktop/index.rst1
-rw-r--r--source/desktop/verifying_debian_arm_installer_images/index.rst64
-rw-r--r--source/microcontrollers/index.rst1
-rw-r--r--source/microcontrollers/raspberry_pi_pico/index.rst42
-rw-r--r--source/self_hosting/modern_xmpp_server/index.rst14
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