Skip to content

Commit

Permalink
deploy: 2ea90ef
Browse files Browse the repository at this point in the history
  • Loading branch information
tylerms887 committed Dec 5, 2023
0 parents commit 16df569
Show file tree
Hide file tree
Showing 58 changed files with 6,225 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 79ea5451fc38415a05aa953d5f66b3fb
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added .doctrees/environment.pickle
Binary file not shown.
Binary file added .doctrees/epsilon.doctree
Binary file not shown.
Binary file added .doctrees/index.doctree
Binary file not shown.
Binary file added .doctrees/install.doctree
Binary file not shown.
Binary file added .doctrees/install_raspberry.doctree
Binary file not shown.
Empty file added .nojekyll
Empty file.
20 changes: 20 additions & 0 deletions _sources/epsilon.md.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Epsilon Logo

The epsilon logo is a major part of Embux's identity. It was created in December 2023 and was meant to
replicate the Fedora logo's blue gradient design.

On some Embux builds, the epsilon logo is shown during boot, rather than the usual Tux penguin.

## Origins

An epsilon is the Greek letter ε. It looks like the euro symbol € or a backwards 3. The letter was chosen
to be put on the logo because "E" is the first letter of the name of the distro, and epsilon is the
equivalent in Greek.

## Downloads

These images are freely placed under the public domain.

* [Epsilon only](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/9104f0e3-7847-49eb-88ed-b901b34d623a) ([SVG](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/413b34cf-6e42-44fa-a95f-424c2771aaed))
* [Epsilon + logotype](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/63660245-6e86-4acd-a876-7d1f5e7d3fe7) ([SVG](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/c4c03cf2-8962-43e4-92e4-ccf6cfe1a4ad))
* [Epsilon + logotype (light mode)](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/63660245-6e86-4acd-a876-7d1f5e7d3fe7) ([SVG](https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/4257417c-0db6-4b8a-acb2-5f5092aa1433))
66 changes: 66 additions & 0 deletions _sources/index.md.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
sd_hide_title: true
---

# Embux

<!-- derived from https://github.com/executablebooks/sphinx-design/blob/rtd-theme/docs/index.md -->
::::::{div} landing-title
:style: "background-image: linear-gradient(315deg, #438ff9 0%, #1572f4 74%); margin-bottom: 10px; border-radius: 10px; padding: 50px; color: white"

<img
src="https://github.com/embuxLinux/embuxlinux.github.io/assets/115214762/707b27cd-2bb5-42c4-bec4-ba2ce7cde33a"
alt="Embux" width=360 />

The most lightweight distribution. Maybe.

```{button-ref} install
:ref-type: doc
:outline:
:color: white
:class: sd-px-4 sd-fs-5

Get Started
```

::::::

::: {grid} 2

::: {grid-item-card} Lightweight
Embux is very lightweight, and can fit a very small footprint in comparison to Alpine Linux and other tiny disributions.
:::

::: {grid-item-card} Hackable
Customize Embux for your computer. Use kernel modules to extend the functionality of the core, and use Malpeza to install software.
:::

:::

::: {grid} 2

::: {grid-item-card} Open-source
The Embux source code is [open-source](https://github.com/embuxLinux/embux) and is licensed under the GNU General Public License.
:::

::: {grid-item-card} Fast
Embux only uses about 12 MiB of RAM, and only about 2 GB of disk space. It is powered by BusyBox, a tiny executable containing critical tools.
:::

:::

::::::{div} journey-title
:style: "background-image: linear-gradient(315deg, #438ff9 0%, #1572f4 74%); margin-top: 10px; border-radius: 10px; padding: 30px; color: white"

Ready for an adventure?

```{button-ref} install
:ref-type: doc
:outline:
:color: white
:class: sd-px-4 sd-fs-5

Get Started
```

::::::
143 changes: 143 additions & 0 deletions _sources/install.md.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
# Embux Installation Guide

```{warning}
Please note that there are two distributions named Embux. The Embux distribution discussed in this guide is a lightweight Linux distribution specifically designed for embedded systems. It is not to be confused with another Embux distribution, which is less popular and may not be suitable for all applications.
```

```{warning}
Embux installation is not a trivial task and requires technical expertise. It is recommended for experienced users only.
```

## Prerequisites

Before embarking on the Embux installation process, ensure that you have the necessary prerequisites in place:

* **Technical Expertise:** Possess a strong understanding of Linux systems, embedded systems, and networking concepts.

* **Target Computer:** A target computer with at least 10 MB of RAM. **For Raspberry Pis, see [here](install_raspberry.html).**

* **Source Computer:** A source computer with access to the internet and the ability to install software. This could be your personal laptop, a desktop workstation, or even a cloud-based virtual machine.

* **Storage**: A USB drive or SD card with at least 2 GB. Insert it into the source computer.

## Signing

Remember to validate the Embux image. Custom images could have malware, including software that could brick the entire device.

### Instructions

::::{tab-set}

:::{tab-item} Linux and macOS
:sync: linux
Run this command in the directory where you downloaded the Embux app:

```
./embux-app-*.sh --sign
```
:::

:::{tab-item} Windows
:sync: win

Open the Embux app and enter the Konami code:
```
↑ ↑ ↓ ↓ ← → ← → B A
```
:::

:::{tab-item} Other or ISO
:sync: other

Refer to your system's manual for instructions on how to verify file checksums.

If you can't find out how to do that, be vigilant of malicious images.

::::

## Installation Process

::::{tab-set}

:::{tab-item} Linux and macOS
:sync: linux

1. **Download Embux App:** Download the appropriate Embux app shell script (.sh) from the Embux GitHub repository.
* Please note there are different versions of the shell script for Linux and Mac, the macOS version is labelled `darwin`.
* You can find a link to the repository in the sidebar.
* For macOS (not Linux), you will need to install [Homebrew](https://brew.sh). Don't worry, installing Homebrew is a very simple task. You have to run one single command.
* **Warning:** Don't use packages provided by your system's repositories, AUR, etc. These repositories have been known for hosting outdated software.

3. **Ensure Execution Permissions:** Make sure the script has executable permissions. You can do this by running the following command in the terminal:

```bash
chmod +x embux-app-*.sh
```

4. **Optional: Sideload a Custom Embux Image:** If you want to install Embux Beta, a testing version of Embux, or any modified version of Embux, store the ISO in `~/.embux.iso`.

5. **Run Embux App:** Run the Embux app by executing the following command:

```bash
./embux-app-*.sh
```

6. **Follow Embux App Instructions:** The Embux app will guide you through the installation process, including selecting the target device, and initiating the installation.

7. **Monitor Installation Progress:** Observe the progress bar in the Embux app as the installation unfolds. Once the installation is complete, a notification will appear.

8. **Boot Target Device:** Once the installation is complete, power cycle the target device, and insert the Embux device. The device should boot into the newly installed Embux system.
:::

:::{tab-item} Windows
:sync: win

```{warning}
The Embux app is not designed for Windows. Consider installing Linux on the source computer, then follow the procedure for Linux.
```

1. **Download Embux App:** Download the appropriate Embux app executable (.exe) from the Embux GitHub repository.
* Please note there are 3 builds for Windows: `x86`, `x66_64`, and `arm`. You can still use `x86_64` and `x86` on ARM, but they are not native to ARM processors. Similarly you can still use `x86` on `x86_64` but not `arm`.
* You can find a link to the repository in the sidebar.
* **Warning:** Don't use packages provided by chocolatey, etc. These repositories have been known for hosting outdated software.

3. **Optional: Sideload a Custom Embux Image:** If you want to install Embux Beta, a testing version of Embux, or any modified version of Embux, store the ISO in `C:\Embux.iso`.

4. **Run Embux App:** Run the Embux app by finding it in your downloads folder.

5. **Follow Embux App Instructions:** The Embux app will guide you through the installation process, including selecting the target device, and initiating the installation.

6. **Monitor Installation Progress:** Observe the progress bar in the Embux app as the installation unfolds. Once the installation is complete, a notification will appear.

7. **Boot Target Device:** Once the installation is complete, power cycle the target device, and insert the Embux device. The device should boot into the newly installed Embux system.

:::

:::{tab-item} Other or ISO
:sync: other

```{warning}
The Embux app is not supported on platforms other than Linux, Mac and Windows. Thus an alternative way using an ISO flasher will be used in these instructions.
```

1. **Download Embux ISO:** Download the appropriate Embux image (.iso) from the Embux GitHub repository. You can find a link to the repository in the sidebar.

3. **Run ISO Flasher:** Look for a flashing tool available on your system. Most systems do not come with one, but offer one in their repositories. You can try [BalenaEtcher](https://etcher.balena.io).

4. **Import ISO:** Import the ISO into your flasher. Here's the format to help you find it: `embux-MAJOR.MINOR-ARCH-TYPE.iso`.

5. **Monitor Installation Progress:** Observe the progress bar or another way of tracking the progress as the flashing unfolds.

6. **Boot Target Device:** Once the installation is complete, power cycle the target device, and insert the Embux device. The device should boot into the newly installed Embux system.

:::

::::

## Additional Considerations

* **malpeza Package Manager:** Embux offers a lightweight package manager called `malpeza`. To install `malpeza`, execute the `embux_getmalpeza` command. You will need to connect to the ethernet (Embux does not support Wi-Fi) to run this command.

* **Keyboard Layout:** Embux defaults to the `en-US` keyboard layout. To change the keyboard layout, run the `embuxcfg select kbd.layout` command and choose your preferred layout.

* **Framebuffer Tool:** Embux provides a framebuffer tool for C and some Python versions, enabling you to display text and graphics on countdowns, billboards, and other devices. Refer to the fbtool documentation in the sidebar for detailed usage instructions.
25 changes: 25 additions & 0 deletions _sources/install_raspberry.md.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Embux on a Raspberry Pi

This guide explains installing Embux on Raspberry Pis. Raspberry Pis are small computers around the size of a credit card.
Raspberry Pis are based on ARM processors, so this means we will use an ARM image.

## Requirements

* **Raspberry Pi:** A Raspberry Pi. This document covers Raspberry Pis 3 to 5. Other Raspberry Pis are supported officially but are less common and thus not documented here. This device will later be referred to as a "Pi".
* **Computer:** Besides a Pi, a larger computer.
* **SD Card:** An SD card. This is where the Embux system will be stored. Pis do not have a hard disk so they rely on portable storage solutions like SD cards. A USB is also supported. **Don't flash the old Pi OS SD card, as we will be keeping it as a backup.**

## Disclaimer

Tinkering with your Pi can cause damage, which could potentially brick the Raspberry Pi. Be careful with your actions.

## Instructions

1. Download the Embux image from the repository linked in the sidebar: **Embux Repository**. You may need to scroll down.
2. Open a flashing tool. Embux recommends [balenaEtcher](https://etcher.balena.io) for flashing images. You can also try [Rufus](https://rufus.ie) on Windows.
3. Insert the USB or the SD card. The device must have at least 2 GB for it to store the `tiny` image, or around 3.5 GB for the `template` image. Choose an image with `piboot` in the name, the others contain the installer but we are looking for an image that can be used as a portable OS.
4. Click the flash button to flash the Embux installer onto your storage device.
5. Remove the storage device. Shut the Pi down, then insert the storage device into it.
6. Power on the Pi again. Login with username `piboot`, password `embux`.

Congrats! You have a working Embux setup on your Pi!

Large diffs are not rendered by default.

27 changes: 27 additions & 0 deletions _sphinx_design_static/design-tabs.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
var sd_labels_by_text = {};

function ready() {
const li = document.getElementsByClassName("sd-tab-label");
for (const label of li) {
syncId = label.getAttribute("data-sync-id");
if (syncId) {
label.onclick = onLabelClick;
if (!sd_labels_by_text[syncId]) {
sd_labels_by_text[syncId] = [];
}
sd_labels_by_text[syncId].push(label);
}
}
}

function onLabelClick() {
// Activate other inputs with the same sync id.
syncId = this.getAttribute("data-sync-id");
for (label of sd_labels_by_text[syncId]) {
if (label === this) continue;
label.previousElementSibling.checked = true;
}
window.localStorage.setItem("sphinx-design-last-tab", syncId);
}

document.addEventListener("DOMContentLoaded", ready, false);
Loading

0 comments on commit 16df569

Please sign in to comment.