mirror of
https://github.com/Start9Labs/documentation.git
synced 2026-03-30 20:14:50 +00:00
fix links, inline code, and adjust icon images throughout topic boxes
This commit is contained in:
18
poetry.lock
generated
18
poetry.lock
generated
@@ -72,7 +72,7 @@ python-versions = "*"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "charset-normalizer"
|
name = "charset-normalizer"
|
||||||
version = "2.0.11"
|
version = "2.0.12"
|
||||||
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
|
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
|
||||||
category = "main"
|
category = "main"
|
||||||
optional = false
|
optional = false
|
||||||
@@ -126,7 +126,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "importlib-metadata"
|
name = "importlib-metadata"
|
||||||
version = "4.10.1"
|
version = "4.11.0"
|
||||||
description = "Read metadata from Python packages"
|
description = "Read metadata from Python packages"
|
||||||
category = "dev"
|
category = "dev"
|
||||||
optional = false
|
optional = false
|
||||||
@@ -564,7 +564,7 @@ python-versions = ">= 3.5"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "typing-extensions"
|
name = "typing-extensions"
|
||||||
version = "4.1.1"
|
version = "4.1.0"
|
||||||
description = "Backported and Experimental Type Hints for Python 3.6+"
|
description = "Backported and Experimental Type Hints for Python 3.6+"
|
||||||
category = "dev"
|
category = "dev"
|
||||||
optional = false
|
optional = false
|
||||||
@@ -649,8 +649,8 @@ certifi = [
|
|||||||
{file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"},
|
{file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"},
|
||||||
]
|
]
|
||||||
charset-normalizer = [
|
charset-normalizer = [
|
||||||
{file = "charset-normalizer-2.0.11.tar.gz", hash = "sha256:98398a9d69ee80548c762ba991a4728bfc3836768ed226b3945908d1a688371c"},
|
{file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"},
|
||||||
{file = "charset_normalizer-2.0.11-py3-none-any.whl", hash = "sha256:2842d8f5e82a1f6aa437380934d5e1cd4fcf2003b06fed6940769c164a480a45"},
|
{file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"},
|
||||||
]
|
]
|
||||||
colorama = [
|
colorama = [
|
||||||
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
|
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
|
||||||
@@ -673,8 +673,8 @@ imagesize = [
|
|||||||
{file = "imagesize-1.3.0.tar.gz", hash = "sha256:cd1750d452385ca327479d45b64d9c7729ecf0b3969a58148298c77092261f9d"},
|
{file = "imagesize-1.3.0.tar.gz", hash = "sha256:cd1750d452385ca327479d45b64d9c7729ecf0b3969a58148298c77092261f9d"},
|
||||||
]
|
]
|
||||||
importlib-metadata = [
|
importlib-metadata = [
|
||||||
{file = "importlib_metadata-4.10.1-py3-none-any.whl", hash = "sha256:899e2a40a8c4a1aec681feef45733de8a6c58f3f6a0dbed2eb6574b4387a77b6"},
|
{file = "importlib_metadata-4.11.0-py3-none-any.whl", hash = "sha256:6affcdb3aec542dd98df8211e730bba6c5f2bec8288d47bacacde898f548c9ad"},
|
||||||
{file = "importlib_metadata-4.10.1.tar.gz", hash = "sha256:951f0d8a5b7260e9db5e41d429285b5f451e928479f19d80818878527d36e95e"},
|
{file = "importlib_metadata-4.11.0.tar.gz", hash = "sha256:9e5e553bbba1843cb4a00823014b907616be46ee503d2b9ba001d214a8da218f"},
|
||||||
]
|
]
|
||||||
jinja2 = [
|
jinja2 = [
|
||||||
{file = "Jinja2-3.0.3-py3-none-any.whl", hash = "sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8"},
|
{file = "Jinja2-3.0.3-py3-none-any.whl", hash = "sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8"},
|
||||||
@@ -945,8 +945,8 @@ tornado = [
|
|||||||
{file = "tornado-6.1.tar.gz", hash = "sha256:33c6e81d7bd55b468d2e793517c909b139960b6c790a60b7991b9b6b76fb9791"},
|
{file = "tornado-6.1.tar.gz", hash = "sha256:33c6e81d7bd55b468d2e793517c909b139960b6c790a60b7991b9b6b76fb9791"},
|
||||||
]
|
]
|
||||||
typing-extensions = [
|
typing-extensions = [
|
||||||
{file = "typing_extensions-4.1.1-py3-none-any.whl", hash = "sha256:21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2"},
|
{file = "typing_extensions-4.1.0-py3-none-any.whl", hash = "sha256:c13180fbaa7cd97065a4915ceba012bdb31dc34743e63ddee16360161d358414"},
|
||||||
{file = "typing_extensions-4.1.1.tar.gz", hash = "sha256:1a9462dcc3347a79b1f1c0271fbe79e844580bb598bafa1ed208b94da3cdcd42"},
|
{file = "typing_extensions-4.1.0.tar.gz", hash = "sha256:ba97c5143e5bb067b57793c726dd857b1671d4b02ced273ca0538e71ff009095"},
|
||||||
]
|
]
|
||||||
urllib3 = [
|
urllib3 = [
|
||||||
{file = "urllib3-1.26.8-py2.py3-none-any.whl", hash = "sha256:000ca7f471a233c2251c6c7023ee85305721bfdf18621ebff4fd17a8653427ed"},
|
{file = "urllib3-1.26.8-py2.py3-none-any.whl", hash = "sha256:000ca7f471a233c2251c6c7023ee85305721bfdf18621ebff4fd17a8653427ed"},
|
||||||
|
|||||||
@@ -7,36 +7,21 @@ Contact Us
|
|||||||
Community Channels
|
Community Channels
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
Matrix
|
`Matrix Start9 Community <https://matrix.to/#/#community:matrix.start9labs.com>`_
|
||||||
======
|
|
||||||
|
|
||||||
Start9 Community - https://matrix.to/#/#community:matrix.start9labs.com
|
`Matrix Community Developers <https://matrix.to/#/#community-dev:matrix.start9labs.com>`_
|
||||||
Community Developers - https://matrix.to/#/#community-dev:matrix.start9labs.com
|
|
||||||
|
|
||||||
Start9 Tor Community (Tor required) - https://matrix.to/#/!iRwnQntcjpWfLxdgav:matrix.privacy34kn4ez3y3nijweec6w4g54i3g54sdv7r5mr6soma3w4begyd.onion?via=matrix.start9labs.com&via=matrix.privacy34kn4ez3y3nijweec6w4g54i3g54sdv7r5mr6soma3w4begyd.onion&via=oayal5vhil3zhj7ylixvpi4nr2xvhypdnenji4sx5q4kvaotevjvsxad.onion
|
`Matrix Start9 Tor Community (Tor required) <https://matrix.to/#/!iRwnQntcjpWfLxdgav:matrix.privacy34kn4ez3y3nijweec6w4g54i3g54sdv7r5mr6soma3w4begyd.onion?via=matrix.start9labs.com&via=matrix.privacy34kn4ez3y3nijweec6w4g54i3g54sdv7r5mr6soma3w4begyd.onion&via=oayal5vhil3zhj7ylixvpi4nr2xvhypdnenji4sx5q4kvaotevjvsxad.onion>`_
|
||||||
|
|
||||||
Telegram
|
`Telegram <https://t.me/start9_labs>`_
|
||||||
========
|
|
||||||
|
|
||||||
https://t.me/start9_labs
|
|
||||||
|
|
||||||
Social Media
|
Social Media
|
||||||
------------
|
------------
|
||||||
|
`Mastodon <https://mastodon.start9labs.com/>`_
|
||||||
|
|
||||||
Mastodon
|
`Twitter <https://twitter.com/start9labs>`_
|
||||||
========
|
|
||||||
|
|
||||||
https://mastodon.start9labs.com/
|
`GitHub <https://github.com/start9labs>`_
|
||||||
|
|
||||||
Twitter
|
|
||||||
=======
|
|
||||||
|
|
||||||
https://twitter.com/start9labs
|
|
||||||
|
|
||||||
GitHub
|
|
||||||
======
|
|
||||||
|
|
||||||
https://github.com/start9labs
|
|
||||||
|
|
||||||
Email
|
Email
|
||||||
-----
|
-----
|
||||||
|
|||||||
@@ -15,56 +15,56 @@ About
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Start9 Labs
|
:title: Start9 Labs
|
||||||
:link: start9
|
:link: start9
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--comparison
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Principles
|
:anchor: View
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Get acquainted with the Start9 principles.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Roadmap
|
:title: Roadmap
|
||||||
:link: roadmap
|
:link: roadmap
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--roadmap
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: See what's coming
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Check out the ambitious future of Start9.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Privacy
|
:title: Privacy Policy
|
||||||
:link: privacy
|
:link: privacy
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--release-note
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Take a look at our privacy policy.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: License
|
:title: License
|
||||||
:link: license
|
:link: license
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--whitepapers
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Read our product license agreement.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Jobs
|
:title: Jobs
|
||||||
:link: jobs
|
:link: jobs
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--about-team
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: Join us
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
See what open jobs we have available.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Contact Us
|
:title: Contact Us
|
||||||
:link: contact
|
:link: contact
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--contact-us
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Reach out
|
:anchor: Reach out
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Get in touch with any questions, concerns, or feedback. Your input is always welcome!
|
||||||
|
|
||||||
.. raw:: html
|
.. raw:: html
|
||||||
|
|
||||||
|
|||||||
@@ -15,38 +15,38 @@ Contribute
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Teach
|
:title: Teach
|
||||||
:link: teach
|
:link: teach
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--tech-talks
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Learn
|
:anchor: Join the movement
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Share your knowledge with the community.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Provide Support
|
:title: Provide Support
|
||||||
:link: provide-support
|
:link: provide-support
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--support
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Learn
|
:anchor: Help
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Learn how you can help provide community support.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Decentralize
|
:title: Decentralize
|
||||||
:link: decentralize
|
:link: decentralize
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--cloud
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Learn
|
:anchor: View
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
See how you can aid in decentralizing our architecture.
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Promote
|
:title: Promote
|
||||||
:link: promote
|
:link: promote
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--summit
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Learn
|
:anchor: Join
|
||||||
|
|
||||||
An overview of the ideas and technologies surrounding Start9 Labs and Embassy.
|
Become an affiliate and help promote Start9.
|
||||||
|
|
||||||
.. raw:: html
|
.. raw:: html
|
||||||
|
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: SDK
|
:title: SDK
|
||||||
:link: support/dev-docs
|
:link: service-packaging
|
||||||
:icon: scylla-icon scylla-icon--open-source
|
:icon: scylla-icon scylla-icon--open-source
|
||||||
:class: large-3
|
:class: large-3
|
||||||
:anchor: View
|
:anchor: View
|
||||||
@@ -119,6 +119,7 @@
|
|||||||
learn/index
|
learn/index
|
||||||
contribute/index
|
contribute/index
|
||||||
about/index
|
about/index
|
||||||
|
service-packaging/index
|
||||||
|
|
||||||
.. raw:: html
|
.. raw:: html
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ Learn
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Concepts
|
:title: Concepts
|
||||||
:link: concepts
|
:link: concepts
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--operator
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Learn
|
:anchor: Learn
|
||||||
|
|
||||||
@@ -33,7 +33,7 @@ Learn
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Videos
|
:title: Videos
|
||||||
:link: https://youtube.com/c/Start9
|
:link: https://youtube.com/c/Start9
|
||||||
:icon: scylla-icon scylla-icon--monitoring
|
:icon: scylla-icon scylla-icon--training
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Watch
|
:anchor: Watch
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@ Learn
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Media
|
:title: Media
|
||||||
:link: media
|
:link: media
|
||||||
:icon: scylla-icon scylla-icon--monitoring
|
:icon: scylla-icon scylla-icon--news
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
|
|
||||||
|
|||||||
@@ -6,9 +6,15 @@ Advanced Packaging Overview
|
|||||||
|
|
||||||
This section included advanced commands for working with packages in EmbassyOS.
|
This section included advanced commands for working with packages in EmbassyOS.
|
||||||
|
|
||||||
|
.. raw:: html
|
||||||
|
|
||||||
|
<div class="topics-grid grid-container full">
|
||||||
|
|
||||||
|
<div class="grid-x grid-margin-x">
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Developer Tools
|
:title: Developer Tools
|
||||||
:link: dev-tools/index
|
:link: dev-tools
|
||||||
:icon: scylla-icon scylla-icon--developers-blog
|
:icon: scylla-icon scylla-icon--developers-blog
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ We'll create a web application that produces a hello world page. This web applic
|
|||||||
4. Create a hosted repository which will contain all the service components
|
4. Create a hosted repository which will contain all the service components
|
||||||
5. Create the packaged service file
|
5. Create the packaged service file
|
||||||
|
|
||||||
You can find the complete service code referenced in this guide on `GitHub <https://github.com/Start9Labs/hello-world-wrapper>`_.
|
You can find the `complete code <https://github.com/Start9Labs/hello-world-wrapper>`_ referenced in this guide on GitHub.
|
||||||
|
|
||||||
Download required tools
|
Download required tools
|
||||||
=======================
|
=======================
|
||||||
@@ -43,9 +43,10 @@ For this example, we are going to create a simple Rust project that serves a sta
|
|||||||
cargo init
|
cargo init
|
||||||
touch src/index.html
|
touch src/index.html
|
||||||
|
|
||||||
In `index.html` add:
|
In ``index.html`` add:
|
||||||
|
|
||||||
.. code:: html
|
.. code:: html
|
||||||
|
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Hello World!</title>
|
<title>Hello World!</title>
|
||||||
@@ -55,7 +56,7 @@ In `index.html` add:
|
|||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
In `main.rs` add:
|
In ``main.rs`` add:
|
||||||
|
|
||||||
.. code:: rust
|
.. code:: rust
|
||||||
|
|
||||||
@@ -88,7 +89,7 @@ In `main.rs` add:
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
That's it! We have the code for our service.
|
**That's it!** We now have the code for our service.
|
||||||
|
|
||||||
Let's build and run it!
|
Let's build and run it!
|
||||||
|
|
||||||
@@ -99,7 +100,7 @@ Let's build and run it!
|
|||||||
# start the executable
|
# start the executable
|
||||||
target/debug/hello-world
|
target/debug/hello-world
|
||||||
|
|
||||||
Visit `localhost:80` to see your running web page!
|
Visit `<http://localhost:80>`_ to see your running web page!
|
||||||
|
|
||||||
Build for RaspberryPi
|
Build for RaspberryPi
|
||||||
======================
|
======================
|
||||||
@@ -145,27 +146,27 @@ Now that we have our code properly built/compiled, we can create a Dockerfile. T
|
|||||||
|
|
||||||
In other words, the Dockerfile serves as a recipe for creating a Docker image, from which Docker containers are spun up. This is ultimately what runs an instance of your service on the Embassy.
|
In other words, the Dockerfile serves as a recipe for creating a Docker image, from which Docker containers are spun up. This is ultimately what runs an instance of your service on the Embassy.
|
||||||
|
|
||||||
#. Create the necessary Docker files:
|
1. Create the necessary Docker files:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
touch Dockerfile
|
touch Dockerfile
|
||||||
touch docker_entrypoint.sh
|
touch docker_entrypoint.sh
|
||||||
|
|
||||||
#. We start by importing a base image, in this case Alpine, as recommended.
|
2. We start by importing a base image, in this case Alpine, as recommended.
|
||||||
|
|
||||||
.. code:: docker
|
.. code:: docker
|
||||||
|
|
||||||
FROM arm64v8/alpine:3.12
|
FROM arm64v8/alpine:3.12
|
||||||
|
|
||||||
#. Next, we issue some commands to setup the filesystem. Here we update repositories and install required system packages.
|
3. Next, we issue some commands to setup the filesystem. Here we update repositories and install required system packages.
|
||||||
|
|
||||||
.. code:: docker
|
.. code:: docker
|
||||||
|
|
||||||
RUN apk update
|
RUN apk update
|
||||||
RUN apk add tini
|
RUN apk add tini
|
||||||
|
|
||||||
#. Next, we add the cross-compiled binary of ``hello-world`` to ``/usr/local/bin/`` and add the ``docker_entrypoint.sh`` file from the project root. Then, we set permissions for ``docker_entrypoint.sh``.
|
4. Next, we add the cross-compiled binary of ``hello-world`` to ``/usr/local/bin/`` and add the ``docker_entrypoint.sh`` file from the project root. Then, we set permissions for ``docker_entrypoint.sh``.
|
||||||
|
|
||||||
.. code:: docker
|
.. code:: docker
|
||||||
|
|
||||||
@@ -173,7 +174,7 @@ In other words, the Dockerfile serves as a recipe for creating a Docker image, f
|
|||||||
ADD ./docker_entrypoint.sh /usr/local/bin/docker_entrypoint.sh
|
ADD ./docker_entrypoint.sh /usr/local/bin/docker_entrypoint.sh
|
||||||
RUN chmod a+x /usr/local/bin/docker_entrypoint.sh
|
RUN chmod a+x /usr/local/bin/docker_entrypoint.sh
|
||||||
|
|
||||||
#. Next, we set a working directory, and set the location of the entrypoint. Exposing ports is not necessary for EOS, but its often useful to leave this line for quick reference and clarity.
|
5. Next, we set a working directory, and set the location of the entrypoint. Exposing ports is not necessary for EOS, but its often useful to leave this line for quick reference and clarity.
|
||||||
|
|
||||||
.. code:: docker
|
.. code:: docker
|
||||||
|
|
||||||
@@ -183,7 +184,8 @@ In other words, the Dockerfile serves as a recipe for creating a Docker image, f
|
|||||||
|
|
||||||
ENTRYPOINT ["/usr/local/bin/docker_entrypoint.sh"]
|
ENTRYPOINT ["/usr/local/bin/docker_entrypoint.sh"]
|
||||||
|
|
||||||
#. That's it! Let's take a look at our final ``Dockerfile``:
|
6. **That's it!** Let's take a look at our final ``Dockerfile``:
|
||||||
|
|
||||||
.. code:: docker
|
.. code:: docker
|
||||||
|
|
||||||
FROM arm64v8/alpine:3.12
|
FROM arm64v8/alpine:3.12
|
||||||
@@ -202,7 +204,7 @@ In other words, the Dockerfile serves as a recipe for creating a Docker image, f
|
|||||||
|
|
||||||
ENTRYPOINT ["/usr/local/bin/docker_entrypoint.sh"]
|
ENTRYPOINT ["/usr/local/bin/docker_entrypoint.sh"]
|
||||||
|
|
||||||
#. Finally, add the following code to the `docker_entrypoint.sh`:
|
7. Finally, add the following code to the ``docker_entrypoint.sh``:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -239,10 +241,10 @@ Let's create a yaml manifest file for our hello-world project:
|
|||||||
|
|
||||||
touch manifest.yaml
|
touch manifest.yaml
|
||||||
|
|
||||||
And populate it with the following example manifest:
|
And populate it with the following example manifest (see the line comments for a description of each key and view the full :ref:`type specification here <service_manifest>`):
|
||||||
|
|
||||||
.. code:: yaml
|
.. code:: yaml
|
||||||
|
|
||||||
# The package identifier used by the OS
|
# The package identifier used by the OS
|
||||||
id: hello-world
|
id: hello-world
|
||||||
# A human readable service title
|
# A human readable service title
|
||||||
@@ -326,10 +328,10 @@ And populate it with the following example manifest:
|
|||||||
entrypoint: compat
|
entrypoint: compat
|
||||||
# Any arguments that need to be passed into the run command
|
# Any arguments that need to be passed into the run command
|
||||||
args:
|
args:
|
||||||
- config
|
- config
|
||||||
- get
|
- get
|
||||||
- /root
|
- /root
|
||||||
- "/mnt/assets/config_spec.yaml"
|
- "/mnt/assets/config_spec.yaml"
|
||||||
# The locations at which to mount the specified Docker images
|
# The locations at which to mount the specified Docker images
|
||||||
mounts:
|
mounts:
|
||||||
compat: /mnt/assets
|
compat: /mnt/assets
|
||||||
@@ -343,11 +345,11 @@ And populate it with the following example manifest:
|
|||||||
system: true
|
system: true
|
||||||
entrypoint: compat
|
entrypoint: compat
|
||||||
args:
|
args:
|
||||||
- config
|
- config
|
||||||
- set
|
- set
|
||||||
- hello-world
|
- hello-world
|
||||||
- /root
|
- /root
|
||||||
- "/mnt/assets/config_rules.yaml"
|
- "/mnt/assets/config_rules.yaml"
|
||||||
mounts:
|
mounts:
|
||||||
compat: /mnt/assets
|
compat: /mnt/assets
|
||||||
main: /root
|
main: /root
|
||||||
@@ -399,8 +401,8 @@ And populate it with the following example manifest:
|
|||||||
ui: true
|
ui: true
|
||||||
# Denotes the protocol specifications used by this interface
|
# Denotes the protocol specifications used by this interface
|
||||||
protocols:
|
protocols:
|
||||||
- tcp
|
- tcp
|
||||||
- http
|
- http
|
||||||
# Alerts: omitting these will result in using the default alerts in EmbassyOS, except for start, which has no default.
|
# Alerts: omitting these will result in using the default alerts in EmbassyOS, except for start, which has no default.
|
||||||
alerts:
|
alerts:
|
||||||
install-alert: This is an alert that will present before the user installs this service
|
install-alert: This is an alert that will present before the user installs this service
|
||||||
@@ -410,32 +412,37 @@ And populate it with the following example manifest:
|
|||||||
# Specifies how backups should be run for this service. The default EmbassyOS provided option is to use the duplicity backup library on a system image (compat)
|
# Specifies how backups should be run for this service. The default EmbassyOS provided option is to use the duplicity backup library on a system image (compat)
|
||||||
backup:
|
backup:
|
||||||
create:
|
create:
|
||||||
|
# Currently, only docker actions are supported.
|
||||||
type: docker
|
type: docker
|
||||||
|
# The docker image to use. In this case, a pre-loaded system image called compat
|
||||||
image: compat
|
image: compat
|
||||||
|
# Required if the action uses a system image. The default value is false.
|
||||||
system: true
|
system: true
|
||||||
|
# The executable to run the command to begin the backup create process
|
||||||
entrypoint: compat
|
entrypoint: compat
|
||||||
# Arguments to pass into the entrypoint. In this example, the full command run will be: `compat duplicity hello-world /mnt/backup /root/data`
|
# Arguments to pass into the entrypoint executable. In this example, the full command run will be: `compat duplicity hello-world /mnt/backup /root/data`
|
||||||
args:
|
args:
|
||||||
- duplicity
|
- duplicity
|
||||||
- hello-world
|
- hello-world
|
||||||
- /mnt/backup
|
- /mnt/backup
|
||||||
# For duplicity, the backup mount point needs to be something other than `/root`, so we default to `/root/data`
|
# For duplicity, the backup mount point needs to be something other than `/root`, so we default to `/root/data`
|
||||||
- /root/data
|
- /root/data
|
||||||
mounts:
|
mounts:
|
||||||
# BACKUP is the default volume that is used for backups. This is whatever backup drive is mounted to the device, or a network filesystem.
|
# BACKUP is the default volume that is used for backups. This is whatever backup drive is mounted to the device, or a network filesystem.
|
||||||
# The value here donates where the mount point will be. The backup drive is mounted to this location.
|
# The value here donates where the mount point will be. The backup drive is mounted to this location.
|
||||||
BACKUP: "/mnt/backup"
|
BACKUP: "/mnt/backup"
|
||||||
main: "/root"
|
main: "/root"
|
||||||
|
# The action to execute the backup restore functionality. Details for the keys below are the same as above.
|
||||||
restore:
|
restore:
|
||||||
type: docker
|
type: docker
|
||||||
image: compat
|
image: compat
|
||||||
system: true
|
system: true
|
||||||
entrypoint: compat
|
entrypoint: compat
|
||||||
args:
|
args:
|
||||||
- duplicity
|
- duplicity
|
||||||
- hello-world
|
- hello-world
|
||||||
- /root/data
|
- /root/data
|
||||||
- /mnt/backup
|
- /mnt/backup
|
||||||
mounts:
|
mounts:
|
||||||
BACKUP: "/mnt/backup"
|
BACKUP: "/mnt/backup"
|
||||||
main: "/root"
|
main: "/root"
|
||||||
@@ -448,7 +455,7 @@ And populate it with the following example manifest:
|
|||||||
A warning message indicating and potential dangers associated with the action
|
A warning message indicating and potential dangers associated with the action
|
||||||
# Indicates what state the service can be in while executing the action
|
# Indicates what state the service can be in while executing the action
|
||||||
allowed-statuses:
|
allowed-statuses:
|
||||||
- running
|
- running
|
||||||
# Defines how the action is run
|
# Defines how the action is run
|
||||||
implementation:
|
implementation:
|
||||||
type: docker
|
type: docker
|
||||||
@@ -460,7 +467,6 @@ And populate it with the following example manifest:
|
|||||||
# Required - valid values are yaml, toml, json
|
# Required - valid values are yaml, toml, json
|
||||||
io-format: json
|
io-format: json
|
||||||
|
|
||||||
|
|
||||||
Instructions
|
Instructions
|
||||||
============
|
============
|
||||||
|
|
||||||
@@ -485,7 +491,7 @@ License
|
|||||||
|
|
||||||
Start9 ensures that the proper license is displayed for all open source software running on an EmbassyOS platform. Let's make sure to include the full open source license so users can view the distribution permissions of your service, among other licensing details.
|
Start9 ensures that the proper license is displayed for all open source software running on an EmbassyOS platform. Let's make sure to include the full open source license so users can view the distribution permissions of your service, among other licensing details.
|
||||||
|
|
||||||
The name and location of this file should be specified in the `assets.license` section of the Manifest. The default value if not specified is `LICENSE`, located in the root of the project folder.
|
The name and location of this file should be specified in the ``assets.license`` section of the Manifest. The default value if not specified is ``LICENSE``, located in the root of the project folder.
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -496,7 +502,7 @@ Icon
|
|||||||
|
|
||||||
Icons are displayed throughout the EmbassyUI to reference to your service.
|
Icons are displayed throughout the EmbassyUI to reference to your service.
|
||||||
|
|
||||||
Simply add the icon file to the root of the project directory. The icon file can be named anything, but this must be specified in the `assets.icon` section of the Manifest. The default filename the SDk looks for when packaging the service assets is `icon.png`.
|
Simply add the icon file to the root of the project directory. The icon file can be named anything, but this must be specified in the ``assets.icon`` section of the Manifest. The default filename the SDk looks for when packaging the service assets is ``icon.png``.
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -505,9 +511,9 @@ Simply add the icon file to the root of the project directory. The icon file can
|
|||||||
Package into s9pk
|
Package into s9pk
|
||||||
=================
|
=================
|
||||||
|
|
||||||
We now have all of the necessary components to package the service into the format needed for the OS. This format is a custom filetype with an extension of `.s9pk`, short for Start9 Package.
|
We now have all of the necessary components to package the service into the format needed for the OS. This format is a custom filetype with an extension of ``.s9pk``, short for Start9 Package.
|
||||||
|
|
||||||
To package all components into an `.s9pk`, run the following command from the root of your project directory:
|
To package all components into an ``.s9pk``, run the following command from the root of your project directory:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -521,7 +527,7 @@ Let's also make sure to verify the validity of the package:
|
|||||||
|
|
||||||
If anything goes wrong, an error message will indicate the missing component or other failure.
|
If anything goes wrong, an error message will indicate the missing component or other failure.
|
||||||
|
|
||||||
That's it!
|
**That's it!**
|
||||||
|
|
||||||
Wrapper Repo
|
Wrapper Repo
|
||||||
============
|
============
|
||||||
@@ -542,13 +548,13 @@ If you want to proceed from scratch, follow these steps:
|
|||||||
cd hello-world-wrapper
|
cd hello-world-wrapper
|
||||||
|
|
||||||
|
|
||||||
3. Include the `hello-world` project in the wrapper repo. It can either be included directly, or it can be hosted separately. If it is hosted separately, it should be included as a `git submodule <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`_ within the wrapper repository:
|
3. Include the ``hello-world`` project in the wrapper repo. It can either be included directly, or it can be hosted separately. If it is hosted separately, it should be included as a `git submodule <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`_ within the wrapper repository:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
git submodule add <link_to_source_project>
|
git submodule add <link_to_source_project>
|
||||||
|
|
||||||
4. Edit the `.gitignore` file to include the `.s9pk` file and `image.tar` bundle. This will exclude these files from being published remotely, as they can be large or binary representations.
|
4. Edit the ``.gitignore`` file to include the ``.s9pk`` file and ``image.tar`` bundle. This will exclude these files from being published remotely, as they can be large or binary representations.
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -593,7 +599,7 @@ For convenience and repeatability, let's combine all of these commands into a Ma
|
|||||||
|
|
||||||
touch Makefile
|
touch Makefile
|
||||||
|
|
||||||
1. Add the build rule with the target executable as the key, including a list of dependencies needed to build the target file. In this case, the `hello-world` binary compiled for aarch is the target, and the dependencies are the hello-world source files needed to compile this binary:
|
1. Add the build rule with the target executable as the key, including a list of dependencies needed to build the target file. In this case, the ``hello-world`` binary compiled for aarch is the target, and the dependencies are the hello-world source files needed to compile this binary:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -609,7 +615,7 @@ For convenience and repeatability, let's combine all of these commands into a Ma
|
|||||||
image.tar: Dockerfile docker_entrypoint.sh hello-world/target/aarch64-unknown-linux-musl/release/hello-world
|
image.tar: Dockerfile docker_entrypoint.sh hello-world/target/aarch64-unknown-linux-musl/release/hello-world
|
||||||
DOCKER_CLI_EXPERIMENTAL=enabled docker buildx build --tag start9/hello-world/main:$(VERSION) --platform=linux/arm64 -o type=docker,dest=image.tar .
|
DOCKER_CLI_EXPERIMENTAL=enabled docker buildx build --tag start9/hello-world/main:$(VERSION) --platform=linux/arm64 -o type=docker,dest=image.tar .
|
||||||
|
|
||||||
3. Next, add the step for building the `s9pk` package, with the `hello-world.s9pk` as the target, and all the component files as the dependencies:
|
3. Next, add the step for building the ``s9pk`` package, with the ``hello-world.s9p`k` as the target, and all the component files as the dependencies:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -635,15 +641,15 @@ For convenience and repeatability, let's combine all of these commands into a Ma
|
|||||||
rm -f image.tar
|
rm -f image.tar
|
||||||
rm -f hello-world.s9pk
|
rm -f hello-world.s9pk
|
||||||
|
|
||||||
6. Finally, add the `all` make target.
|
6. Finally, add the ``all`` make target.
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
all: verify
|
all: verify
|
||||||
|
|
||||||
This serves as the entrypoint to build multiple targets, which we have in this case. When the `make` command is invoked here, it looks for the "verify" target. Since the "verify" target depends on the "hello-world.s9pk" target, make then runs this target. It continues down this graph until the first target and its dependencies are satisfied, then works its way back up. The final output of this Makefile is the `image.tar` and `hello-world.s9pk` files.
|
This serves as the entrypoint to build multiple targets, which we have in this case. When the ``make`` command is invoked here, it looks for the "verify" target. Since the "verify" target depends on the "hello-world.s9pk" target, make then runs this target. It continues down this graph until the first target and its dependencies are satisfied, then works its way back up. The final output of this Makefile is the ``image.tar`` and ``hello-world.s9pk`` files.
|
||||||
|
|
||||||
That's it! Our completed Makefile looks like this:
|
**That's it!** Our completed Makefile looks like this:
|
||||||
|
|
||||||
.. code:: make
|
.. code:: make
|
||||||
|
|
||||||
@@ -697,7 +703,7 @@ Now that we have a process for iterating on producing a valid package for Embass
|
|||||||
#. Click on + Add new key
|
#. Click on + Add new key
|
||||||
#. Paste pubkey from clipboard
|
#. Paste pubkey from clipboard
|
||||||
|
|
||||||
3. Copy the `hello-world.s9pk` to the Embassy device:
|
3. Copy the ``hello-world.s9pk`` to the Embassy device:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@@ -719,7 +725,7 @@ Now that we have a process for iterating on producing a valid package for Embass
|
|||||||
embassy-cli auth login
|
embassy-cli auth login
|
||||||
embassy-cli package install hello-world.s9pk
|
embassy-cli package install hello-world.s9pk
|
||||||
|
|
||||||
Congratulations! You have successfully created and installed a package you created onto EmbassyOS. The package should now be viewable in the "Services" tab in EmbassyUI.
|
**Congratulations!** You have successfully created and installed a package you created onto EmbassyOS. The package should now be viewable in the "Services" tab in EmbassyUI.
|
||||||
|
|
||||||
From here, you can play with viewing the results of your Manifest file settings, such as config, actions, interfaces, health checks, etc. You can also view the logs of your service right in the UI!
|
From here, you can play with viewing the results of your Manifest file settings, such as config, actions, interfaces, health checks, etc. You can also view the logs of your service right in the UI!
|
||||||
|
|
||||||
|
|||||||
@@ -8,11 +8,11 @@ Below are links to working examples of more advanced configurations for current
|
|||||||
|
|
||||||
TODO update links when merged to master
|
TODO update links when merged to master
|
||||||
|
|
||||||
- Detailed `docker_entrypoint.sh` - `filebrowser-wrapper <https://github.com/Start9Labs/filebrowser-wrapper/blob/master/docker_entrypoint.sh>`_
|
- Detailed `docker_entrypoint.sh` - `Filebrowser <https://github.com/Start9Labs/filebrowser-wrapper/blob/master/docker_entrypoint.sh>`_
|
||||||
- Optional dependencies - `btcpayserver <>`_
|
- Optional dependencies - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/assets/compat/dependencies.yaml>`_
|
||||||
- Config spec - `btcpayserver <>`_
|
- Config spec - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/assets/compat/config_spec.yaml>`_
|
||||||
- Config rules - `btcpayserver <>`_
|
- Config rules - `BTC RPC Proxy <https://github.com/Start9Labs/btc-rpc-proxy-wrapper/blob/master/assets/compat/config_rules.yaml>`_
|
||||||
- Multiple dependencies - `btcpayserver <>`_
|
- Multiple dependencies - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/manifest.yaml#L172-L187>`_
|
||||||
- Actions - `btcpayserver <>`_
|
- Actions - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/actions/btcpay-admin.sh>`_
|
||||||
- Health checks - `btcpayserver <>`_
|
- Health checks - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/assets/utils/health_check.sh>`_
|
||||||
- Alerts - `lnd <https://github.com/Start9Labs/lnd-wrapper/blob/87daf4e5ed7231e22aaa28be533e794f67f98289/manifest.yaml#L30>`_
|
- Alerts - `BTCPay Server <https://github.com/Start9Labs/btcpayserver-wrapper/blob/master/manifest.yaml#L207-L218>`_
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ Of course, there are additional recommendations that would streamline your devel
|
|||||||
Code Editor
|
Code Editor
|
||||||
===========
|
===========
|
||||||
|
|
||||||
A code editor is recommended since you will, after all, be writing code! We are fans of`Visual Studio Code <https://code.visualstudio.com/>`_ . Visual Studio Code is a free, batteries-included text editor made by Microsoft.
|
A code editor is recommended since you will, after all, be writing code! We are fans of `Visual Studio Code <https://code.visualstudio.com/>`_ . Visual Studio Code is a free, batteries-included text editor made by Microsoft.
|
||||||
|
|
||||||
Terminal / CLI
|
Terminal / CLI
|
||||||
==============
|
==============
|
||||||
@@ -81,7 +81,7 @@ EmbassyOS
|
|||||||
|
|
||||||
While not strictly necessary, having a running instance of EmbassyOS is recommended to test installing, running, configuring, and using your package. Without this component, you will have to coordinate with Start9's internal development team to test. ... TODO add more
|
While not strictly necessary, having a running instance of EmbassyOS is recommended to test installing, running, configuring, and using your package. Without this component, you will have to coordinate with Start9's internal development team to test. ... TODO add more
|
||||||
|
|
||||||
You can acquire EmbassyOS by :ref:`Purchase <purchasing>` or following the :ref:`DIY guide <diy>`.
|
You can acquire EmbassyOS by :ref:`purchasing <purchasing>` or following the :ref:`DIY guide <diy>`.
|
||||||
|
|
||||||
.. _quick-start:
|
.. _quick-start:
|
||||||
Quick Start Environment Setup
|
Quick Start Environment Setup
|
||||||
@@ -89,5 +89,5 @@ Quick Start Environment Setup
|
|||||||
- `Docker <https://docs.docker.com/get-docker>`_
|
- `Docker <https://docs.docker.com/get-docker>`_
|
||||||
- `Docker buildx <https://docs.docker.com/buildx/working-with-buildx/>`_
|
- `Docker buildx <https://docs.docker.com/buildx/working-with-buildx/>`_
|
||||||
- `Cargo <https://doc.rust-lang.org/cargo/getting-started/installation.html>`_
|
- `Cargo <https://doc.rust-lang.org/cargo/getting-started/installation.html>`_
|
||||||
- `EmbassyOS <https://github.com/Start9Labs/embassy-os>`
|
- `EmbassyOS <https://github.com/Start9Labs/embassy-os>`_
|
||||||
- `Embassy SDK <https://github.com/Start9Labs/embassy-os/blob/master/backend/install-sdk.sh>`_
|
- `Embassy SDK <https://github.com/Start9Labs/embassy-os/blob/master/backend/install-sdk.sh>`_
|
||||||
@@ -26,7 +26,7 @@ Packaging
|
|||||||
Testing:
|
Testing:
|
||||||
--------
|
--------
|
||||||
|
|
||||||
1. Sideload s9pk onto an Embassy
|
1. Sideload ``<package-id>.s9pk`` onto an Embassy
|
||||||
2. Install package using embassy-cli
|
2. Install package using embassy-cli
|
||||||
3. Start package using embassy-cli, or in the UI
|
3. Start package using embassy-cli, or in the UI
|
||||||
4. Check logs to see if errors
|
4. Check logs to see if errors
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ Service Packaging Overview
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Getting Started
|
:title: Getting Started
|
||||||
:link: packaging-getting-started
|
:link: getting-started
|
||||||
:icon: scylla-icon scylla-icon--nsql-guides
|
:icon: scylla-icon scylla-icon--nsql-guides
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
@@ -40,7 +40,7 @@ Service Packaging Overview
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Packaging Quick Start
|
:title: Packaging Quick Start
|
||||||
:link: packaging-quick-start
|
:link: getting-started/quick-start
|
||||||
:icon: scylla-icon scylla-icon--roadmap
|
:icon: scylla-icon scylla-icon--roadmap
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Begin
|
:anchor: Begin
|
||||||
@@ -49,7 +49,7 @@ Service Packaging Overview
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: SDK
|
:title: SDK
|
||||||
:link: sdk
|
:link: getting-started/sdk
|
||||||
:icon: scylla-icon scylla-icon--apps
|
:icon: scylla-icon scylla-icon--apps
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
@@ -58,7 +58,7 @@ Service Packaging Overview
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Full Specification
|
:title: Full Specification
|
||||||
:link: packaging-specification
|
:link: specification
|
||||||
:icon: scylla-icon scylla-icon--glossary
|
:icon: scylla-icon scylla-icon--glossary
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
@@ -67,7 +67,7 @@ Service Packaging Overview
|
|||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Advanced Guides
|
:title: Advanced Guides
|
||||||
:link: advanced/index
|
:link: advanced
|
||||||
:icon: scylla-icon scylla-icon--integrations
|
:icon: scylla-icon scylla-icon--integrations
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
@@ -86,4 +86,4 @@ Service Packaging Overview
|
|||||||
getting-started/index
|
getting-started/index
|
||||||
build-package-example/index
|
build-package-example/index
|
||||||
specification/index
|
specification/index
|
||||||
advanced/index
|
advanced/index
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
.. _emver:
|
||||||
|
|
||||||
|
====================
|
||||||
|
EmbassyOS Versioning
|
||||||
|
====================
|
||||||
|
|
||||||
|
TODO
|
||||||
@@ -12,6 +12,7 @@ The following guides provide an in depth overview of the full capabilities avail
|
|||||||
overview
|
overview
|
||||||
wrapper
|
wrapper
|
||||||
manifest
|
manifest
|
||||||
|
emver
|
||||||
docker
|
docker
|
||||||
makefile
|
makefile
|
||||||
config
|
config
|
||||||
|
|||||||
@@ -9,11 +9,13 @@ Answers to Frequently Asked Questions from Embassy users
|
|||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
faq-general
|
|
||||||
faq-030
|
faq-030
|
||||||
faq-troubleshooting
|
|
||||||
faq-basic-use
|
faq-basic-use
|
||||||
faq-embassy
|
|
||||||
faq-services
|
|
||||||
faq-bitcoin
|
faq-bitcoin
|
||||||
|
faq-contributing
|
||||||
|
faq-embassy
|
||||||
|
faq-general
|
||||||
faq-lightning
|
faq-lightning
|
||||||
|
faq-services
|
||||||
|
faq-service-packaging
|
||||||
|
faq-troubleshooting
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ Support
|
|||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: User Manual
|
:title: User Manual
|
||||||
:link: user-manual
|
:link: user-manual
|
||||||
:icon: scylla-icon scylla-icon--knowledge-base
|
:icon: scylla-icon scylla-icon--docs
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: View
|
:anchor: View
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ Support
|
|||||||
Answers to Frequently Asked Questions from Embassy users
|
Answers to Frequently Asked Questions from Embassy users
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Developer Documentation
|
:title: Service Packaging
|
||||||
:link: dev-docs
|
:link: ../service-packaging
|
||||||
:icon: scylla-icon scylla-icon--open-source
|
:icon: scylla-icon scylla-icon--open-source
|
||||||
:class: large-4
|
:class: large-4
|
||||||
:anchor: Build
|
:anchor: Build
|
||||||
|
|
||||||
Tools and guides for developers
|
Tools and guides for service packagers
|
||||||
|
|
||||||
.. topic-box::
|
.. topic-box::
|
||||||
:title: Community Channels
|
:title: Community Channels
|
||||||
@@ -58,5 +58,4 @@ Support
|
|||||||
:hidden:
|
:hidden:
|
||||||
|
|
||||||
user-manual/index
|
user-manual/index
|
||||||
faq/index
|
faq/index
|
||||||
dev-docs/index
|
|
||||||
Reference in New Issue
Block a user