-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Deployed d3a6faa with MkDocs version: 1.5.3
- Loading branch information
0 parents
commit 82ba6ca
Showing
46 changed files
with
9,090 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
<!DOCTYPE html> | ||
<html class="writer-html5" lang="en" > | ||
<head> | ||
<meta charset="utf-8" /> | ||
<meta http-equiv="X-UA-Compatible" content="IE=edge" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||
<link rel="shortcut icon" href="/deboot/img/favicon.ico" /> | ||
<title>DeBoot</title> | ||
<link rel="stylesheet" href="/deboot/css/theme.css" /> | ||
<link rel="stylesheet" href="/deboot/css/theme_extra.css" /> | ||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" /> | ||
|
||
<!--[if lt IE 9]> | ||
<script src="/deboot/js/html5shiv.min.js"></script> | ||
<![endif]--> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script> | ||
<script>hljs.highlightAll();</script> | ||
</head> | ||
|
||
<body class="wy-body-for-nav" role="document"> | ||
|
||
<div class="wy-grid-for-nav"> | ||
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav"> | ||
<div class="wy-side-scroll"> | ||
<div class="wy-side-nav-search"> | ||
<a href="/deboot/." class="icon icon-home"> DeBoot | ||
</a><div role="search"> | ||
<form id ="rtd-search-form" class="wy-form" action="/deboot//search.html" method="get"> | ||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" title="Type search term here" /> | ||
</form> | ||
</div> | ||
</div> | ||
|
||
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/overview/">Overview</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/booting/">How booting works</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/deboot/">How DeBoot works</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Boot Stages</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/metal/">Metal</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/uefi/">UEFI</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/grub/">GRUB</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/u-boot/">U-Boot</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/initramfs/">Initramfs</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Using DeBoot</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/build/">Building DeBoot</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/debooting/">DeBooting</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/appliance/">Appliances</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="/deboot/gotcha/">Gotchas</a> | ||
</li> | ||
</ul> | ||
</div> | ||
</div> | ||
</nav> | ||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> | ||
<nav class="wy-nav-top" role="navigation" aria-label="Mobile navigation menu"> | ||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i> | ||
<a href="/deboot/.">DeBoot</a> | ||
|
||
</nav> | ||
<div class="wy-nav-content"> | ||
<div class="rst-content"><div role="navigation" aria-label="breadcrumbs navigation"> | ||
<ul class="wy-breadcrumbs"> | ||
<li><a href="/deboot/." class="icon icon-home" aria-label="Docs"></a></li> | ||
<li class="wy-breadcrumbs-aside"> | ||
</li> | ||
</ul> | ||
<hr/> | ||
</div> | ||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> | ||
<div class="section" itemprop="articleBody"> | ||
|
||
|
||
<h1 id="404-page-not-found">404</h1> | ||
|
||
<p><strong>Page not found</strong></p> | ||
|
||
|
||
</div> | ||
</div><footer> | ||
|
||
<hr/> | ||
|
||
<div role="contentinfo"> | ||
<!-- Copyright etc --> | ||
</div> | ||
|
||
Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. | ||
</footer> | ||
|
||
</div> | ||
</div> | ||
|
||
</section> | ||
|
||
</div> | ||
|
||
<div class="rst-versions" role="note" aria-label="Versions"> | ||
<span class="rst-current-version" data-toggle="rst-current-version"> | ||
|
||
|
||
|
||
</span> | ||
</div> | ||
<script src="/deboot/js/jquery-3.6.0.min.js"></script> | ||
<script>var base_url = "/deboot/";</script> | ||
<script src="/deboot/js/theme_extra.js"></script> | ||
<script src="/deboot/js/theme.js"></script> | ||
<script src="/deboot/search/main.js"></script> | ||
<script> | ||
jQuery(function () { | ||
SphinxRtdTheme.Navigation.enable(true); | ||
}); | ||
</script> | ||
|
||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,194 @@ | ||
<!DOCTYPE html> | ||
<html class="writer-html5" lang="en" > | ||
<head> | ||
<meta charset="utf-8" /> | ||
<meta http-equiv="X-UA-Compatible" content="IE=edge" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><link rel="canonical" href="https://debootdevs.github.io/deboot/appliance/" /> | ||
<link rel="shortcut icon" href="../img/favicon.ico" /> | ||
<title>Appliances - DeBoot</title> | ||
<link rel="stylesheet" href="../css/theme.css" /> | ||
<link rel="stylesheet" href="../css/theme_extra.css" /> | ||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" /> | ||
|
||
<script> | ||
// Current page data | ||
var mkdocs_page_name = "Appliances"; | ||
var mkdocs_page_input_path = "appliance.md"; | ||
var mkdocs_page_url = "/deboot/appliance/"; | ||
</script> | ||
|
||
<!--[if lt IE 9]> | ||
<script src="../js/html5shiv.min.js"></script> | ||
<![endif]--> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script> | ||
<script>hljs.highlightAll();</script> | ||
</head> | ||
|
||
<body class="wy-body-for-nav" role="document"> | ||
|
||
<div class="wy-grid-for-nav"> | ||
<nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav"> | ||
<div class="wy-side-scroll"> | ||
<div class="wy-side-nav-search"> | ||
<a href=".." class="icon icon-home"> DeBoot | ||
</a><div role="search"> | ||
<form id ="rtd-search-form" class="wy-form" action="../search.html" method="get"> | ||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" title="Type search term here" /> | ||
</form> | ||
</div> | ||
</div> | ||
|
||
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../overview/">Overview</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../booting/">How booting works</a> | ||
</li> | ||
</ul> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../deboot/">How DeBoot works</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Boot Stages</span></p> | ||
<ul> | ||
<li class="toctree-l1"><a class="reference internal" href="../metal/">Metal</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../uefi/">UEFI</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../grub/">GRUB</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../u-boot/">U-Boot</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../initramfs/">Initramfs</a> | ||
</li> | ||
</ul> | ||
<p class="caption"><span class="caption-text">Using DeBoot</span></p> | ||
<ul class="current"> | ||
<li class="toctree-l1"><a class="reference internal" href="../build/">Building DeBoot</a> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../debooting/">DeBooting</a> | ||
</li> | ||
<li class="toctree-l1 current"><a class="reference internal current" href="./">Appliances</a> | ||
<ul class="current"> | ||
<li class="toctree-l2"><a class="reference internal" href="#building-appliances-using-kiwi-ng">Building appliances using KIWI-NG</a> | ||
</li> | ||
<li class="toctree-l2"><a class="reference internal" href="#uploading-your-appliance-to-swarm">Uploading your appliance to Swarm</a> | ||
<ul> | ||
<li class="toctree-l3"><a class="reference internal" href="#obtaining-bzz-tokens">Obtaining BZZ tokens</a> | ||
</li> | ||
<li class="toctree-l3"><a class="reference internal" href="#purchasing-postage-stamp-batches">Purchasing postage stamp batches</a> | ||
</li> | ||
<li class="toctree-l3"><a class="reference internal" href="#running-a-bee-node">Running a bee node</a> | ||
</li> | ||
<li class="toctree-l3"><a class="reference internal" href="#uploading-chunks">Uploading chunks</a> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</li> | ||
<li class="toctree-l1"><a class="reference internal" href="../gotcha/">Gotchas</a> | ||
</li> | ||
</ul> | ||
</div> | ||
</div> | ||
</nav> | ||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> | ||
<nav class="wy-nav-top" role="navigation" aria-label="Mobile navigation menu"> | ||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i> | ||
<a href="..">DeBoot</a> | ||
|
||
</nav> | ||
<div class="wy-nav-content"> | ||
<div class="rst-content"><div role="navigation" aria-label="breadcrumbs navigation"> | ||
<ul class="wy-breadcrumbs"> | ||
<li><a href=".." class="icon icon-home" aria-label="Docs"></a></li> | ||
<li class="breadcrumb-item">Using DeBoot</li> | ||
<li class="breadcrumb-item active">Appliances</li> | ||
<li class="wy-breadcrumbs-aside"> | ||
</li> | ||
</ul> | ||
<hr/> | ||
</div> | ||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> | ||
<div class="section" itemprop="articleBody"> | ||
|
||
<h1 id="appliances">Appliances</h1> | ||
<p>We apply the name <em>appliance</em> to the userspace images we build. In this context, an appliance is a "single-purpose OS." Of course, there is nothing about the build process that actually forces our images to be "single-purpose."</p> | ||
<h2 id="building-appliances-using-kiwi-ng">Building appliances using KIWI-NG</h2> | ||
<p>The DeBoot POC build uses an open-source tool called <a href="https://osinside.github.io/kiwi/">KIWI NG</a>, developed by SUSE, which consumes XML configuration files and scripts to build root directory trees. We then package the tree by bundling it into a <a href="https://docs.kernel.org/filesystems/squashfs.html">squashfs</a> using standard Linux tool <code>mksquashfs</code>.</p> | ||
<p>To build an appliance using the DeBoot build system, run <code>make appliance</code>. The output is a file <code>./build/squashfs.img</code> which can be uploaded to Swarm for later DeBooting.</p> | ||
<p>The configuration directory for this appliance build is located at <code>./appliance/kiwi/</code>.</p> | ||
<p>Edit the file <code>config.xml.j2</code> to:</p> | ||
<ul> | ||
<li> | ||
<p>customize the repositories and packages installed in the appliance</p> | ||
</li> | ||
<li> | ||
<p>customize the users configured in the appliance. Hashes for passwords can be generated using <code>openssl passwd -6</code>. Default password for <em>root</em> account is <em>deboot</em>.</p> | ||
</li> | ||
</ul> | ||
<p>Add files under <code>root/</code> for them to be included in the directory tree.</p> | ||
<p>Edit the file <code>config.sh</code> to install <code>systemd</code> services</p> | ||
<h2 id="uploading-your-appliance-to-swarm">Uploading your appliance to Swarm</h2> | ||
<p>To upload your appliance to Swarm, you'll need to <a href="https://docs.ethswarm.org/docs/bee/working-with-bee/introduction">run a bee node</a> (light or full), purchase postage stamp batches using BZZ tokens on the Gnosis Chain network, and upload your data using the node. We recommend the use of <a href="https://github.com/ethersphere/swarm-cli">swarm-cli</a> for Swarm-related operations.</p> | ||
<h3 id="obtaining-bzz-tokens">Obtaining BZZ tokens</h3> | ||
<p>At time of writing (2024-01-30), the most stable (i.e. having least price impact) way to obtain BZZ tokens is to purchase them directly from the issuing contract on Ethereum, which has a frontend at https://openbzz.eth.limo/. The BZZ tokens will then need to be bridged to Gnosis Chain (GC) for use with the Swarm network.</p> | ||
<p>Small amounts of BZZ tokens are also available on <a href="https://swap.cow.fi/">COWSwap</a>.</p> | ||
<h3 id="purchasing-postage-stamp-batches">Purchasing postage stamp batches</h3> | ||
<p>You can purchase <a href="https://docs.ethswarm.org/docs/learn/technology/contracts/postage-stamp">postage stamps</a> by interacting with the postage stamp contract using any GC client. This functionality is built into Swarm-CLI's <code>stamp</code> functions, which uses the GC RPC endpoint associated to your local bee node.</p> | ||
<p>Stamp batch sizes are specified in terms of the "batch depth." A batch with depth <em>n</em> has a theoretical maximum storage capacity of 2<sup>n</sup> · 4KiB, however due to the way that Swarm storage space is allocated the actual amount of storage you can get in practice <a href="https://docs.ethswarm.org/docs/learn/technology/contracts/postage-stamp#effective-utilisation-table">may be much smaller</a>, especially for small depths. We recommend purchasing stamp batches of depth at least 26, corresponding to about 226GB of storage on average.</p> | ||
<h3 id="running-a-bee-node">Running a bee node</h3> | ||
<p>We recommend running bee using the official <a href="https://hub.docker.com/layers/ethersphere/bee/latest/images/sha256-c3e36ff3633e435f05fea1d81ba788465ae45ec52b1e56358ea45bd7271758a2?context=explore">container images</a>.</p> | ||
<h3 id="uploading-chunks">Uploading chunks</h3> | ||
<p>Use the <code>swarm-cli upload --stamp $MYSTAMP</code> command.</p> | ||
|
||
</div> | ||
</div><footer> | ||
<div class="rst-footer-buttons" role="navigation" aria-label="Footer Navigation"> | ||
<a href="../debooting/" class="btn btn-neutral float-left" title="DeBooting"><span class="icon icon-circle-arrow-left"></span> Previous</a> | ||
<a href="../gotcha/" class="btn btn-neutral float-right" title="Gotchas">Next <span class="icon icon-circle-arrow-right"></span></a> | ||
</div> | ||
|
||
<hr/> | ||
|
||
<div role="contentinfo"> | ||
<!-- Copyright etc --> | ||
</div> | ||
|
||
Built with <a href="https://www.mkdocs.org/">MkDocs</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. | ||
</footer> | ||
|
||
</div> | ||
</div> | ||
|
||
</section> | ||
|
||
</div> | ||
|
||
<div class="rst-versions" role="note" aria-label="Versions"> | ||
<span class="rst-current-version" data-toggle="rst-current-version"> | ||
|
||
|
||
<span><a href="../debooting/" style="color: #fcfcfc">« Previous</a></span> | ||
|
||
|
||
<span><a href="../gotcha/" style="color: #fcfcfc">Next »</a></span> | ||
|
||
</span> | ||
</div> | ||
<script src="../js/jquery-3.6.0.min.js"></script> | ||
<script>var base_url = "..";</script> | ||
<script src="../js/theme_extra.js"></script> | ||
<script src="../js/theme.js"></script> | ||
<script src="../search/main.js"></script> | ||
<script> | ||
jQuery(function () { | ||
SphinxRtdTheme.Navigation.enable(true); | ||
}); | ||
</script> | ||
|
||
</body> | ||
</html> |
Oops, something went wrong.