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
|
The DECODE SDK is a unique build framework written to ease maintenance
|
||||||
and production of various types of the Devuan distribution images, such
|
and production of various types of the Devuan distribution images,
|
||||||
as: live ISOs, virtual machine images, and images targeted at embedded
|
such as: live ISOs, virtual machine images, and images targeted at
|
||||||
ARM boards. This paper explains how to use the SDK, gives and inside
|
embedded ARM boards. This section explains how to use the SDK, gives
|
||||||
look at its various parts and documents the workflow to be used when
|
and inside look at its various parts and documents the workflow to be
|
||||||
modifying its code.
|
used when modifying its code.
|
||||||
|
|
||||||
The SDK is designed in such a way that there are levels of priority
|
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
|
within the scripts. First there is `libdevuansdk`, which holds the
|
||||||
configuration, then come the various wrappers targeted around specific
|
vanilla configuration, then come the various wrappers targeted around
|
||||||
targets (live, virtual, embedded), and afterwards we optionally add more
|
specific targets (`live`, `virtual`, `embedded`), and afterwards we
|
||||||
on top of it if we need to customize or override specific functions.
|
optionally add more on top of it if we need to customize or override
|
||||||
This is for example the case with DECODE OS, where we have to add
|
specific functions. This is for example the case with DECODE OS,
|
||||||
additional software and extra components on top of the base Devuan
|
where we have to add additional software and extra components on top
|
||||||
system.
|
of the base Devuan system.
|
||||||
|
|
||||||
|
|
||||||
libdevuansdk
|
libdevuansdk
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,29 @@
|
||||||
toaster.do
|
toaster.do
|
||||||
==========
|
==========
|
||||||
|
|
||||||
The **toaster.do** setup is an ecosystem of modular parts of software
|
The **toaster.do** setup is a modular web app relying on different
|
||||||
used to facilitate builds of customized Devuan images using Dockerfiles
|
parts of DECODE's CI (continuous integration) and operating system
|
||||||
and a web interface. It allows us to have a seamless way of using the
|
development software (SDK) used to facilitate builds of customized
|
||||||
Dockerfiles that are used in testing to make production images using the
|
Devuan images using Dockerfiles and a web interface. It allows us to
|
||||||
same Dockerfile. This brings a deterministic approach to debugging and
|
have a seamless way of using the Dockerfiles that are used in testing
|
||||||
allows centralization of resources, while avoiding extra work needed to
|
to make production images using the same Dockerfile. This brings a
|
||||||
write a Devuan blend.
|
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
|
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.
|
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
|
Clojure frontend
|
||||||
----------------
|
----------------
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue