aboutsummaryrefslogtreecommitdiff
path: root/content/BinaryPackages.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/BinaryPackages.md')
-rw-r--r--content/BinaryPackages.md151
1 files changed, 151 insertions, 0 deletions
diff --git a/content/BinaryPackages.md b/content/BinaryPackages.md
new file mode 100644
index 0000000..636551e
--- /dev/null
+++ b/content/BinaryPackages.md
@@ -0,0 +1,151 @@
+Title: BinaryPackages
+Author: sra
+Date: 2016-12-15 22:44
+Modified: 2019-09-03 15:23
+
+
+
+# Binary Packages for Cryptech Software and Firmware
+
+The Cryptech Project maintains APT and Homebrew repositories
+containing packaged software for the Cryptech Alpha board for Debian
+and Ubuntu Linux and for Mac OS X. The binary packages also include
+pre-compiled images for the Alpha Board's Artix-7 FPGA, Cortex M4 ARM
+CPU, and AVR ATtiny828 MCU.
+
+## How to get APT packages for Debian Stretch, Debian Buster, Ubuntu Xenial, or Ubuntu Bionic
+
+
+* Fetch and validate the repository key. Presumably you're security
+ concious (otherwise, why are you installing this stuff?), so you may
+ want to pay attention to what `gpg --check-sig` says here.
+
+
+ ```
+ $ id=37A8E93F5D7E7B9A
+ $ wget https://apt.cryptech.is/apt-gpg-key.gpg
+ $ gpg --recv-key $id
+ $ gpg --check-sig $id
+ ```
+
+
+* Install the repository key. We used to use `apt-key(8)` for this,
+ these days the cool kids use the `/etc/apt/trusted.gpg.d/` directory:
+
+
+ ```
+ $ sudo chown root:root apt-gpg-key.gpg
+ $ sudo mv apt-gpg-key.gpg /etc/apt/trusted.gpg.d/cryptech.gpg
+ ```
+
+
+* Configure apt to use the repository. You need to add a couple of
+ entries to `/etc/apt/source.list.d/`; which entries you need to add
+ depends on which distribution you're running.
+ * For Debian Stretch, do:
+ ```
+ $ sudo wget -q -O /etc/apt/sources.list.d/cryptech.list http://apt.cryptech.is/sources.stretch.list
+ ```
+ * For Debian Buster, do:
+ ```
+ $ sudo wget -q -O /etc/apt/sources.list.d/cryptech.list http://apt.cryptech.is/sources.buster.list
+ ```
+ * For Ubuntu Xenial, do:
+ ```
+ $ sudo wget -q -O /etc/apt/sources.list.d/cryptech.list http://apt.cryptech.is/sources.xenial.list
+ ```
+ * For Ubuntu Bionic, do:
+ ```
+ $ sudo wget -q -O /etc/apt/sources.list.d/cryptech.list http://apt.cryptech.is/sources.bionic.list
+ ```
+
+
+
+
+* Update the package index.
+
+
+ ```
+ $ sudo apt-get update
+ ```
+
+
+* Install the `cryptech-alpha` package.
+
+
+ ```
+ $ sudo apt-get install cryptech-alpha
+ ```
+
+## Updating APT packages
+
+Once you've performed the steps above you should be able to upgrade to newer
+version of the code using the normal APT upgrade process:
+
+```
+$ sudo apt-get update
+$ sudo apt-get upgrade
+```
+
+## How to get Homebrew packages for Mac OS X
+
+
+* Fetch and validate the repository key. Presumably you're security
+ concious (otherwise, why are you installing this stuff?), so you may
+ want to pay attention to what `gpg --check-sig` says here.
+
+
+ ```
+ $ id=37A8E93F5D7E7B9A
+ $ gpg --recv-key $id
+ $ gpg --check-sig $id
+ ```
+
+
+* Configure Homebrew to use the repository.
+
+
+ ```
+ $ brew tap cryptech/sw https://brew.cryptech.is/tap
+ ```
+
+
+* Update the package index.
+
+
+ ```
+ $ brew update
+ ```
+
+
+* Check the commit signature on the cryptech-alpha package formula.
+ This is optional (Homebrew doesn't care whether you do this), but if
+ you want to know whether the formula was signed by the Cryptech
+ project, this is how to check.
+
+
+ ```
+ $ brew log --max-count=1 --show-signature cryptech-alpha
+ ```
+
+
+* Install the `cryptech-alpha` package. At the moment, this is only
+ available as a Homebrew source package due to licensing issues in
+ the MacOS Xcode SDK, so the installation will probably take several
+ minutes, as some of the libraries are a bit slow to compile (sorry...).
+
+
+ ```
+ $ brew install cryptech-alpha
+ ```
+
+## Updating Homebrew packages
+
+Once you've performed the steps above you should be able to upgrade to newer
+version of the code using the normal Homebrew upgrade process:
+
+```
+$ brew update
+$ brew upgrade
+$ brew cleanup
+```