Fixes the Markdown lint config and affected files (#676)
I also ran our documentation against a few other linters, to see what they would find, and fixed accordingly.
This commit is contained in:
116
docs/install.md
116
docs/install.md
@@ -8,27 +8,27 @@ This document lists required steps to start build your own OpenSK.
|
||||
|
||||
OpenSK supports different ways to flash your board:
|
||||
|
||||
* [Segger J-Link](https://www.segger.com/products/debug-probes/j-link/)
|
||||
(default method).
|
||||
* [OpenOCD](http://openocd.org/).
|
||||
* [pyOCD](https://pypi.org/project/pyocd/).
|
||||
* [nrfutil](https://pypi.org/project/nrfutil/) for the USB dongle boards that
|
||||
support it, which allows you to directly flash a working board over USB
|
||||
without additional hardware.
|
||||
* [Segger J-Link](https://www.segger.com/products/debug-probes/j-link/)
|
||||
(default method).
|
||||
* [OpenOCD](http://openocd.org/).
|
||||
* [pyOCD](https://pypi.org/project/pyocd/).
|
||||
* [nrfutil](https://pypi.org/project/nrfutil/) for the USB dongle boards that
|
||||
support it, which allows you to directly flash a working board over USB
|
||||
without additional hardware.
|
||||
|
||||
### Software requirements
|
||||
|
||||
In order to compile and flash a working OpenSK firmware, you will need the
|
||||
following:
|
||||
|
||||
* rustup (can be installed with [Rustup](https://rustup.rs/))
|
||||
* python3 and pip (can be installed with the `python3-pip` package on Debian)
|
||||
* the OpenSSL command line tool (can be installed and configured with the
|
||||
`libssl-dev` and `pkg-config` packages on Debian)
|
||||
* `nrfutil` (pip package of the same name), if you want to flash
|
||||
a device with DFU. Read the disclaimer below.
|
||||
* `uuid-runtime` if you are missing the `uuidgen` command.
|
||||
* `llvm` and `gcc-arm-none-eabi` if you want to use the upgradability feature.
|
||||
* rustup (can be installed with [Rustup](https://rustup.rs/))
|
||||
* python3 and pip (can be installed with the `python3-pip` package on Debian)
|
||||
* the OpenSSL command line tool (can be installed and configured with the
|
||||
`libssl-dev` and `pkg-config` packages on Debian)
|
||||
* `nrfutil` (pip package of the same name), if you want to flash
|
||||
a device with DFU. Read the disclaimer below.
|
||||
* `uuid-runtime` if you are missing the `uuidgen` command.
|
||||
* `llvm` and `gcc-arm-none-eabi` if you want to use the upgradability feature.
|
||||
|
||||
The proprietary software to use the default programmer can be found on the
|
||||
[Segger website](https://www.segger.com/downloads/jlink). Please follow their
|
||||
@@ -54,31 +54,31 @@ If this is your first time installing OpenSK, please skip directly to
|
||||
Depending on the difference to your last state, you may need some of the
|
||||
following steps:
|
||||
|
||||
* If you are not just testing minor changes, reset and redo the setup. This
|
||||
will delete all uncommited changes.
|
||||
* If you are not just testing minor changes, reset and redo the setup. This
|
||||
will delete all uncommited changes.
|
||||
|
||||
```shell
|
||||
./reset.sh
|
||||
./setup.sh
|
||||
```
|
||||
```shell
|
||||
./reset.sh
|
||||
./setup.sh
|
||||
```
|
||||
|
||||
* Flash your board according to the
|
||||
[flashing instructions below](#Flashing-a-firmware]. If you come from an
|
||||
OpenSK version before the 2.0 certified one, your credential storage is not
|
||||
backwards compatible and you have to reset it. :warning: You will lose
|
||||
logins to all websites that you registered with OpenSK. To erase your
|
||||
persistent storage, run the deploy script twice: Once with the application
|
||||
parameter `--erase_storage`, and once with `--opensk` as usual.
|
||||
* Flash your board according to the [instructions below](#flashing-a-firmware).
|
||||
|
||||
This reset also clears the certificate. For a privacy discussion, see the
|
||||
[certificate section in Customization](customization.md#Certificate-considerations).
|
||||
If you want to reinstall it, you also need to rerun:
|
||||
If you come from an OpenSK version before the 2.0 certified one, your credential
|
||||
storage is not backwards compatible and you have to reset it. :warning: You will
|
||||
lose logins to all websites that you registered with OpenSK. To erase your
|
||||
persistent storage, run the deploy script twice: Once with the application
|
||||
parameter `--erase_storage`, and once with `--opensk` as usual.
|
||||
|
||||
```shell
|
||||
./tools/configure.py \
|
||||
--certificate=crypto_data/opensk_cert.pem \
|
||||
--private-key=crypto_data/opensk.key
|
||||
```
|
||||
This reset also clears the certificate. For a privacy discussion, see the
|
||||
[certificate section in Customization](customization.md#Certificate-considerations).
|
||||
If you want to reinstall it, you also need to rerun:
|
||||
|
||||
```shell
|
||||
./tools/configure.py \
|
||||
--certificate=crypto_data/opensk_cert.pem \
|
||||
--private-key=crypto_data/opensk.key
|
||||
```
|
||||
|
||||
#### Initial setup
|
||||
|
||||
@@ -93,17 +93,17 @@ cd OpenSK
|
||||
|
||||
The setup script performs the following steps:
|
||||
|
||||
1. Make sure that the git submodules are checked out.
|
||||
1. Make sure that the git submodules are checked out.
|
||||
|
||||
1. Apply our patches that haven't yet been merged upstream to both
|
||||
[Tock](https://github.com/tock/tock) and
|
||||
[libtock-rs](https://github.com/tock/libtock-rs).
|
||||
1. Apply our patches that haven't yet been merged upstream to both
|
||||
[Tock](https://github.com/tock/tock) and
|
||||
[libtock-rs](https://github.com/tock/libtock-rs).
|
||||
|
||||
1. Generate crypto material, see [Customization](customization.md) for details.
|
||||
1. Generate crypto material, see [Customization](customization.md) for details.
|
||||
|
||||
1. Install the correct Rust toolchain for ARM devices.
|
||||
1. Install the correct Rust toolchain for ARM devices.
|
||||
|
||||
1. Install [tockloader](https://github.com/tock/tockloader).
|
||||
1. Install [tockloader](https://github.com/tock/tockloader).
|
||||
|
||||
Additionally on Linux, you need to install a `udev` rule file to allow non-root
|
||||
users to interact with OpenSK devices. To install it, execute:
|
||||
@@ -132,10 +132,10 @@ for understand privacy tradeoffs.
|
||||
|
||||
From here on, please follow the instructions for your hardware:
|
||||
|
||||
* [Nordic nRF52840-DK](boards/nrf52840dk.md)
|
||||
* [Nordic nRF52840 Dongle](boards/nrf52840_dongle.md)
|
||||
* [Makerdiary nRF52840-MDK USB dongle](boards/nrf52840_mdk.md)
|
||||
* [Feitian OpenSK dongle](boards/nrf52840_feitian.md)
|
||||
* [Nordic nRF52840-DK](boards/nrf52840dk.md)
|
||||
* [Nordic nRF52840 Dongle](boards/nrf52840_dongle.md)
|
||||
* [Makerdiary nRF52840-MDK USB dongle](boards/nrf52840_mdk.md)
|
||||
* [Feitian OpenSK dongle](boards/nrf52840_feitian.md)
|
||||
|
||||
### Advanced installation
|
||||
|
||||
@@ -143,13 +143,13 @@ We recommend that you flash your development board with JTAG and dongles with
|
||||
DFU, as described in the [board documentation](#flashing-a-firmware) linked
|
||||
above. However, we support other programmers:
|
||||
|
||||
* OpenOCD: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=openocd`
|
||||
* pyOCD: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=pyocd`
|
||||
* Custom: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=none`. In this case, an IntelHex file will be created and how
|
||||
to program a board is left to the user.
|
||||
* OpenOCD: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=openocd`
|
||||
* pyOCD: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=pyocd`
|
||||
* Custom: `./deploy.py --board=nrf52840_dongle_opensk --opensk
|
||||
--programmer=none`. In this case, an IntelHex file will be created and how
|
||||
to program a board is left to the user.
|
||||
|
||||
If your board is already flashed with Tock OS, you may skip installing it:
|
||||
`./deploy.py --board=nrf52840dk_opensk --opensk --no-tockos`
|
||||
@@ -163,10 +163,10 @@ We experiment with a new CTAP command to allow upgrading your device without
|
||||
access to its debugging port. For that purpose, the flash storage is split into
|
||||
4 parts:
|
||||
|
||||
* the bootloader to decide with partition to boot
|
||||
* firmware partition A
|
||||
* firmware partition B
|
||||
* the persistent storage for credentials
|
||||
* the bootloader to decide with partition to boot
|
||||
* firmware partition A
|
||||
* firmware partition B
|
||||
* the persistent storage for credentials
|
||||
|
||||
The storage is backward compatible to non-upgradable boards. Deploying an
|
||||
upgradable board automatically installs the bootloader. Please keep in mind that
|
||||
|
||||
Reference in New Issue
Block a user