intro and small mods
This commit is contained in:
parent
b2e44dc00a
commit
9a02434af8
|
|
@ -0,0 +1,54 @@
|
|||
Stable DECODE OS release
|
||||
========================
|
||||
|
||||
This document accompanies the stable release of the DECODE OS, one of
|
||||
the core development outputs of the DECODE project, aimed at providing
|
||||
a reliable operating system to run application space development in an
|
||||
environment ensuring privacy by design outside of the application
|
||||
domain. This deliverable references, without duplication of
|
||||
information, the research and development done and detailed in
|
||||
previous deliverables D4.1 and D4.4.
|
||||
|
||||
The DECODE OS is a GNU+Linux distribution based on Devuan.org to
|
||||
provide a minimalist base for distributed computing micro-services
|
||||
capable of targeting any mainstream hardware platform, from
|
||||
virtual-machines to ARM boards to bare-metal server racks.
|
||||
|
||||
The main website for this distribution is https://decodeos.dyne.org
|
||||
|
||||
|
||||
As part of the DECODE OS distribution, backend software applications
|
||||
have been developed to implement
|
||||
|
||||
1. a front-end web application to facilitate the adoption of the
|
||||
DECODE continuous integration infrastructure (toaster)
|
||||
https://toaster.dyne.org
|
||||
2. a continuous integration system to release and customize new
|
||||
versions of DECODE OS (SDK) https://git.devuan.org/sdk
|
||||
3. a private peer-to-peer network over the Tor protocol (tor-dam)
|
||||
https://github.com/decodeproject/tor-dam
|
||||
|
||||
These core features of these three components will be described in the
|
||||
following sections of this document, along with operational
|
||||
instructions.
|
||||
|
||||
Due to the experimental stage of development of other components in
|
||||
DECODE and according to the LEAN principles declared in the project,
|
||||
this stable release doesn't only constitutes a final point of arrival
|
||||
for this development task. What DECODE OS can do today is facilitate
|
||||
the deployement of lab-tested software applications (for example made
|
||||
in a Docker format, widely adopted by other partners in DECODE) and
|
||||
render these prototypes into a production ready format that can be
|
||||
deployed on the DECODE BOX open-hardware as well on virtual-machines.
|
||||
|
||||
We consider this achievement highly beneficial for a project whose
|
||||
development is still in-flux, as well for the free and open source
|
||||
community out there, since the access to the powerful features of the
|
||||
SDK is now made very easy via an integrated continuous pipeline.
|
||||
|
||||
In light of these advantages, there is a clear intention within our
|
||||
organisation (DYNE) to keep maintaining DECODE OS also beyond the span
|
||||
of the project and this very task now concluded, since it greatly
|
||||
helps the manning of prototypes into stable production environments.
|
||||
|
||||
|
||||
|
|
@ -1,21 +1,21 @@
|
|||
The Devuan SDK
|
||||
The DECODE SDK
|
||||
==============
|
||||
|
||||
The Devuan SDK is a unique build framework written to ease maintenance
|
||||
and production of various types of the Devuan distribution images, such
|
||||
as: live ISOs, virtual machine images, and images targeted at embedded
|
||||
ARM boards. This paper explains how to use the SDK, gives and inside
|
||||
look at its various parts and documents the workflow to be used when
|
||||
modifying its code.
|
||||
The DECODE SDK is a unique build framework written to ease maintenance
|
||||
and production of various types of the Devuan distribution images,
|
||||
such as: live ISOs, virtual machine images, and images targeted at
|
||||
embedded ARM boards. This section explains how to use the SDK, gives
|
||||
and inside look at its various parts and documents the workflow to be
|
||||
used when modifying its code.
|
||||
|
||||
The SDK is designed in such a way that there are levels of priority
|
||||
within the scripts. First there is libdevuansdk, which holds the vanilla
|
||||
configuration, then come the various wrappers targeted around specific
|
||||
targets (live, virtual, embedded), and afterwards we optionally add more
|
||||
on top of it if we need to customize or override specific functions.
|
||||
This is for example the case with DECODE OS, where we have to add
|
||||
additional software and extra components on top of the base Devuan
|
||||
system.
|
||||
within the scripts. First there is `libdevuansdk`, which holds the
|
||||
vanilla configuration, then come the various wrappers targeted around
|
||||
specific targets (`live`, `virtual`, `embedded`), and afterwards we
|
||||
optionally add more on top of it if we need to customize or override
|
||||
specific functions. This is for example the case with DECODE OS,
|
||||
where we have to add additional software and extra components on top
|
||||
of the base Devuan system.
|
||||
|
||||
|
||||
libdevuansdk
|
||||
|
|
|
|||
|
|
@ -1,17 +1,29 @@
|
|||
toaster.do
|
||||
==========
|
||||
|
||||
The **toaster.do** setup is an ecosystem of modular parts of software
|
||||
used to facilitate builds of customized Devuan images using Dockerfiles
|
||||
and a web interface. It allows us to have a seamless way of using the
|
||||
Dockerfiles that are used in testing to make production images using the
|
||||
same Dockerfile. This brings a deterministic approach to debugging and
|
||||
allows centralization of resources, while avoiding extra work needed to
|
||||
write a Devuan blend.
|
||||
The **toaster.do** setup is a modular web app relying on different
|
||||
parts of DECODE's CI (continuous integration) and operating system
|
||||
development software (SDK) used to facilitate builds of customized
|
||||
Devuan images using Dockerfiles and a web interface. It allows us to
|
||||
have a seamless way of using the Dockerfiles that are used in testing
|
||||
to make production images using the same Dockerfile. This brings a
|
||||
deterministic approach to debugging and allows centralization of
|
||||
resources, while avoiding extra work needed to write a Devuan blend.
|
||||
|
||||
The web application is public on https://toaster.dyne.org
|
||||
|
||||
All following documentation contained in this document details the
|
||||
internals of this application, of the components and infrastructure
|
||||
that it is using. Unless specifically interested in these
|
||||
implementation details, the web application facilitates the adoption
|
||||
of all features described through a simple visual workflow.
|
||||
|
||||
The setup is comprised of a web interface written in Clojure, a backend
|
||||
glue written in Python, the Devuan SDK, and the Jenkins CI system.
|
||||
|
||||
The main repository of this software component is
|
||||
https://github.com/decodeproject/toaster.do
|
||||
|
||||
|
||||
Clojure frontend
|
||||
----------------
|
||||
|
|
|
|||
Loading…
Reference in New Issue