diff --git a/.woodpecker/codespell.yml b/.woodpecker/codespell.yml new file mode 100644 index 0000000..ae9229d --- /dev/null +++ b/.woodpecker/codespell.yml @@ -0,0 +1,22 @@ +# SPDX-FileCopyrightText: 2023 The "Notes on OpenPGP" project +# SPDX-License-Identifier: CC0-1.0 + +clone: + git: + image: woodpeckerci/plugin-git + settings: + lfs: false + +when: + branch: draft + event: + - push + - pull_request + +steps: + codespell: + image: archlinux:latest + commands: + - pacman -Sy --needed --noconfirm archlinux-keyring + - pacman -Syu --needed --noconfirm codespell make + - make -C book codespell diff --git a/book/.codespellrc b/book/.codespellrc new file mode 100644 index 0000000..24cc09d --- /dev/null +++ b/book/.codespellrc @@ -0,0 +1,5 @@ +# SPDX-FileCopyrightText: 2023 The "Notes on OpenPGP" project +# SPDX-License-Identifier: CC0-1.0 + +[codespell] +skip = ./build,./source/diag/*.svg diff --git a/book/Makefile b/book/Makefile index 63b6cb7..a4c41c9 100644 --- a/book/Makefile +++ b/book/Makefile @@ -6,9 +6,11 @@ # You can set these variables from the command line, and also # from the environment for the first two. +CODESPELL ?= codespell SPHINXOPTS ?= -W SPHINXBUILD ?= sphinx-build LYCHEE ?= lychee +PRINTF ?= printf SOURCEDIR = source BUILDDIR = build @@ -19,6 +21,14 @@ help: html-linkcheck: clean html @$(LYCHEE) "$(BUILDDIR)/html/"*.html +# spell check all sources +# NOTE: diagrams are not yet spell checked, but we emit the required changes +codespell: + @$(PRINTF) "The following change suggestions are only warnings! (Please don't fix them)\n" + @$(CODESPELL) source/diag || true + @$(PRINTF) "The following change suggestions are errors!\n" + @$(CODESPELL) . + .PHONY: help Makefile # Catch-all target: route all unknown targets to Sphinx using the new diff --git a/book/make.bat b/book/make.bat deleted file mode 100644 index f8a278d..0000000 --- a/book/make.bat +++ /dev/null @@ -1,38 +0,0 @@ -:: SPDX-FileCopyrightText: 2023 The "Notes on OpenPGP" project -:: SPDX-License-Identifier: CC0-1.0 - -@ECHO OFF - -pushd %~dp0 - -REM Command file for Sphinx documentation - -if "%SPHINXBUILD%" == "" ( - set SPHINXBUILD=sphinx-build -) -set SOURCEDIR=source -set BUILDDIR=build - -%SPHINXBUILD% >NUL 2>NUL -if errorlevel 9009 ( - echo. - echo.The 'sphinx-build' command was not found. Make sure you have Sphinx - echo.installed, then set the SPHINXBUILD environment variable to point - echo.to the full path of the 'sphinx-build' executable. Alternatively you - echo.may add the Sphinx directory to PATH. - echo. - echo.If you don't have Sphinx installed, grab it from - echo.https://www.sphinx-doc.org/ - exit /b 1 -) - -if "%1" == "" goto help - -%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% -goto end - -:help -%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% - -:end -popd diff --git a/book/source/08-signing_components.md b/book/source/08-signing_components.md index 0a9e699..8bfc50f 100644 --- a/book/source/08-signing_components.md +++ b/book/source/08-signing_components.md @@ -13,7 +13,7 @@ In this chapter, we'll consider OpenPGP signatures that apply to components. Tha This chapter adds a lot of detail to the material we discussed in the {ref}`certificates_chapter` chapter. Signatures on components are a crucial mechanism for forming OpenPGP certificates (which combine component keys and identities, via signatures on those components). -Additionally, signatures on components play a crucial role for authentication of identities. Mechanisms for decentralized authentication are one of OpenPGP's core strenghts, we'll look into how they work. +Additionally, signatures on components play a crucial role for authentication of identities. Mechanisms for decentralized authentication are one of OpenPGP's core strengths, we'll look into how they work. Finally, signatures on components are also a central mechanism for life-cycle management of OpenPGP certificates and their components. This includes defining or changing expiration dates, or issuing revocations, for certificates or their components. diff --git a/book/tmp/06-terminology.md b/book/tmp/06-terminology.md index 9e40dd7..14b1a74 100644 --- a/book/tmp/06-terminology.md +++ b/book/tmp/06-terminology.md @@ -19,7 +19,7 @@ flowchart LR selfcert --> skbind & skrev selfcert & 3rdcert --> certification certification --> uidcert & uidrev & dksig & krev - subgraph Siganture Types and Targets + subgraph Signature Types and Targets standalone[0x02: Standalone] subgraph Signature Packet confsig[0x50: Third-Party Confirmation]