From 6fca77a69f359819e35c74804739d1329f4beb22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20B=C3=A4dorf?= Date: Sat, 29 Oct 2022 22:07:49 +0200 Subject: [PATCH] Add basic ADR doc setup and first LVM ADR MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit introduces Architectural Decision Records. To quote: > Architectural Decision Records (ADRs) > > An Architectural Decision (AD) is a software design choice that > addresses a functional or non-functional requirement that is > architecturally significant. An Architecturally Significant > Requirement (ASR) is a requirement that has a measurable effect on a > software system’s architecture and quality. An Architectural Decision > Record (ADR) captures a single AD, such as often done when writing > personal notes or meeting minutes; the collection of ADRs created > and maintained in a project constitute its decision log. All these > are within the topic of Architectural Knowledge Management (AKM), but > ADR usage can be extended to design and other decisions (“any > decision record”). Taken from https://adr.github.io/ This commit also adds the first ADR; both as an example as well as a serious proposal. This ADR is a product of discussions around encrypted swap, hibernation, onboarding of new devices, and fragmentation. --- doc/adr/01-lvm.md | 13 +++++++++++++ doc/adr/README.md | 3 +++ doc/adr/TEMPLATE.md | 27 +++++++++++++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 doc/adr/01-lvm.md create mode 100644 doc/adr/README.md create mode 100644 doc/adr/TEMPLATE.md diff --git a/doc/adr/01-lvm.md b/doc/adr/01-lvm.md new file mode 100644 index 00000000..b0a49183 --- /dev/null +++ b/doc/adr/01-lvm.md @@ -0,0 +1,13 @@ +# PubSolarOS ADR 01: LVM on luks as default for drive management + +In the context of drive mounting and disk partitioning, + +facing a fragmented ecosystem, + +we decided for LVM on luks with encrypted swap as the assumed default installation type, + +and neglected luks on LVM, unencrypted installs, or non-LVM install methods, + +to achieve a streamlined and opiniated nix config, an increased flexibility in partitioning, and more secure defaults,. + +accepting a more laborious setup. diff --git a/doc/adr/README.md b/doc/adr/README.md new file mode 100644 index 00000000..629c940f --- /dev/null +++ b/doc/adr/README.md @@ -0,0 +1,3 @@ +# Architectural Decision Records + +**For an explanation of ADR, see https://adr.github.io/** diff --git a/doc/adr/TEMPLATE.md b/doc/adr/TEMPLATE.md new file mode 100644 index 00000000..79a6da54 --- /dev/null +++ b/doc/adr/TEMPLATE.md @@ -0,0 +1,27 @@ +# Long form + +In the context of , + +facing + +we decided for