mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-07-23 04:56:31 +00:00
Documentation (#769)
* spelling correction * Restuctured, added "features", "supported hardware", intro for developers and links to the developer documentation. * Spelling correction * URL correction * Documentation restructure * Moving developer documentation index from top level README to Documentation directory README * fixing URLS * Restructuring and adding to board config * Improving navigation of docs oon github * New line after first heading (https://github.com/home-assistant/operating-system/pull/768#discussion_r453336692) Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update README.md https://github.com/home-assistant/operating-system/pull/768#discussion_r453336871 Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update README.md (https://github.com/home-assistant/operating-system/pull/768#discussion_r453336999) - Surround headings with newlines - ODROID - Use dashes for unordered lists Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update README.md - new line after heading (https://github.com/home-assistant/operating-system/pull/768#discussion_r453337043) Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update README.md - \- for unordered lists - new line after heading (https://github.com/home-assistant/operating-system/pull/768#discussion_r453337101) Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update README.md - new line after heading - \- for unordered lists (https://github.com/home-assistant/operating-system/pull/768#discussion_r453337183) Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Spelling correction, to ensure /Dpcumentation/kernel.mdhas the correct spelling * capitalisation * using - for unordered lists * Adding links to config files * fixing links to _defconfig files * fixing link for rpi0_w * fixing link for rpi3_64 and rpi4_64 * making the ova README consistent with the others * formmating * fixing numbered list * fixing indent for sub-bullets * questions regarding Tinker S and OVA support * resolving PR comment from fabaff * resolving PR comment from fabaff * https://github.com/home-assistant/operating-system/pull/769\#discussion_r456774209 * Changing uBoot to U-Boot (https://github.com/home-assistant/operating-system/pull/769#discussion_r456774290) * s/boot sector/eMMC boot partition/ (See https://github.com/home-assistant/operating-system/pull/769#discussion_r456774329) * As per comments here: https://github.com/home-assistant/operating-system/pull/769#discussion_r456791491 https://github.com/home-assistant/operating-system/pull/769#discussion_r456791580 * HassOS is no longer the official name (https://github.com/home-assistant/operating-system/pull/769#discussion_r456791863) * Should be Home Assistant Operating System (or OS) (see https://community.home-assistant.io/t/changing-the-home-assistant-brand/167500/16). See also commennts here https://github.com/home-assistant/operating-system/pull/769#discussion_r456793030, taken in to account along with previous comments about this paragraph. * s/HassOS/Home Assistant Operating System/ * 8Gb Pi 4 will be supported soon (see comment https://github.com/home-assistant/operating-system/pull/769#discussion_r459768349) * resolving conflict with main dev branch. Co-authored-by: Franck Nijhof <frenck@frenck.nl> Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
This commit is contained in:
parent
50176a0e3b
commit
02836524ce
13
Documentation/README.md
Normal file
13
Documentation/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Developer Documentation
|
||||
|
||||
## Contents
|
||||
|
||||
- [Getting started](./getting_started_development.md) - the place for developers to begin
|
||||
- [Development](./getting_started_development.md) - more deatils for developers
|
||||
- [Deployment](./deployment.md) - approach to git branching and releases
|
||||
- [Configuration](./configuration.md) - how users can configure HassOS
|
||||
- [Partition](./partition.md) - partition layout
|
||||
- [Network](./network.md) - approach to networking
|
||||
- [Bluetooth](./bluetooth.md) - approach to bluetooth
|
||||
- [Kernel](./kernel.md) - kernel versions
|
||||
- [Boards](./boards/README.md) - board specific documentation
|
53
Documentation/boards/README.md
Normal file
53
Documentation/boards/README.md
Normal file
@ -0,0 +1,53 @@
|
||||
# Boards
|
||||
|
||||
## Overview
|
||||
|
||||
The following boards/devices are supported:
|
||||
|
||||
- Raspberry Pi
|
||||
- Pi 4 Model B (1 GB, 2 GB and 4 GB model) 32-bit (recommended)
|
||||
- Pi 4 Model B (1 GB, 2 GB and 4 GB model) 64-bit
|
||||
- Pi 3 Model B and B+ 32-bit (recommended)
|
||||
- Pi 3 Model B and B+ 64-bit
|
||||
- Pi 2 (not recommended)
|
||||
- Pi Zero-W (not recommended)
|
||||
- Pi (not recommended)
|
||||
- Hardkernel
|
||||
- Odroid-C2
|
||||
- Odroid-N2
|
||||
- Odroid-XU4
|
||||
- Intel NUC
|
||||
- Intel NUC5CPYH
|
||||
- Intel NUC6CAYH
|
||||
- Intel NUC10I3FNK2
|
||||
- Gigabyte GB-BPCE-3455
|
||||
- Others recent Intel NUC computers are likely to work too, only those listed above have been tested.
|
||||
- Asus
|
||||
- Tinker Board
|
||||
- Virtual appliance (x86_64/UEFI):
|
||||
- VMDK
|
||||
- OVA ?
|
||||
- VHDX ?
|
||||
- VDI ?
|
||||
- QCOW2 ?
|
||||
|
||||
Notes:
|
||||
- see ? above: are these currently supported? see ova documentation which explains issues with previous OVA distribution)
|
||||
|
||||
## Board specifics
|
||||
|
||||
|Board|Build|Config|Docs|
|
||||
|-----|----|------|----|
|
||||
|Pi4B 32-bit |`make rpi4` |[rpi4](../../buildroot-external/configs/rpi4_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi4B 64-bit |`make rpi4_64` |[rpi4_64](../../buildroot-external/configs/rpi4_64_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi3B 32-bit |`make rpi3` |[rpi3](../../buildroot-external/configs/rpi3_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi3B 64-bit |`make rpi3_64` |[rpi3_64](../../buildroot-external/configs/rpi3_64_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi2 |`make rpi2` |[rpi2](../../buildroot-external/configs/rpi2_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi Zero |`make rpi0_w` |[rpi0_w](../../buildroot-external/configs/rpi0_w_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Pi |`make rpi` |[rpi](../../buildroot-external/configs/rpi_defconfig)|[raspberrypi](./raspberrypi/)|
|
||||
|Odroid-C2 |`make odroid_c2` |[odroid_c2](../../buildroot-external/configs/odroid_c2_defconfig)|[hardkernel](./hardkernel/)|
|
||||
|Odroid-N2 |`make odroid_n2` |[odroid_n2](../../buildroot-external/configs/odroid_n2_defconfig)|[hardkernel](./hardkernel/)|
|
||||
|Odroid-XU4 |`make odroid_xu4`|[odroid_xu4](../../buildroot-external/configs/odroid_xu4_defconfig)|[hardkernel](./hardkernel/)|
|
||||
|NUC |`make intel_nuc` |[intel_nuc](../../buildroot-external/configs/intel_nuc_defconfig)|[intel](./intel/)|
|
||||
|Tinker Board|`make tinker` |[tinker](../../buildroot-external/configs/tinker_defconfig)|[asus](./asus/)|
|
||||
|OVA |`make ova` |[ova](../../buildroot-external/configs/ova_defconfig)|[ova](./ova/)|
|
21
Documentation/boards/asus/README.md
Normal file
21
Documentation/boards/asus/README.md
Normal file
@ -0,0 +1,21 @@
|
||||
# Tinker Board
|
||||
|
||||
## Supported Hardware
|
||||
|
||||
| Device | Release Date | Support | Config |
|
||||
|----------------|---------------|---------|----------|
|
||||
| Tinker RK3288 | April 2017 | yes | [tinker](../../../buildroot-external/configs/tinker_defconfig) |
|
||||
| Tinker S RK3288| January 2018 | yes? | [tinker](../../../buildroot-external/configs/tinker_defconfig)? |
|
||||
| Tinker Edge T | November 2019 | no? | |
|
||||
| Tinker Edge R | November 2019 | no? | |
|
||||
|
||||
(? is the Tinker S supported?)
|
||||
<!--
|
||||
## eMMC
|
||||
|
||||
eMMC support is provided transparently. Just flash the image to the eMMC by connecting your Tinker Board S to your PC via Micro-USB.
|
||||
-->
|
||||
|
||||
## Serial console
|
||||
|
||||
To access the terminal over serial console, add `console=ttyS2,115200` to `cmdline.txt`. GPIO pins are: 34 = GND / 32 = UART TXD / 33 = UART RXD.
|
11
Documentation/boards/hardkernel/README.md
Normal file
11
Documentation/boards/hardkernel/README.md
Normal file
@ -0,0 +1,11 @@
|
||||
# ODROID
|
||||
|
||||
## Supported Hardware
|
||||
|
||||
| Device | Release Date | Support | Config |
|
||||
|----------------|---------------|---------|-----------|
|
||||
| ODROID-XU4 | 2015 | yes | [odroid_xu4](../../../buildroot-external/configs/odroid_xu4_defconfig)|
|
||||
| ODROID-C2 | 2016 | yes | [odroid_c2](../../../buildroot-external/configs/odroid_c2_defconfig) |
|
||||
| ODROID-N2 | 2019 | yes | [odroid_n2](../../../buildroot-external/configs/odroid_n2_defconfig) |
|
||||
|
||||
See separate documentation for each board.
|
@ -1,22 +1,24 @@
|
||||
# Odroid-XU4
|
||||
# ODROID-XU4
|
||||
|
||||
## eMMC
|
||||
|
||||
The Odroid XU4 has a hidden boot sector that is only visible on the Odroid itself (can't be written by a card reader). There are a couple possibilities:
|
||||
1) If the eMMC already had a working image before flashing HassOS:
|
||||
* It will be booting to uBoot (but no further).
|
||||
* If you have the serial adapter, you should be able to enter `distro_bootcmd` at the uboot prompt to continue booting.
|
||||
* If not, flash the HassOS image to an SD card and boot off that temporarily (while the eMMC is also plugged in).
|
||||
* Once booted, login at the prompts and then enter `dd if=/dev/mmcblk0 of=/dev/mmcblk0boot0 bs=512 skip=63 seek=62 count=1440` at the linux prompt.
|
||||
* Reboot with eMMC (don't forget to flip the boot switch to eMMC)
|
||||
2) Clean/wiped/corruped boot sector:
|
||||
* You'll need to follow [Hardkernel's instructions](https://forum.odroid.com/viewtopic.php?f=53&t=6173) to get a working boot sector. Then flash HassOS and follow instructions above.
|
||||
* Alternatively, you can try flash HassOS to both an SD and eMMC, then boot off the SD with the eMMC also plugged in, then run `dd if=/dev/mmcblk1 of=/dev/mmcblk0boot0 bs=512 skip=1 seek=0 count=16381` at the Linux prompt. Note that this is untested, but in theory should work..
|
||||
The ODROID XU4 uses the eMMC boot partition to boot from. Typically eMMC readers can't write to this eMMC boot partition. There are a couple of possibilities:
|
||||
|
||||
1. **Working** e.g. the eMMC already had a working image before flashing HassOS:
|
||||
- It will be booting to U-Boot (but no further).
|
||||
- If you have the serial adapter, you should be able to enter `distro_bootcmd` at the uboot prompt to continue booting.
|
||||
- If not, flash the HassOS image to an SD card and boot off that temporarily (while the eMMC is also plugged in).
|
||||
- Once booted, login at the prompts and then enter `dd if=/dev/mmcblk0 of=/dev/mmcblk0boot0 bs=512 skip=63 seek=62 count=1440` at the linux prompt.
|
||||
- Reboot with eMMC (don't forget to flip the boot switch to eMMC)
|
||||
2. **Not Working** e.g. a clean/wiped/corruped eMMC boot partition:
|
||||
- You'll need to follow [Hardkernel's instructions](https://forum.odroid.com/viewtopic.php?f=53&t=6173) to get a working boot sector. Then flash HassOS and follow instructions above.
|
||||
- Alternatively, you can try flash HassOS to both an SD and eMMC, then boot off the SD with the eMMC also plugged in, then run `dd if=/dev/mmcblk1 of=/dev/mmcblk0boot0 bs=512 skip=1 seek=0 count=16381` at the Linux prompt. Note that this is untested, but in theory should work..
|
||||
|
||||
If you are getting permissions issues when using the dd command, try disabling RO:
|
||||
`echo 0 > /sys/block/mmcblk0boot0/force_ro`
|
||||
to re-enable after running dd:
|
||||
`echo 1 > /sys/block/mmcblk0boot0/force_ro`
|
||||
|
||||
## Console
|
||||
|
||||
By default, console access is granted over the serial header and over HDMI. Certain startup messages will only appear on the serial console by default. To show the messages on the HDMI console instead, swap the order of the two consoles in the `cmdline.txt` file on the boot partition. You can also delete the SAC2 console if you don't plan on using the serial adapter.
|
||||
|
@ -1,9 +1,23 @@
|
||||
# Intel NUC
|
||||
|
||||
This board configuration supports the Intel NUC mini PCs and compatibles.
|
||||
Probably most recent computers will work.
|
||||
## Supported Hardware
|
||||
|
||||
This board configuration supports the Intel NUC mini PCs and compatibles. It should work for most recent NUC computers and, because this is a UEFI based image, it should in fact work with for any x86-64 based computer with UEFI. Hardware it has been tested with is listed below.
|
||||
|
||||
## Tested Hardware
|
||||
|
||||
| Device | Release Date | Support | Config |
|
||||
|-----------------------|--------------|---------|-------------|
|
||||
| Intel NUC5CPYH | Q3 2015 | yes | [intel_nuc](../../../buildroot-external/configs/intel_nuc_defconfig) |
|
||||
| Intel NUC6CAYH | Q4 2016 | yes | [intel_nuc](../../../buildroot-external/configs/intel_nuc_defconfig) |
|
||||
| Intel NUC10i3FNK2 | Q4 2019 | yes | [intel_nuc](../../../buildroot-external/configs/intel_nuc_defconfig) |
|
||||
| Gigabyte GB-BPCE-3455 | 2017 | yes* | [intel_nuc](../../../buildroot-external/configs/intel_nuc_defconfig) |
|
||||
|
||||
\* needs 'nomodeset' in cmdline.txt if you want a console
|
||||
|
||||
|
||||
## Requirements
|
||||
|
||||
Requirements:
|
||||
- x86-64 support
|
||||
- UEFI boot
|
||||
- SATA/AHCI storage
|
||||
@ -13,16 +27,6 @@ Requirements:
|
||||
- Realtek Gigabit NIC (r8169)
|
||||
- Intel Wireless Wifi 802.11ac (iwlwifi, see below)
|
||||
|
||||
## Tested Hardware
|
||||
|
||||
| Device | Quirks |
|
||||
|--------|-----------|
|
||||
| Intel NUC5CPYH | |
|
||||
| Intel NUC6CAYH | |
|
||||
| Intel NUC10I3FNK2 | |
|
||||
| Gigabyte GB-BPCE-3455 | needs 'nomodeset' in cmdline.txt if you want a console |
|
||||
|
||||
|
||||
## Wifi
|
||||
|
||||
The following cards are supported:
|
||||
@ -50,4 +54,3 @@ Currently there is no shiny installation method. Checklist:
|
||||
- Copy or download the hassos image into your live environment
|
||||
- zcat the image to local harddisk
|
||||
- Reboot
|
||||
|
@ -1,18 +0,0 @@
|
||||
# Virtual Machine
|
||||
|
||||
Using this VMDK in a virtual machine requires the following:
|
||||
|
||||
- Operating system: Other 4.x or later Linux (64-bit)
|
||||
- Enabled support for UEFI boot
|
||||
- SATA disk controller
|
||||
- Minimal of 1GB RAM
|
||||
- At least 2x vCPU
|
||||
- An assigned network
|
||||
|
||||
# OVA (Open Virtual Appliance)
|
||||
|
||||
Currently, we only publish a VMDK virtual disk, due to issues with our previous OVA distribution. We are currently investigating our options to bring back the OVA distribution. However, the VMDK works on the following hypervisors:
|
||||
|
||||
- HyperV
|
||||
- VirtualBox
|
||||
- VMware
|
22
Documentation/boards/ova/README.md
Normal file
22
Documentation/boards/ova/README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# Virtual Machine
|
||||
|
||||
## Supported Hypervisors
|
||||
|
||||
| Hypervisor | Vendor | Support | Config |
|
||||
|---------------------|-----------|-----------------|--------------------|
|
||||
| HyperV | Microsoft | yes, via VMDK | [ova](../../../buildroot-external/configs/ova_defconfig) |
|
||||
| VirtualBox | Oracle | yes, via VMDK | [ova](../../../buildroot-external/configs/ova_defconfig) |
|
||||
| VMware | VMware | yes, via VMDK | [ova](../../../buildroot-external/configs/ova_defconfig) |
|
||||
|
||||
Currently we only publish a VMDK virtual disk due to issues with our previous OVA distribution. We are investigating our options to bring back the OVA distribution, however, the VMDK works for the hypervisors listed above.
|
||||
|
||||
## Requirements
|
||||
|
||||
Using this VMDK in a virtual machine requires the following:
|
||||
|
||||
- Operating system: Other 4.x or later Linux (64-bit)
|
||||
- Enabled support for UEFI boot
|
||||
- SATA disk controller
|
||||
- Minimal of 1GB RAM
|
||||
- At least 2x vCPU
|
||||
- An assigned network
|
@ -1,15 +1,17 @@
|
||||
# Raspberry PI
|
||||
|
||||
Supported Hardware:
|
||||
## Supported Hardware
|
||||
|
||||
| Device | Board |
|
||||
|--------|-----------|
|
||||
| Raspberry Pi A+/B/B+| rpi |
|
||||
| Raspberry Pi Zero | rpi |
|
||||
| Raspberry Pi Zero W | rpi0-w |
|
||||
| Raspberry Pi 2 B | rpi2 |
|
||||
| Raspberry Pi 3 B/B+ | rpi3 / rpi3-64 |
|
||||
| Raspberry Pi 4 B | rpi4 / rpi4-64 |
|
||||
| Device | Release Date | Support | Config |
|
||||
|---------------------|---------------|-----------------|--------------------|
|
||||
| Raspberry Pi B/B+/A+|2012/2014/2014 | not recommended | [rpi](../../../buildroot-external/configs/rpi_defconfig) |
|
||||
| Raspberry Pi 2 B |2015 | not recommended | [rpi2](../../../buildroot-external/configs/rpi2_defconfig) |
|
||||
| Raspberry Pi Zero |2015 | not recommended | [rpi](../../../buildroot-external/configs/rpi_defconfig) |
|
||||
| Raspberry Pi Zero W |2017 | not recommended | [rpi0_w](../../../buildroot-external/configs/rpi0_w_defconfig) |
|
||||
| Raspberry Pi 3 B/B+ |2016/2018 | yes | [rpi3](../../../buildroot-external/configs/rpi3_defconfig) / [rpi3_64](../../../buildroot-external/configs/rpi3_64_defconfig) |
|
||||
| Raspberry Pi 4 B |2019 | yes* | [rpi4](../../../buildroot-external/configs/rpi4_defconfig) / [rpi4_64](../../../buildroot-external/configs/rpi4_64_defconfig) |
|
||||
|
||||
\*1,2 and 4 GiB versions of the Raspberry Pi 4 B are supported. Support for the 8 GiB version is coming soon is part of #740.
|
||||
|
||||
## Limitation 64bit
|
||||
|
@ -1,19 +0,0 @@
|
||||
# Tinker Board
|
||||
|
||||
Supported Hardware:
|
||||
|
||||
| Device | Board |
|
||||
|--------|-----------|
|
||||
| Tinker RK3288 | tinker |
|
||||
| Tinker S RK3288 | |
|
||||
|
||||
<!--
|
||||
## eMMC
|
||||
|
||||
eMMC support is provided transparently. Just flash the image to the eMMC by connecting your Tinker Board S to your PC via Micro-USB.
|
||||
-->
|
||||
|
||||
## Serial console
|
||||
|
||||
To access the terminal over serial console, add `console=ttyS2,115200` to `cmdline.txt`. GPIO pins are: 34 = GND / 32 = UART TXD / 33 = UART RXD.
|
||||
|
@ -5,7 +5,7 @@ Default Kernel tree: 5.4
|
||||
|
||||
| Board | Version |
|
||||
|-------|---------|
|
||||
| Open Virtual Applicance | 5.4.53 |
|
||||
| Open Virtual Appliance | 5.4.53 |
|
||||
| Raspberry Pi | 4.19.127 |
|
||||
| Raspberry Pi 0-W | 4.19.127 |
|
||||
| Raspberry Pi 2 | 4.19.127 |
|
||||
|
60
README.md
60
README.md
@ -1,18 +1,52 @@
|
||||
# Home Assistant Operating system
|
||||
# Home Assistant Operating System
|
||||
|
||||
Home Assistant Operating System (HassOS) is based on [buildroot](https://buildroot.org/). It's a hypervisor for Docker and supports various kind of hardware. It is also available as virtual appliance for different virtualization solutions. The whole system is optimized for hosting [Home Assistant](https://www.home-assistant.io) and its features (to be precise, the [Add-ons](https://www.home-assistant.io/addons/)). You can update the system by using OTA updates or offline updates.
|
||||
Home Assistant Operating System (formerly HassOS) is an operating system optimized for hosting [Home Assistant](https://www.home-assistant.io) and its [Add-ons](https://www.home-assistant.io/addons/).
|
||||
|
||||
This is an embedded Linux which works different than a normal Linux distribution. The system is designed to run with minimal I/O and is optimized for its tasks.
|
||||
Home Assistant Operating System uses Docker as Container engine. It by default deploys the Home Assistant Supervisor as a container. Home Assistant Supervisor in turn uses the Docker container engine to control Home Assistant Core and Add-Ons in separate containers. Home Assistant Operating System is **not** based on a regular Linux distribution like Ubuntu. It is built using [buildroot](https://buildroot.org/) and it is optimized for running Home Assistant, especially on single board compute (SBC) devices like the Pi, ODROID, NUC and Tinker Board (see supported hardware below).
|
||||
|
||||
If you don't have experience with embedded systems, buildroot or the build process Linux distributions, then please read up on those topics. All provided documentation here is focusing on developers with a background on embedded systems or a strong understanding of the internal workings of operating systems.
|
||||
## Features
|
||||
|
||||
## Focus
|
||||
- Lightweight and memory-efficient
|
||||
- Minimized I/O
|
||||
- Over The Air (OTA) updates
|
||||
- Offline updates
|
||||
- Modular using Docker
|
||||
|
||||
- Barebox as bootloader on EFI
|
||||
- U-Boot as bootloader
|
||||
- Linux/Buildroot LTS
|
||||
- RAUC for OTA updates
|
||||
- SquashFS LZ4 as filesystem
|
||||
- Docker-CE
|
||||
- AppArmor protected
|
||||
- ZRAM LZ4 for `/tmp`, `/var` and swap
|
||||
## Supported hardware
|
||||
|
||||
- Raspberry Pi
|
||||
- Hardkernel ODROID
|
||||
- Intel NUC
|
||||
- Asus Tinker Board
|
||||
- Virtual appliances
|
||||
|
||||
See full list and specific models [here](./Documentation/boards/README.md)
|
||||
|
||||
## Getting Started
|
||||
|
||||
If you just want to use Home Assistant the official [getting started guide](https://www.home-assistant.io/getting-started/) and [installation instructions](https://www.home-assistant.io/hassio/installation/) take you through how to download Home Assistant Operating System and get it running on your machine.
|
||||
|
||||
If you're interested in finding out more about Home Assistant Operating System and how it works read on...
|
||||
|
||||
## HassOS components
|
||||
|
||||
- **Bootloader:**
|
||||
- [Barebox](https://barebox.org/) for devices that support EFI
|
||||
- [U-Boot](https://www.denx.de/wiki/U-Boot) for devices that don't support EFI
|
||||
- **Operating System:**
|
||||
- [Buildroot](https://buildroot.org/) LTS Linux
|
||||
- **File Systems:**
|
||||
- [SquashFS](https://www.kernel.org/doc/Documentation/filesystems/squashfs.txt) for read-only file systems (using LZ4 compression)
|
||||
- [ZRAM](https://www.kernel.org/doc/Documentation/blockdev/zram.txt) for `/tmp`, `/var` and swap (using LZ4 compression)
|
||||
- **Container Platform:**
|
||||
- [Docker Engine](https://docs.docker.com/engine/) for running Home Assistant components in containers
|
||||
- **Updates:**
|
||||
- [RAUC](https://rauc.io/) for Over The Air (OTA) and USB updates
|
||||
- **Security:**
|
||||
- [AppArmor](https://apparmor.net/) Linux kernel security module
|
||||
|
||||
If you don't have experience with these, embedded systems, buildroot or the build process for Linux distributions, then please read up on these topics. The rest of the documentation in this project is for developers and assumes you have experience of embedded systems or a strong understanding of the internal workings of operating systems.
|
||||
|
||||
## Developer Documentation
|
||||
|
||||
All developer documentation is in the [Documentation](./Documentation) directory.
|
||||
|
@ -7,5 +7,5 @@ if [ -z "$1" ]; then
|
||||
fi
|
||||
|
||||
sed -i "s/BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE=\".*\"/BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE=\"$1\"/g" buildroot-external/configs/{intel_nuc,ova,tinker}_defconfig
|
||||
sed -i "s/| \(Open Virtual Applicance\|Intel NUC\|Tinker Board\) | .* |/| \1 | $1 |/g" Documentation/kernel.md
|
||||
sed -i "s/| \(Open Virtual Appliance\|Intel NUC\|Tinker Board\) | .* |/| \1 | $1 |/g" Documentation/kernel.md
|
||||
git commit -m "Linux: Update kernel $1" buildroot-external/configs/* Documentation/kernel.md
|
||||
|
Loading…
x
Reference in New Issue
Block a user