mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-08-21 10:59:20 +00:00
Compare commits
313 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
6fdd892aaf | ||
![]() |
90dc5b54c0 | ||
![]() |
5b68cf097a | ||
![]() |
b50df06358 | ||
![]() |
84500a88d1 | ||
![]() |
854202a1b8 | ||
![]() |
e51a0811a1 | ||
![]() |
15fc1f447e | ||
![]() |
26b5f910b5 | ||
![]() |
5cc352bb44 | ||
![]() |
3315f6d9c4 | ||
![]() |
0f1c8dbf56 | ||
![]() |
f5df6e18a8 | ||
![]() |
ba78c80b97 | ||
![]() |
38bc2b4f91 | ||
![]() |
69af4b3819 | ||
![]() |
14de047663 | ||
![]() |
a310232e2c | ||
![]() |
93ea56d0ea | ||
![]() |
83dabb2842 | ||
![]() |
bf05e66ae8 | ||
![]() |
e1fb61e8a8 | ||
![]() |
480c11535d | ||
![]() |
b731b422fe | ||
![]() |
27cd425f5b | ||
![]() |
42f1c4bf01 | ||
![]() |
b3943870dc | ||
![]() |
4b4e22c355 | ||
![]() |
7675cc61fb | ||
![]() |
11b1867c73 | ||
![]() |
5cd03d19dd | ||
![]() |
26d7a4cb23 | ||
![]() |
cc80265997 | ||
![]() |
8434f3ee55 | ||
![]() |
ddde16216c | ||
![]() |
3e8499ecbf | ||
![]() |
42dc915436 | ||
![]() |
17ca2ccf0a | ||
![]() |
1e30f5120c | ||
![]() |
e30e15dc53 | ||
![]() |
3aaadf3f5f | ||
![]() |
161c8624e0 | ||
![]() |
56afd74720 | ||
![]() |
ed5a5033dd | ||
![]() |
2abbbbd1fa | ||
![]() |
fa44e0a7fd | ||
![]() |
1a3d063fec | ||
![]() |
49df049f2c | ||
![]() |
c657f6f3e7 | ||
![]() |
0a43cbdb05 | ||
![]() |
45274411e7 | ||
![]() |
d5ff3596b1 | ||
![]() |
95f82aa75d | ||
![]() |
fc4de4f02a | ||
![]() |
eae3659909 | ||
![]() |
6a05718235 | ||
![]() |
5055236725 | ||
![]() |
ac40e97670 | ||
![]() |
b9816f097d | ||
![]() |
73ac253a0f | ||
![]() |
dd3935a786 | ||
![]() |
f1461081f5 | ||
![]() |
fa79721f3d | ||
![]() |
9f6a339ec7 | ||
![]() |
fb235891e9 | ||
![]() |
d6f5c337e1 | ||
![]() |
63453e0a3f | ||
![]() |
76a4376a96 | ||
![]() |
ffbef150ca | ||
![]() |
acd76288de | ||
![]() |
bdf55189d9 | ||
![]() |
b2211540ea | ||
![]() |
e4e134f474 | ||
![]() |
cc8f77c5d6 | ||
![]() |
7ec8a232d1 | ||
![]() |
a426046bcc | ||
![]() |
f9f8b91b31 | ||
![]() |
ac8ebea80c | ||
![]() |
c13d403c8d | ||
![]() |
b785eafb4e | ||
![]() |
9d595d8bef | ||
![]() |
a57864c199 | ||
![]() |
96a5f891ba | ||
![]() |
2bf10f8a5c | ||
![]() |
c9f3212642 | ||
![]() |
35835e1e58 | ||
![]() |
3896d4c096 | ||
![]() |
d993c48917 | ||
![]() |
2afef71117 | ||
![]() |
e5ac0b674b | ||
![]() |
445d6b2bf9 | ||
![]() |
d647590d98 | ||
![]() |
9ec32eda85 | ||
![]() |
3c21a8c486 | ||
![]() |
5fa9e77ee3 | ||
![]() |
90104942d7 | ||
![]() |
c503592a56 | ||
![]() |
68dddf0ad7 | ||
![]() |
2401c7b0f8 | ||
![]() |
db446f4656 | ||
![]() |
d8b808c8b3 | ||
![]() |
50e0149d37 | ||
![]() |
42f195e91c | ||
![]() |
8d7608d6c8 | ||
![]() |
1da33cd3d6 | ||
![]() |
a64321a585 | ||
![]() |
145ebfbda1 | ||
![]() |
89f7b657bf | ||
![]() |
cb80bb725c | ||
![]() |
e866e0738f | ||
![]() |
9a16185a85 | ||
![]() |
24082ba3a6 | ||
![]() |
b13086072c | ||
![]() |
7db3226a8e | ||
![]() |
8df611eaf1 | ||
![]() |
d0297886dd | ||
![]() |
7c80363623 | ||
![]() |
073fefb5d5 | ||
![]() |
d784ba8c36 | ||
![]() |
9e141e782f | ||
![]() |
0638bac388 | ||
![]() |
50cc88832d | ||
![]() |
e6acda91c7 | ||
![]() |
304dd74b94 | ||
![]() |
8bb2746659 | ||
![]() |
648360e9c7 | ||
![]() |
82942ec94f | ||
![]() |
fe16b125f3 | ||
![]() |
0fd4576e5d | ||
![]() |
6f420eb85c | ||
![]() |
3a0c9ef68d | ||
![]() |
fc34f1a9ac | ||
![]() |
b5dcec8053 | ||
![]() |
bbde697cdc | ||
![]() |
9c60fed15b | ||
![]() |
f427eef157 | ||
![]() |
357ceeebe4 | ||
![]() |
5d0401a528 | ||
![]() |
3b7aed4cb2 | ||
![]() |
116c451ffb | ||
![]() |
1102d20e89 | ||
![]() |
6b3919beeb | ||
![]() |
bbdca42623 | ||
![]() |
e6c9a97ce8 | ||
![]() |
f79646b782 | ||
![]() |
7882d2a63f | ||
![]() |
21093354e4 | ||
![]() |
bb72e0ab1e | ||
![]() |
ae544607cc | ||
![]() |
3ef47f12d7 | ||
![]() |
44cde8a23d | ||
![]() |
21e6fcbe4a | ||
![]() |
2be580880d | ||
![]() |
0a65fd2e09 | ||
![]() |
dd81e7b6a7 | ||
![]() |
7bd1b4fc72 | ||
![]() |
9f42e7ed24 | ||
![]() |
b80efb9a4e | ||
![]() |
6e3beec383 | ||
![]() |
fb1941c7d0 | ||
![]() |
d3f0f1fbcf | ||
![]() |
9a06af6396 | ||
![]() |
cc28238d42 | ||
![]() |
ff6e0f297a | ||
![]() |
8ebff931c0 | ||
![]() |
6ddc73e51c | ||
![]() |
8ef36c928f | ||
![]() |
f81e54a124 | ||
![]() |
f7276c3fc8 | ||
![]() |
ef3c600f3e | ||
![]() |
b4b9c578be | ||
![]() |
e3645e22df | ||
![]() |
a940b5c084 | ||
![]() |
45dfd904d1 | ||
![]() |
8e37f9af9d | ||
![]() |
cb5c9d1121 | ||
![]() |
e3d4eb3a3b | ||
![]() |
da4c7f4e6a | ||
![]() |
d446511f5d | ||
![]() |
d554f395d0 | ||
![]() |
2e5538f7d6 | ||
![]() |
101ca67333 | ||
![]() |
625a0650fa | ||
![]() |
5e2573b9f2 | ||
![]() |
673b1a33ba | ||
![]() |
346464f55c | ||
![]() |
79a25ab4ae | ||
![]() |
0c25f11028 | ||
![]() |
7698f7f60d | ||
![]() |
9a39a222ca | ||
![]() |
8123c124f8 | ||
![]() |
9600025ead | ||
![]() |
cbcf9fbe3b | ||
![]() |
55d1d73cd6 | ||
![]() |
3599b68c97 | ||
![]() |
3db2bf37be | ||
![]() |
a676448313 | ||
![]() |
c9e5eafb17 | ||
![]() |
280f1a819c | ||
![]() |
9a039eddc5 | ||
![]() |
ec8a11051a | ||
![]() |
ff74eb2b93 | ||
![]() |
097eea4872 | ||
![]() |
d7fa6930c9 | ||
![]() |
4dc7bfbd2d | ||
![]() |
5b3eb8cc7e | ||
![]() |
3a5d2de705 | ||
![]() |
4577d01a46 | ||
![]() |
07daad0d4b | ||
![]() |
b1fa1f55d7 | ||
![]() |
010b028571 | ||
![]() |
916809541a | ||
![]() |
9f79e421c1 | ||
![]() |
cf99b446ec | ||
![]() |
0143c267a1 | ||
![]() |
13a736d4bd | ||
![]() |
979af0c8bc | ||
![]() |
c30367a29a | ||
![]() |
b0825e17d5 | ||
![]() |
3b7ca01907 | ||
![]() |
5c1fc0768d | ||
![]() |
18f4706285 | ||
![]() |
c507e70641 | ||
![]() |
387d932392 | ||
![]() |
44f90cae13 | ||
![]() |
dfb13b5d40 | ||
![]() |
fdab219376 | ||
![]() |
1bfefec008 | ||
![]() |
455f99e83f | ||
![]() |
08991f6763 | ||
![]() |
9dd46dd486 | ||
![]() |
497c5365af | ||
![]() |
ef92d7a894 | ||
![]() |
40a1ba8d7f | ||
![]() |
a10446daef | ||
![]() |
cbd8f536f5 | ||
![]() |
77bf239b09 | ||
![]() |
3f5c73f87d | ||
![]() |
ab2def733d | ||
![]() |
ba713bc1b8 | ||
![]() |
eac5e0ebbb | ||
![]() |
d4135c29d1 | ||
![]() |
9c8f58276d | ||
![]() |
90d0bf609a | ||
![]() |
94a6198066 | ||
![]() |
7d3f2a6804 | ||
![]() |
404e861a27 | ||
![]() |
0bd750c691 | ||
![]() |
89dd86f943 | ||
![]() |
b19045e213 | ||
![]() |
e317e742fe | ||
![]() |
1385cc28cd | ||
![]() |
37d1c995b7 | ||
![]() |
4424f5ab6b | ||
![]() |
cc9009654f | ||
![]() |
1550495699 | ||
![]() |
264041d9bf | ||
![]() |
0513cb9a84 | ||
![]() |
f942d63fbc | ||
![]() |
359f6862f6 | ||
![]() |
a260468d52 | ||
![]() |
36c76e3295 | ||
![]() |
e4d7dc28fe | ||
![]() |
23cb9783fd | ||
![]() |
d4ab833721 | ||
![]() |
ddf6ad7798 | ||
![]() |
b89d1ff5e4 | ||
![]() |
7ec66438f5 | ||
![]() |
0d7cb228ae | ||
![]() |
054f6aa4fc | ||
![]() |
72fc4d6add | ||
![]() |
58bc4f8bbd | ||
![]() |
c4338b1330 | ||
![]() |
92cf29b0a1 | ||
![]() |
1567f4e051 | ||
![]() |
13e328a86f | ||
![]() |
9cfa86d1a3 | ||
![]() |
b944251a3e | ||
![]() |
8414161527 | ||
![]() |
afc36dbabc | ||
![]() |
2d75a978a5 | ||
![]() |
c05d027732 | ||
![]() |
84c51a0169 | ||
![]() |
9415e7f8ee | ||
![]() |
f881df3aa0 | ||
![]() |
43e48dec6e | ||
![]() |
18b86fad59 | ||
![]() |
3566873d08 | ||
![]() |
b0212beec3 | ||
![]() |
862bc04173 | ||
![]() |
508d84b97b | ||
![]() |
aafaf2b8ef | ||
![]() |
f7c980fcc2 | ||
![]() |
67a3f643da | ||
![]() |
c356987ae5 | ||
![]() |
e81898b701 | ||
![]() |
48d7fafd39 | ||
![]() |
90b7c9f0d1 | ||
![]() |
e816808382 | ||
![]() |
7eedd8c6c7 | ||
![]() |
69db31ba2e | ||
![]() |
f2fa29357f | ||
![]() |
93357c71ff | ||
![]() |
1e62743b1e | ||
![]() |
258717c412 | ||
![]() |
b53b2bdf99 | ||
![]() |
53e0d22875 | ||
![]() |
6515947a3c | ||
![]() |
14f9fc3eeb | ||
![]() |
d10d21ba08 | ||
![]() |
34f58015b4 | ||
![]() |
e544c14d3d | ||
![]() |
5a6b8c5bbe |
3
.gitattributes
vendored
3
.gitattributes
vendored
@@ -1,3 +0,0 @@
|
||||
# Ensure Docker script files uses LF to support Docker for Windows.
|
||||
# Ensure "git config --global core.autocrlf input" before you clone
|
||||
* text eol=lf
|
13
.github/move.yml
vendored
Normal file
13
.github/move.yml
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
# Configuration for move-issues - https://github.com/dessant/move-issues
|
||||
|
||||
# Delete the command comment. Ignored when the comment also contains other content
|
||||
deleteCommand: true
|
||||
# Close the source issue after moving
|
||||
closeSourceIssue: true
|
||||
# Lock the source issue after moving
|
||||
lockSourceIssue: false
|
||||
# Set custom aliases for targets
|
||||
# aliases:
|
||||
# r: repo
|
||||
# or: owner/repo
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1 +1,2 @@
|
||||
buildroot/ccache
|
||||
/release
|
||||
*.pem
|
||||
|
16
Documentation/boards/ova.md
Normal file
16
Documentation/boards/ova.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# OVA
|
||||
|
||||
The OVA stay for open virtual appliance. Currently we had remove the ova files and publish a vmdk virtual disk,
|
||||
until we have better OVF template to generate our OVA. This vmdk work with (maybe you need convert the disk):
|
||||
- HyperV
|
||||
- VirtualBox
|
||||
- VMware
|
||||
|
||||
## Virtual Machine
|
||||
|
||||
You can use this vmdk in a virtual machine with follow requirements:
|
||||
- OS: Linux 64bit
|
||||
- UEFI boot
|
||||
- min. 1GB RAM
|
||||
- 2x vcpu
|
||||
- 1x Network
|
5
Documentation/boards/raspberrypi.md
Normal file
5
Documentation/boards/raspberrypi.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# Raspberry PI
|
||||
|
||||
## Serial console
|
||||
|
||||
For access to terminal over serial console, add `console=ttyAMA0,115200` to `cmdline.txt` and `enable_uart=1` into `config.txt`.
|
21
Documentation/build.md
Normal file
21
Documentation/build.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# Building
|
||||
|
||||
Running `sudo ./enter.sh` will get you into the build Docker container.
|
||||
`make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external xy_defconfig`
|
||||
|
||||
## Scripts
|
||||
|
||||
|
||||
|
||||
## Helpers
|
||||
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external xy_defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external menuconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external linux-menuconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external barebox-menuconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external busybox-menuconfig`
|
||||
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external savedefconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external linux-update-defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external barebox-update-defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external busybox-update-config`
|
35
Documentation/configuration.md
Normal file
35
Documentation/configuration.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# Configuration
|
||||
|
||||
## Automatic
|
||||
|
||||
You can format a USB stick with FAT32/EXT4 and name it with `CONFIG`. The layout could be look like:
|
||||
```
|
||||
network/
|
||||
modules/
|
||||
authorized_keys
|
||||
hassos-xy.raucb
|
||||
```
|
||||
|
||||
- On `network` folder can hold any kind of NetworkManager connections files.
|
||||
- The folder `modules` is for modules-load configuration files.
|
||||
- `authorized_keys` file activate debug SSH access of port `22222`.
|
||||
- For firmware updates you can but the `hassos-*.raucb` OTA update they should be install.
|
||||
|
||||
You can put this USB stick into device and they will be read on startup. You can also trigger this process later over the
|
||||
API/UI or call `systemctl restart hassos-config` on host.
|
||||
|
||||
## Local
|
||||
|
||||
### Bootargs
|
||||
|
||||
You can edit or create a `cmdline.txt` into your boot partition. That will be read from our bootloader.
|
||||
|
||||
### Kernel-Module
|
||||
|
||||
The kernel module folder `/etc/modules-load.d` is persistent and you can add your config files there. See [Systemd modules load][systemd-modules].
|
||||
|
||||
### Network
|
||||
|
||||
You can manual add, edit or remove connections configs from `/etc/NetworkManager/system-connections`.
|
||||
|
||||
[systemd-modules]: https://www.freedesktop.org/software/systemd/man/modules-load.d.html
|
23
Documentation/deployment.md
Normal file
23
Documentation/deployment.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# Deployment
|
||||
|
||||
We know 3 types of release builds:
|
||||
- development (beta/dev)
|
||||
- staging (rc)
|
||||
- production (stable)
|
||||
|
||||
## Versioning
|
||||
The format of version is *MAJOR.BUILD*. Everytime we create a new release with same userland, we bump the build number.
|
||||
The development use here own major number they will be bump for the stable version and the development version go to next major number.
|
||||
|
||||
```
|
||||
0.x = development
|
||||
1.x = stable
|
||||
2.x = development
|
||||
3.x = stable
|
||||
```
|
||||
|
||||
## GIT Branch/Tag
|
||||
The branch `dev` ist the actual development branch and from there we never make a release. The `master` branch hould the development
|
||||
version from they we build a beta release.
|
||||
|
||||
If we create a new staging/productive release, we create a new branch `rel-{MAJOR}`. They will be used for the hole cycle of this release.
|
58
Documentation/network.md
Normal file
58
Documentation/network.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# Network
|
||||
|
||||
HassOS use NetworkManager to control the host network. You can setup the network configuartion in future over the API/UI.
|
||||
Actual we support only manual configuration with NetworkManager connection files. Without a configuration, we run default as
|
||||
DHCP device.
|
||||
|
||||
## Configuration Examples
|
||||
|
||||
You can look also into [Official Manual][keyfile] or there are a lot of examples accross internet.
|
||||
|
||||
### LAN
|
||||
```ini
|
||||
[connection]
|
||||
id=hassos-network
|
||||
type=ethernet
|
||||
|
||||
[ipv4]
|
||||
method=auto
|
||||
|
||||
[ipv6]
|
||||
addr-gen-mode=stable-privacy
|
||||
method=auto
|
||||
```
|
||||
|
||||
### Wireless WPA/PSK
|
||||
```ini
|
||||
[connection]
|
||||
id=hassos-network
|
||||
type=wifi
|
||||
|
||||
[wifi]
|
||||
mode=infrastructure
|
||||
ssid=MY_SSID
|
||||
|
||||
[wifi-security]
|
||||
auth-alg=open
|
||||
key-mgmt=wpa-psk
|
||||
psk=MY_WLAN_SECRED_KEY
|
||||
|
||||
[ipv4]
|
||||
method=auto
|
||||
|
||||
[ipv6]
|
||||
addr-gen-mode=stable-privacy
|
||||
method=auto
|
||||
```
|
||||
|
||||
### Static IP
|
||||
|
||||
Replace follow configs:
|
||||
```ini
|
||||
[ipv4]
|
||||
method=manual
|
||||
address1=192.168.1.111/24,192.168.1.1
|
||||
dns=8.8.8.8;8.8.4.4;
|
||||
```
|
||||
|
||||
[keyfile]: https://developer.gnome.org/NetworkManager/stable/nm-settings.html
|
58
README.md
58
README.md
@@ -1,54 +1,14 @@
|
||||
# WORK IN PROGRESS!
|
||||
|
||||
# Hass.io OS
|
||||
Hass.io OS based on buildroot. It's a hypervisor for docker and support many kind of IoT hardware. It is also available as Virtual Appliance. It's optimazed for embedded system and high security. You can update the system simple with OTA updates or offline Updates.
|
||||
# HassOS
|
||||
Hass.io OS based on [buildroot](https://buildroot.org/). It's a hypervisor for Docker and supports various kind of IoT hardware. It is also available as virtual appliance. The whole system is optimized for embedded system and security. You can update the system simple with OTA updates or offline updates.
|
||||
|
||||
## Focus
|
||||
- Linux kernel 4.15
|
||||
- Barebox as bootloader
|
||||
|
||||
- Linux kernel 4.14 (LT)
|
||||
- Barebox as bootloader on EFI
|
||||
- U-Boot as bootloader on IoT
|
||||
- RAUC for OTA updates
|
||||
- SquashFS LZ4 for filesystem
|
||||
- Docker 17.12.1
|
||||
- SquashFS LZ4 as filesystem
|
||||
- Docker 18.03.1
|
||||
- AppArmor protected
|
||||
- ZRAM LZ4 for /tmp, /var, swap
|
||||
- Run every supervisor
|
||||
|
||||
## Schemas
|
||||

|
||||
|
||||
## Config
|
||||
Create a USB stick with a partition "hassio-config". This partition can include follow files:
|
||||
|
||||
- network-* (NetworkManager keyfiles)
|
||||
- known_hosts (SSH)
|
||||
- hassio-os-*.ota (Firmware updates)
|
||||
|
||||
# Customize
|
||||
|
||||
## Supervisor/Cli
|
||||
|
||||
Provide a `hassio.json` on your data partition they can/need follow struct:
|
||||
```json
|
||||
{
|
||||
"supervisor": "repo/image",
|
||||
"supervisor_args": "optional / custom docker arguments",
|
||||
"cli": "repo/image",
|
||||
"cli_args": "optional / custom docker arguments"
|
||||
}
|
||||
```
|
||||
|
||||
# Building
|
||||
Running sudo `./enter.sh` will get you into the build docker container.
|
||||
`make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external xy_defconfig`
|
||||
|
||||
From outside the docker container, while it is still running you can use `./getimage.sh` to get the output image.
|
||||
|
||||
## Helpers
|
||||
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external defconfig BR2_DEFCONFIG=/build/buildroot-external/configs/xy_defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external menuconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external linux-menuconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external barebox-menuconfig`
|
||||
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external savedefconfig BR2_DEFCONFIG=/build/buildroot-external/configs/xy_defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external linux-update-defconfig`
|
||||
- `make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external barebox-update-defconfig`
|
||||
|
@@ -1,2 +1,3 @@
|
||||
source "$BR2_EXTERNAL_HASSIO_PATH/package/mingetty/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSIO_PATH/package/hassio/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/hassos/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/libapparmor/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/apparmor/Config.in"
|
||||
|
@@ -1,32 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
export PATH=/env/bin
|
||||
|
||||
global autoboot_timeout
|
||||
global boot.default
|
||||
global linux.bootargs.base
|
||||
global linux.bootargs.console
|
||||
#linux.bootargs.dyn.* will be cleared at the beginning of boot
|
||||
global linux.bootargs.dyn.root
|
||||
global editcmd
|
||||
|
||||
[ -z "${global.autoboot_timeout}" ] && global.autoboot_timeout=3
|
||||
magicvar -a global.autoboot_timeout "timeout in seconds before automatic booting"
|
||||
[ -z "${global.boot.default}" ] && global.boot.default="system0"
|
||||
[ -z "${global.editcmd}" ] && global.editcmd=sedit
|
||||
|
||||
[ -e /env/config-board ] && /env/config-board
|
||||
|
||||
# Autostart
|
||||
for i in /env/init/*; do
|
||||
. $i
|
||||
done
|
||||
|
||||
echo -e -n "\nHit any key to stop autoboot: "
|
||||
timeout -a $global.autoboot_timeout
|
||||
autoboot="$?"
|
||||
|
||||
if [ "$autoboot" = 0 ]; then
|
||||
boot
|
||||
fi
|
||||
|
@@ -1,3 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
global linux.bootargs.zram="zram.enabled=1 zram.num_devices=3"
|
@@ -1 +0,0 @@
|
||||
2
|
@@ -1 +0,0 @@
|
||||
system0 system1
|
@@ -1,5 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
global bootm.image="/mnt/disk1/boot/bzImage"
|
||||
global linux.bootargs.dyn.root="root=/dev/sda2 rootfstype=squashfs ro"
|
||||
|
@@ -1,4 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
global bootm.image="/mnt/disk2/boot/bzImage"
|
||||
global linux.bootargs.dyn.root="root=/dev/sda3 rootfstype=squashfs ro"
|
Binary file not shown.
@@ -1,37 +1,6 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_MMU=y
|
||||
CONFIG_MALLOC_SIZE=0x0
|
||||
CONFIG_MALLOC_TLSF=y
|
||||
CONFIG_PROMPT="hassio-os:"
|
||||
CONFIG_GLOB=y
|
||||
CONFIG_GLOB_SORT=y
|
||||
CONFIG_CMDLINE_EDITING=y
|
||||
CONFIG_AUTO_COMPLETE=y
|
||||
CONFIG_BOOTM_SHOW_TYPE=y
|
||||
CONFIG_BOOTM_OFTREE=y
|
||||
CONFIG_FLEXIBLE_BOOTARGS=y
|
||||
# CONFIG_PARTITION_DISK_DOS is not set
|
||||
CONFIG_PARTITION_DISK_EFI=y
|
||||
# CONFIG_PARTITION_DISK_EFI_GPT_NO_FORCE is not set
|
||||
# CONFIG_PARTITION_DISK_EFI_GPT_COMPARE is not set
|
||||
CONFIG_DEFAULT_ENVIRONMENT_PATH="/build/buildroot-external/board/ova/barebox-env /build/buildroot-external/barebox-env"
|
||||
CONFIG_STATE=y
|
||||
CONFIG_BOOTCHOOSER=y
|
||||
CONFIG_CMD_BOOT=y
|
||||
CONFIG_CMD_UIMAGE=y
|
||||
CONFIG_CMD_AUTOMOUNT=y
|
||||
CONFIG_CMD_NV=y
|
||||
CONFIG_CMD_EXPORT=y
|
||||
CONFIG_CMD_GLOBAL=y
|
||||
CONFIG_CMD_MAGICVAR=y
|
||||
CONFIG_CMD_BASENAME=y
|
||||
CONFIG_CMD_DIRNAME=y
|
||||
CONFIG_CMD_READLINK=y
|
||||
CONFIG_CMD_GETOPT=y
|
||||
CONFIG_CMD_TIMEOUT=y
|
||||
CONFIG_CMD_DETECT=y
|
||||
CONFIG_CMD_STATE=y
|
||||
CONFIG_CMD_BOOTCHOOSER=y
|
||||
CONFIG_DRIVER_SERIAL_EFI=y
|
||||
CONFIG_DRIVER_SERIAL_EFI_STDIO=y
|
||||
# CONFIG_SPI is not set
|
||||
@@ -40,8 +9,3 @@ CONFIG_DISK_WRITE=y
|
||||
CONFIG_CLOCKSOURCE_EFI=y
|
||||
CONFIG_FS_EFI=y
|
||||
CONFIG_FS_EFIVARFS=y
|
||||
CONFIG_FS_FAT=y
|
||||
CONFIG_FS_FAT_WRITE=y
|
||||
CONFIG_FS_FAT_LFN=y
|
||||
CONFIG_FS_SQUASHFS=y
|
||||
CONFIG_LZ4_DECOMPRESS=y
|
||||
|
5
buildroot-external/board/ova/info
Normal file
5
buildroot-external/board/ova/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=ova
|
||||
BOARD_NAME="Open Virtual Appliance"
|
||||
CHASSIS=vm
|
||||
BOOTLOADER=barebox
|
||||
KERNEL_FILE=bzImage
|
@@ -1,254 +1 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_KERNEL_LZ4=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_TASKSTATS=y
|
||||
CONFIG_TASK_DELAY_ACCT=y
|
||||
CONFIG_TASK_XACCT=y
|
||||
CONFIG_TASK_IO_ACCOUNTING=y
|
||||
CONFIG_LOG_BUF_SHIFT=18
|
||||
CONFIG_CGROUPS=y
|
||||
CONFIG_MEMCG=y
|
||||
CONFIG_MEMCG_SWAP=y
|
||||
CONFIG_BLK_CGROUP=y
|
||||
CONFIG_CGROUP_SCHED=y
|
||||
CONFIG_CFS_BANDWIDTH=y
|
||||
CONFIG_RT_GROUP_SCHED=y
|
||||
CONFIG_CGROUP_PIDS=y
|
||||
CONFIG_CGROUP_FREEZER=y
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CGROUP_DEVICE=y
|
||||
CONFIG_CGROUP_CPUACCT=y
|
||||
CONFIG_CGROUP_PERF=y
|
||||
CONFIG_USER_NS=y
|
||||
# CONFIG_COMPAT_BRK is not set
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_JUMP_LABEL=y
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_BSD_DISKLABEL=y
|
||||
CONFIG_CFQ_GROUP_IOSCHED=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_CALGARY_IOMMU=y
|
||||
CONFIG_SCHED_SMT=y
|
||||
CONFIG_PREEMPT_VOLUNTARY=y
|
||||
CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
|
||||
CONFIG_MICROCODE_AMD=y
|
||||
CONFIG_X86_MSR=y
|
||||
CONFIG_X86_CPUID=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_ZSMALLOC=y
|
||||
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
|
||||
# CONFIG_MTRR_SANITIZER is not set
|
||||
CONFIG_EFI=y
|
||||
CONFIG_EFI_STUB=y
|
||||
CONFIG_HZ_1000=y
|
||||
CONFIG_KEXEC=y
|
||||
# CONFIG_SUSPEND is not set
|
||||
CONFIG_PM=y
|
||||
CONFIG_ACPI_DOCK=y
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
|
||||
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
||||
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=y
|
||||
CONFIG_PCI_MMCONFIG=y
|
||||
CONFIG_PCIEPORTBUS=y
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_PCCARD=y
|
||||
CONFIG_YENTA=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_BINFMT_MISC=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_MULTIPLE_TABLES=y
|
||||
CONFIG_IP_ROUTE_MULTIPATH=y
|
||||
CONFIG_IP_ROUTE_VERBOSE=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
CONFIG_IP_PNP_BOOTP=y
|
||||
CONFIG_IP_PNP_RARP=y
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
CONFIG_SYN_COOKIES=y
|
||||
CONFIG_INET_ESP=y
|
||||
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_TCP_CONG_ADVANCED=y
|
||||
# CONFIG_TCP_CONG_BIC is not set
|
||||
# CONFIG_TCP_CONG_WESTWOOD is not set
|
||||
# CONFIG_TCP_CONG_HTCP is not set
|
||||
CONFIG_TCP_MD5SIG=y
|
||||
CONFIG_INET6_AH=y
|
||||
CONFIG_INET6_ESP=y
|
||||
CONFIG_NETLABEL=y
|
||||
CONFIG_NETWORK_SECMARK=y
|
||||
CONFIG_NETFILTER=y
|
||||
CONFIG_NF_CONNTRACK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_IPVS=y
|
||||
CONFIG_IP_VS=y
|
||||
CONFIG_IP_VS_RR=y
|
||||
CONFIG_IP_VS_NFCT=y
|
||||
CONFIG_NF_CONNTRACK_IPV4=y
|
||||
CONFIG_IP_NF_IPTABLES=y
|
||||
CONFIG_IP_NF_FILTER=y
|
||||
CONFIG_IP_NF_NAT=y
|
||||
CONFIG_IP_NF_TARGET_MASQUERADE=y
|
||||
CONFIG_BRIDGE=y
|
||||
CONFIG_NET_SCHED=y
|
||||
CONFIG_NET_CLS_CGROUP=y
|
||||
CONFIG_NET_EMATCH=y
|
||||
CONFIG_NET_CLS_ACT=y
|
||||
CONFIG_DNS_RESOLVER=y
|
||||
CONFIG_NET_L3_MASTER_DEV=y
|
||||
CONFIG_CGROUP_NET_PRIO=y
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_CONNECTOR=y
|
||||
CONFIG_OF=y
|
||||
CONFIG_ZRAM=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_LOOP_MIN_COUNT=4
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
CONFIG_BLK_DEV_SR_VENDOR=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SPI_ATTRS=y
|
||||
# CONFIG_SCSI_LOWLEVEL is not set
|
||||
CONFIG_ATA=y
|
||||
CONFIG_SATA_AHCI=y
|
||||
CONFIG_ATA_PIIX=y
|
||||
CONFIG_PATA_AMD=y
|
||||
CONFIG_PATA_OLDPIIX=y
|
||||
CONFIG_PATA_SCH=y
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_DUMMY=y
|
||||
CONFIG_MACVLAN=y
|
||||
CONFIG_IPVLAN=y
|
||||
CONFIG_VXLAN=y
|
||||
CONFIG_NETCONSOLE=y
|
||||
CONFIG_VETH=y
|
||||
CONFIG_TIGON3=y
|
||||
CONFIG_NET_TULIP=y
|
||||
CONFIG_E100=y
|
||||
CONFIG_E1000=y
|
||||
CONFIG_E1000E=y
|
||||
CONFIG_SKY2=y
|
||||
CONFIG_FORCEDETH=y
|
||||
CONFIG_8139TOO=y
|
||||
CONFIG_R8169=y
|
||||
CONFIG_FDDI=y
|
||||
CONFIG_INPUT_POLLDEV=y
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_INPUT_JOYSTICK=y
|
||||
CONFIG_INPUT_TABLET=y
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_INPUT_MISC=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_NONSTANDARD=y
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=32
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
CONFIG_SERIAL_8250_DETECT_IRQ=y
|
||||
CONFIG_SERIAL_8250_RSA=y
|
||||
CONFIG_NVRAM=y
|
||||
CONFIG_HPET=y
|
||||
# CONFIG_HPET_MMAP is not set
|
||||
CONFIG_I2C_I801=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_AGP=y
|
||||
CONFIG_AGP_AMD64=y
|
||||
CONFIG_AGP_INTEL=y
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_I915=y
|
||||
CONFIG_FB_MODE_HELPERS=y
|
||||
CONFIG_FB_TILEBLITTING=y
|
||||
CONFIG_FB_EFI=y
|
||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||
CONFIG_VGACON_SOFT_SCROLLBACK=y
|
||||
CONFIG_HIDRAW=y
|
||||
CONFIG_HID_GYRATION=y
|
||||
CONFIG_LOGITECH_FF=y
|
||||
CONFIG_HID_NTRIG=y
|
||||
CONFIG_HID_PANTHERLORD=y
|
||||
CONFIG_PANTHERLORD_FF=y
|
||||
CONFIG_HID_PETALYNX=y
|
||||
CONFIG_HID_SAMSUNG=y
|
||||
CONFIG_HID_SONY=y
|
||||
CONFIG_HID_SUNPLUS=y
|
||||
CONFIG_HID_TOPSEED=y
|
||||
CONFIG_HID_PID=y
|
||||
CONFIG_USB_HIDDEV=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
|
||||
CONFIG_USB_MON=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
CONFIG_USB_UHCI_HCD=y
|
||||
CONFIG_USB_PRINTER=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_EDAC=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
# CONFIG_RTC_HCTOSYS is not set
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_EEEPC_LAPTOP=y
|
||||
CONFIG_AMD_IOMMU=y
|
||||
CONFIG_INTEL_IOMMU=y
|
||||
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
|
||||
CONFIG_DAX=y
|
||||
CONFIG_EFI_VARS=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_EXT4_FS_POSIX_ACL=y
|
||||
CONFIG_EXT4_FS_SECURITY=y
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_OVERLAY_FS=y
|
||||
CONFIG_ISO9660_FS=y
|
||||
CONFIG_JOLIET=y
|
||||
CONFIG_ZISOFS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_PROC_KCORE=y
|
||||
CONFIG_TMPFS_POSIX_ACL=y
|
||||
CONFIG_HUGETLBFS=y
|
||||
CONFIG_SQUASHFS=y
|
||||
CONFIG_SQUASHFS_XATTR=y
|
||||
CONFIG_SQUASHFS_LZ4=y
|
||||
# CONFIG_NETWORK_FILESYSTEMS is not set
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ASCII=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_NLS_UTF8=y
|
||||
CONFIG_PRINTK_TIME=y
|
||||
# CONFIG_ENABLE_WARN_DEPRECATED is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_EARLY_PRINTK_DBGP=y
|
||||
CONFIG_OPTIMIZE_INLINING=y
|
||||
CONFIG_SECURITY=y
|
||||
CONFIG_SECURITY_APPARMOR=y
|
||||
CONFIG_CRYPTO_CCM=y
|
||||
CONFIG_CRYPTO_GCM=y
|
||||
CONFIG_CRYPTO_CMAC=y
|
||||
CONFIG_CRYPTO_ARC4=y
|
||||
CONFIG_CRYPTO_LZ4=y
|
||||
# CONFIG_VIRTUALIZATION is not set
|
||||
CONFIG_EFI_STUB=y
|
@@ -0,0 +1,123 @@
|
||||
From 405590bdb7ae434798010458e810c415e4e99db4 Mon Sep 17 00:00:00 2001
|
||||
From: Steffen Trumtrar <s.trumtrar@pengutronix.de>
|
||||
Date: Fri, 30 Jun 2017 16:53:34 +0200
|
||||
Subject: barebox-state: get devicetree from file
|
||||
|
||||
Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
|
||||
|
||||
diff --git a/src/barebox-state.c b/src/barebox-state.c
|
||||
index e68b8cb..3622e76 100644
|
||||
--- a/src/barebox-state.c
|
||||
+++ b/src/barebox-state.c
|
||||
@@ -308,7 +308,7 @@ static int state_set_var(struct state *state, const char *var, const char *val)
|
||||
}
|
||||
|
||||
|
||||
-struct state *state_get(const char *name, bool readonly, bool auth)
|
||||
+struct state *state_get(const char *name, const char *filename, bool readonly, bool auth)
|
||||
{
|
||||
struct device_node *root, *node, *partition_node;
|
||||
char *path;
|
||||
@@ -320,11 +320,19 @@ struct state *state_get(const char *name, bool readonly, bool auth)
|
||||
off_t offset;
|
||||
size_t size;
|
||||
|
||||
- root = of_read_proc_devicetree();
|
||||
- if (IS_ERR(root)) {
|
||||
- pr_err("Unable to read devicetree. %s\n",
|
||||
- strerror(-PTR_ERR(root)));
|
||||
- return ERR_CAST(root);
|
||||
+ if (filename) {
|
||||
+ void *fdt;
|
||||
+
|
||||
+ fdt = read_file(filename, NULL);
|
||||
+ if (fdt)
|
||||
+ root = of_unflatten_dtb(fdt);
|
||||
+ } else {
|
||||
+ root = of_read_proc_devicetree();
|
||||
+ if (IS_ERR(root)) {
|
||||
+ pr_err("Unable to read devicetree. %s\n",
|
||||
+ strerror(-PTR_ERR(root)));
|
||||
+ return ERR_CAST(root);
|
||||
+ }
|
||||
}
|
||||
|
||||
of_set_root_node(root);
|
||||
@@ -387,6 +395,7 @@ static struct option long_options[] = {
|
||||
{"get", required_argument, 0, 'g' },
|
||||
{"set", required_argument, 0, 's' },
|
||||
{"name", required_argument, 0, 'n' },
|
||||
+ {"input", required_argument, 0, 'i' },
|
||||
{"dump", no_argument, 0, 'd' },
|
||||
{"dump-shell", no_argument, 0, OPT_DUMP_SHELL },
|
||||
{"verbose", no_argument, 0, 'v' },
|
||||
@@ -402,6 +411,7 @@ static void usage(char *name)
|
||||
"-g, --get <variable> get the value of a variable\n"
|
||||
"-s, --set <variable>=<value> set the value of a variable\n"
|
||||
"-n, --name <name> specify the state to use (default=\"state\"). Multiple states are allowed.\n"
|
||||
+"-i, --input <name> load the devicetree from a file instead of using the system devicetree.\n"
|
||||
"-d, --dump dump the state\n"
|
||||
"--dump-shell dump the state suitable for shell sourcing\n"
|
||||
"-v, --verbose increase verbosity\n"
|
||||
@@ -439,12 +449,13 @@ int main(int argc, char *argv[])
|
||||
bool readonly = true;
|
||||
int pr_level = 5;
|
||||
int auth = 1;
|
||||
+ const char *dtb = NULL;
|
||||
|
||||
INIT_LIST_HEAD(&sg_list);
|
||||
INIT_LIST_HEAD(&state_list.list);
|
||||
|
||||
while (1) {
|
||||
- c = getopt_long(argc, argv, "hg:s:dvn:qf", long_options, &option_index);
|
||||
+ c = getopt_long(argc, argv, "hg:s:i:dvn:qf", long_options, &option_index);
|
||||
if (c < 0)
|
||||
break;
|
||||
switch (c) {
|
||||
@@ -490,6 +501,9 @@ int main(int argc, char *argv[])
|
||||
++nr_states;
|
||||
break;
|
||||
}
|
||||
+ case 'i':
|
||||
+ dtb = strdup(optarg);
|
||||
+ break;
|
||||
case ':':
|
||||
case '?':
|
||||
default:
|
||||
@@ -530,7 +544,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
list_for_each_entry(state, &state_list.list, list) {
|
||||
- state->state = state_get(state->name, readonly, auth);
|
||||
+ state->state = state_get(state->name, dtb, readonly, auth);
|
||||
if (!IS_ERR(state->state) && !state->name)
|
||||
state->name = state->state->name;
|
||||
if (IS_ERR(state->state)) {
|
||||
diff --git a/src/barebox-state.h b/src/barebox-state.h
|
||||
index bd89cf4..a0f49a5 100644
|
||||
--- a/src/barebox-state.h
|
||||
+++ b/src/barebox-state.h
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef __BAREBOX_STATE__
|
||||
#define __BAREBOX_STATE__
|
||||
|
||||
-struct state *state_get(const char *name, bool readonly, bool auth);
|
||||
+struct state *state_get(const char *name, const char *file, bool readonly, bool auth);
|
||||
char *state_get_var(struct state *state, const char *var);
|
||||
|
||||
#endif /* __BAREBOX_STATE__ */
|
||||
diff --git a/src/keystore-blob.c b/src/keystore-blob.c
|
||||
index 028dd8b..4572431 100644
|
||||
--- a/src/keystore-blob.c
|
||||
+++ b/src/keystore-blob.c
|
||||
@@ -30,7 +30,7 @@ int keystore_get_secret(const char *name, const unsigned char **key, int *key_le
|
||||
if (!state) {
|
||||
struct state *tmp;
|
||||
|
||||
- tmp = state_get(keystore_state_name, true, false);
|
||||
+ tmp = state_get(keystore_state_name, NULL, true, false);
|
||||
if (IS_ERR(tmp))
|
||||
return PTR_ERR(tmp);
|
||||
state = tmp;
|
||||
--
|
||||
cgit v0.10.2
|
@@ -0,0 +1,33 @@
|
||||
From 26148417fab419a0c7f301fb8f2be015324d5374 Mon Sep 17 00:00:00 2001
|
||||
From: Steffen Trumtrar <s.trumtrar@pengutronix.de>
|
||||
Date: Fri, 30 Jun 2017 16:53:17 +0200
|
||||
Subject: libdt: support finding devices by partuuid
|
||||
|
||||
Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
|
||||
|
||||
diff --git a/src/libdt.c b/src/libdt.c
|
||||
index 3adeed2..2bc6cc1 100644
|
||||
--- a/src/libdt.c
|
||||
+++ b/src/libdt.c
|
||||
@@ -2393,6 +2393,18 @@ int of_get_devicepath(struct device_node *partition_node, char **devpath, off_t
|
||||
*/
|
||||
node = partition_node->parent;
|
||||
|
||||
+ if (of_device_is_compatible(node, "fixed-partitions")) {
|
||||
+ const char *uuid;
|
||||
+
|
||||
+ /* when partuuid is specified short-circuit the search for the cdev */
|
||||
+ ret = of_property_read_string(partition_node, "partuuid", &uuid);
|
||||
+ if (!ret) {
|
||||
+ *devpath = basprintf("/dev/disk/by-partuuid/%s", uuid);
|
||||
+
|
||||
+ return 0;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
/*
|
||||
* Respect flash "partitions" subnode. Use parent of parent in this
|
||||
* case.
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
@@ -0,0 +1,36 @@
|
||||
From c9d56ea8fccf72e1c5d1f224f965e1a8e84d1b7f Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Wed, 9 May 2018 21:54:58 +0200
|
||||
Subject: [PATCH 1/1] add -i argument to barebox-state call
|
||||
|
||||
---
|
||||
src/bootchooser.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/src/bootchooser.c b/src/bootchooser.c
|
||||
index d5efc0c..c57c2f7 100644
|
||||
--- a/src/bootchooser.c
|
||||
+++ b/src/bootchooser.c
|
||||
@@ -77,6 +77,9 @@ static gboolean barebox_state_get(const gchar* bootname, BareboxSlotState *bb_st
|
||||
g_ptr_array_add(args, g_strdup_printf(BOOTSTATE_PREFIX ".%s.priority", bootname));
|
||||
g_ptr_array_add(args, g_strdup("-g"));
|
||||
g_ptr_array_add(args, g_strdup_printf(BOOTSTATE_PREFIX ".%s.remaining_attempts", bootname));
|
||||
+
|
||||
+ g_ptr_array_add(args, g_strdup("-i"));
|
||||
+ g_ptr_array_add(args, g_strdup("/etc/barebox-state.dtb"));
|
||||
g_ptr_array_add(args, NULL);
|
||||
|
||||
sub = g_subprocess_newv((const gchar * const *)args->pdata,
|
||||
@@ -170,6 +173,9 @@ static gboolean barebox_state_set(GPtrArray *pairs, GError **error)
|
||||
g_ptr_array_add(args, g_strdup("-s"));
|
||||
g_ptr_array_add(args, g_strdup(pairs->pdata[i]));
|
||||
}
|
||||
+
|
||||
+ g_ptr_array_add(args, g_strdup("-i"));
|
||||
+ g_ptr_array_add(args, g_strdup("/etc/barebox-state.dtb"));
|
||||
g_ptr_array_add(args, NULL);
|
||||
|
||||
sub = g_subprocess_newv((const gchar * const *)args->pdata,
|
||||
--
|
||||
2.7.4
|
||||
|
@@ -1,13 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR=${BR2_EXTERNAL_HASSIO_PATH}/scripts
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
. ${SCRIPT_DIR}/rootfs_layer.sh
|
||||
|
||||
# HassioOS tasks
|
||||
fix_rootfs
|
||||
install_hassio_cli
|
||||
|
||||
cp ${BOARD_DIR}/rauc.conf ${TARGET_DIR}/etc/rauc/system.conf
|
@@ -1,11 +1,15 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR=${BR2_EXTERNAL_HASSIO_PATH}/scripts
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
SCRIPT_DIR=${BR2_EXTERNAL_HASSOS_PATH}/scripts
|
||||
BOARD_DIR=${2}
|
||||
BOOT_DATA=${BINARIES_DIR}/boot
|
||||
|
||||
. ${SCRIPT_DIR}/hdd_image.sh
|
||||
. ${SCRIPT_DIR}/hdd-image.sh
|
||||
. ${SCRIPT_DIR}/name.sh
|
||||
. ${SCRIPT_DIR}/ota.sh
|
||||
. ${BR2_EXTERNAL_HASSOS_PATH}/info
|
||||
. ${BOARD_DIR}/info
|
||||
|
||||
# Init boot data
|
||||
rm -rf ${BOOT_DATA}
|
||||
@@ -13,12 +17,14 @@ mkdir -p ${BOOT_DATA}/EFI/BOOT
|
||||
mkdir -p ${BOOT_DATA}/EFI/barebox
|
||||
|
||||
cp ${BINARIES_DIR}/barebox.bin ${BOOT_DATA}/EFI/BOOT/BOOTx64.EFI
|
||||
cp ${BOARD_DIR}/barebox-state.dtb ${BOOT_DATA}/EFI/barebox/state.dtb
|
||||
cp ${BR2_EXTERNAL_HASSOS_PATH}/misc/barebox-state-efi.dtb ${BOOT_DATA}/EFI/barebox/state.dtb
|
||||
|
||||
echo "console=tty1" > ${BOOT_DATA}/cmdline.txt
|
||||
|
||||
# Create other layers
|
||||
hassio_boot_image ${BINARIES_DIR}
|
||||
hassio_overlay_image ${BINARIES_DIR}
|
||||
prepare_disk_image
|
||||
|
||||
hassio_hdd_image ${BINARIES_DIR} ${BINARIES_DIR}/harddisk.img 6
|
||||
|
||||
qemu-img convert -O vmdk ${BINARIES_DIR}/harddisk.img ${BINARIES_DIR}/hassio-os.vmdk
|
||||
# Create disk images
|
||||
create_disk_image 6
|
||||
convert_disk_image_vmdk
|
||||
create_ota_update
|
||||
|
@@ -1,21 +0,0 @@
|
||||
[system]
|
||||
compatible=Hass.io OS OVA
|
||||
bootloader=barebox
|
||||
|
||||
[keyring]
|
||||
path=/etc/rauc/keyring.pem
|
||||
|
||||
[slot.boot.0]
|
||||
device=/dev/sda0
|
||||
type=vfs
|
||||
bootname=boot
|
||||
|
||||
[slot.rootfs.0]
|
||||
device=/dev/sda2
|
||||
type=raw
|
||||
bootname=system0
|
||||
|
||||
[slot.rootfs.1]
|
||||
device=/dev/sda3
|
||||
type=raw
|
||||
bootname=system1
|
48
buildroot-external/board/raspberrypi/post-image.sh
Executable file
48
buildroot-external/board/raspberrypi/post-image.sh
Executable file
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR=${BR2_EXTERNAL_HASSOS_PATH}/scripts
|
||||
BOARD_DIR=${2}
|
||||
BOOT_DATA=${BINARIES_DIR}/boot
|
||||
|
||||
. ${SCRIPT_DIR}/hdd-image.sh
|
||||
. ${SCRIPT_DIR}/name.sh
|
||||
. ${SCRIPT_DIR}/ota.sh
|
||||
. ${BR2_EXTERNAL_HASSOS_PATH}/info
|
||||
. ${BOARD_DIR}/info
|
||||
|
||||
# Init boot data
|
||||
rm -rf ${BOOT_DATA}
|
||||
mkdir -p ${BOOT_DATA}
|
||||
|
||||
cp -t ${BOOT_DATA} \
|
||||
${BINARIES_DIR}/u-boot.bin \
|
||||
${BINARIES_DIR}/boot.scr
|
||||
cp -t ${BOOT_DATA} \
|
||||
${BINARIES_DIR}/*.dtb \
|
||||
${BINARIES_DIR}/rpi-firmware/bootcode.bin \
|
||||
${BINARIES_DIR}/rpi-firmware/fixup.dat \
|
||||
${BINARIES_DIR}/rpi-firmware/start.elf
|
||||
cp -r ${BINARIES_DIR}/rpi-firmware/overlays ${BOOT_DATA}/
|
||||
|
||||
# Update Boot options
|
||||
(
|
||||
echo "kernel=u-boot.bin"
|
||||
echo "disable_splash=1"
|
||||
echo "dtparam=audio=on"
|
||||
) > ${BOOT_DATA}/config.txt
|
||||
|
||||
echo "dwc_otg.lpm_enable=0 console=tty1" > ${BOOT_DATA}/cmdline.txt
|
||||
|
||||
# Enable 64bit support
|
||||
if [ "${BOARD_ID}" == "rpi3-64" ]; then
|
||||
echo "arm_64bit=1" >> ${BOOT_DATA}/config.txt
|
||||
fi
|
||||
|
||||
# Create other layers
|
||||
prepare_disk_image
|
||||
|
||||
create_disk_image 2
|
||||
fix_disk_image_mbr
|
||||
convert_disk_image_gz
|
||||
create_ota_update
|
5
buildroot-external/board/raspberrypi/rpi/info
Normal file
5
buildroot-external/board/raspberrypi/rpi/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=rpi
|
||||
BOARD_NAME="RaspberryPi"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=zImage
|
5
buildroot-external/board/raspberrypi/rpi0-w/info
Normal file
5
buildroot-external/board/raspberrypi/rpi0-w/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=rpi0-w
|
||||
BOARD_NAME="RaspberryPi Zero-W"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=zImage
|
5
buildroot-external/board/raspberrypi/rpi2/info
Normal file
5
buildroot-external/board/raspberrypi/rpi2/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=rpi2
|
||||
BOARD_NAME="RaspberryPi 2"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=zImage
|
5
buildroot-external/board/raspberrypi/rpi3-64/info
Normal file
5
buildroot-external/board/raspberrypi/rpi3-64/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=rpi3-64
|
||||
BOARD_NAME="RaspberryPi 3 64bit"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=Image
|
51
buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh
Normal file
51
buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh
Normal file
@@ -0,0 +1,51 @@
|
||||
test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B"
|
||||
test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3
|
||||
test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3
|
||||
|
||||
# HassOS bootargs
|
||||
setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 apparmor=1 security=apparmor rootwait cgroup_enable=memory"
|
||||
|
||||
# HassOS system A/B
|
||||
setenv bootargs_a "root=PARTUUID=8d3d53e3-6d49-4c38-8349-aff6859e82fd rootfstype=squashfs ro"
|
||||
setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype=squashfs ro"
|
||||
|
||||
# Preserve origin bootargs
|
||||
setenv bootargs_rpi
|
||||
fdt addr ${fdt_addr}
|
||||
fdt get value bootargs_rpi /chosen bootargs
|
||||
|
||||
setenv bootargs
|
||||
for BOOT_SLOT in "${BOOT_ORDER}"; do
|
||||
if test "x${bootargs}" != "x"; then
|
||||
# skip remaining slots
|
||||
elif test "x${BOOT_SLOT}" = "xA"; then
|
||||
if test ${BOOT_A_LEFT} -gt 0; then
|
||||
setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1
|
||||
echo "Found valid slot A, ${BOOT_A_LEFT} attempts remaining"
|
||||
setenv load_kernel "ext4load mmc 0:2 ${kernel_addr_r} Image"
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_rpi} ${bootargs_a} rauc.slot=A"
|
||||
fi
|
||||
elif test "x${BOOT_SLOT}" = "xB"; then
|
||||
if test ${BOOT_B_LEFT} -gt 0; then
|
||||
setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1
|
||||
echo "Found valid slot B, ${BOOT_B_LEFT} attempts remaining"
|
||||
setenv load_kernel "ext4load mmc 0:4 ${kernel_addr_r} Image"
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_rpi} ${bootargs_b} rauc.slot=B"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if test -n "${bootargs}"; then
|
||||
saveenv
|
||||
else
|
||||
echo "No valid slot found, resetting tries to 3"
|
||||
setenv BOOT_A_LEFT 3
|
||||
setenv BOOT_B_LEFT 3
|
||||
saveenv
|
||||
reset
|
||||
fi
|
||||
|
||||
echo "Loading kernel"
|
||||
run load_kernel
|
||||
echo " Starting kernel"
|
||||
booti ${kernel_addr_r} - ${fdt_addr}
|
5
buildroot-external/board/raspberrypi/rpi3/info
Normal file
5
buildroot-external/board/raspberrypi/rpi3/info
Normal file
@@ -0,0 +1,5 @@
|
||||
BOARD_ID=rpi3
|
||||
BOARD_NAME="RaspberryPi 3"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=zImage
|
51
buildroot-external/board/raspberrypi/uboot-boot.sh
Normal file
51
buildroot-external/board/raspberrypi/uboot-boot.sh
Normal file
@@ -0,0 +1,51 @@
|
||||
test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B"
|
||||
test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3
|
||||
test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3
|
||||
|
||||
# HassOS bootargs
|
||||
setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 apparmor=1 security=apparmor rootwait cgroup_enable=memory"
|
||||
|
||||
# HassOS system A/B
|
||||
setenv bootargs_a "root=PARTUUID=8d3d53e3-6d49-4c38-8349-aff6859e82fd rootfstype=squashfs ro"
|
||||
setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype=squashfs ro"
|
||||
|
||||
# Preserve origin bootargs
|
||||
setenv bootargs_rpi
|
||||
fdt addr ${fdt_addr}
|
||||
fdt get value bootargs_rpi /chosen bootargs
|
||||
|
||||
setenv bootargs
|
||||
for BOOT_SLOT in "${BOOT_ORDER}"; do
|
||||
if test "x${bootargs}" != "x"; then
|
||||
# skip remaining slots
|
||||
elif test "x${BOOT_SLOT}" = "xA"; then
|
||||
if test ${BOOT_A_LEFT} -gt 0; then
|
||||
setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1
|
||||
echo "Found valid slot A, ${BOOT_A_LEFT} attempts remaining"
|
||||
setenv load_kernel "ext4load mmc 0:2 ${kernel_addr_r} zImage"
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_rpi} ${bootargs_a} rauc.slot=A"
|
||||
fi
|
||||
elif test "x${BOOT_SLOT}" = "xB"; then
|
||||
if test ${BOOT_B_LEFT} -gt 0; then
|
||||
setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1
|
||||
echo "Found valid slot B, ${BOOT_B_LEFT} attempts remaining"
|
||||
setenv load_kernel "ext4load mmc 0:4 ${kernel_addr_r} zImage"
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_rpi} ${bootargs_b} rauc.slot=B"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if test -n "${bootargs}"; then
|
||||
saveenv
|
||||
else
|
||||
echo "No valid slot found, resetting tries to 3"
|
||||
setenv BOOT_A_LEFT 3
|
||||
setenv BOOT_B_LEFT 3
|
||||
saveenv
|
||||
reset
|
||||
fi
|
||||
|
||||
echo "Loading kernel"
|
||||
run load_kernel
|
||||
echo " Starting kernel"
|
||||
bootz ${kernel_addr_r} - ${fdt_addr}
|
3
buildroot-external/board/raspberrypi/uboot.config
Normal file
3
buildroot-external/board/raspberrypi/uboot.config
Normal file
@@ -0,0 +1,3 @@
|
||||
# CONFIG_USB_STORAGE is not set
|
||||
# CONFIG_ENV_FAT_INTERFACE is not set
|
||||
# CONFIG_ENV_FAT_DEVICE_AND_PART is not set
|
47
buildroot-external/bootloader/barebox.config
Normal file
47
buildroot-external/bootloader/barebox.config
Normal file
@@ -0,0 +1,47 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
# CONFIG_CMD_VERSION is not set
|
||||
# CONFIG_TIMESTAMP is not set
|
||||
|
||||
CONFIG_PROMPT="HassOS-boot:"
|
||||
CONFIG_CMDLINE_EDITING=y
|
||||
CONFIG_AUTO_COMPLETE=y
|
||||
CONFIG_MENU=y
|
||||
CONFIG_BOOTM_SHOW_TYPE=y
|
||||
CONFIG_BOOTM_OFTREE=y
|
||||
CONFIG_FLEXIBLE_BOOTARGS=y
|
||||
CONFIG_DEFAULT_COMPRESSION_LZ4=y
|
||||
|
||||
# CONFIG_PARTITION_DISK_DOS is not set
|
||||
CONFIG_PARTITION_DISK_EFI=y
|
||||
# CONFIG_PARTITION_DISK_EFI_GPT_NO_FORCE is not set
|
||||
# CONFIG_PARTITION_DISK_EFI_GPT_COMPARE is not set
|
||||
|
||||
CONFIG_STATE=y
|
||||
CONFIG_STATE_DRV=y
|
||||
CONFIG_BOOTCHOOSER=y
|
||||
CONFIG_CMD_BOOT=y
|
||||
CONFIG_CMD_NV=y
|
||||
CONFIG_CMD_EXPORT=y
|
||||
CONFIG_CMD_GLOBAL=y
|
||||
CONFIG_CMD_BASENAME=y
|
||||
CONFIG_CMD_DIRNAME=y
|
||||
CONFIG_CMD_READLINK=y
|
||||
CONFIG_CMD_GETOPT=y
|
||||
CONFIG_CMD_MENUTREE=y
|
||||
CONFIG_CMD_TIMEOUT=y
|
||||
CONFIG_CMD_OFTREE=y
|
||||
CONFIG_CMD_STATE=y
|
||||
CONFIG_CMD_BOOTCHOOSER=y
|
||||
CONFIG_CMD_READF=y
|
||||
|
||||
CONFIG_OFTREE=y
|
||||
CONFIG_OFTREE_OVERLAY=y
|
||||
|
||||
CONFIG_DISK=y
|
||||
CONFIG_DISK_WRITE=y
|
||||
|
||||
CONFIG_FS_FAT=y
|
||||
CONFIG_FS_FAT_WRITE=y
|
||||
CONFIG_FS_FAT_LFN=y
|
||||
CONFIG_FS_EXT4=y
|
||||
CONFIG_LZ4_DECOMPRESS=y
|
18
buildroot-external/bootloader/barebox/bin/init
Normal file
18
buildroot-external/bootloader/barebox/bin/init
Normal file
@@ -0,0 +1,18 @@
|
||||
#!/bin/sh
|
||||
|
||||
export PATH=/env/bin
|
||||
|
||||
# Autostart
|
||||
for i in /env/init/*; do
|
||||
. $i
|
||||
done
|
||||
|
||||
echo "- Hit m for menu or wait for autoboot -"
|
||||
timeout -a 1 -s -v key
|
||||
|
||||
# Run menu
|
||||
if [ "${key}" != "m" ]; then
|
||||
boot
|
||||
fi
|
||||
|
||||
menutree
|
8
buildroot-external/bootloader/barebox/boot/system0
Normal file
8
buildroot-external/bootloader/barebox/boot/system0
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
global linux.bootargs.dyn.root="root=PARTUUID=8d3d53e3-6d49-4c38-8349-aff6859e82fd rootfstype=squashfs ro"
|
||||
|
||||
mkdir -p /mnt/system
|
||||
mount -t ext4 /dev/disk0.hassos-kernel0 /mnt/system
|
||||
|
||||
global bootm.image="/mnt/system/bzImage"
|
8
buildroot-external/bootloader/barebox/boot/system1
Normal file
8
buildroot-external/bootloader/barebox/boot/system1
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
global linux.bootargs.dyn.root="root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype=squashfs ro"
|
||||
|
||||
mkdir -p /mnt/system
|
||||
mount -t ext4 /dev/disk0.hassos-kernel1 /mnt/system
|
||||
|
||||
global bootm.image="/mnt/system/bzImage"
|
6
buildroot-external/bootloader/barebox/init/cmdline
Normal file
6
buildroot-external/bootloader/barebox/init/cmdline
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
global linux.bootargs.base=""
|
||||
if [ -f /boot/cmdline.txt ]; then
|
||||
readf /boot/cmdline.txt global.linux.bootargs.base
|
||||
fi
|
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
global linux.bootargs.zram="zram.enabled=1 zram.num_devices=3"
|
||||
global linux.bootargs.apparmor="apparmor=1 security=apparmor"
|
||||
global linux.bootargs.misc="rootwait"
|
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
boot
|
@@ -0,0 +1 @@
|
||||
Autoboot
|
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
boot system0
|
@@ -0,0 +1 @@
|
||||
Boot System 0
|
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
boot system1
|
@@ -0,0 +1 @@
|
||||
Boot System 1
|
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Enter 'exit' to get back to the menu"
|
||||
|
||||
sh
|
@@ -0,0 +1 @@
|
||||
Shell
|
1
buildroot-external/bootloader/barebox/menu/title
Normal file
1
buildroot-external/bootloader/barebox/menu/title
Normal file
@@ -0,0 +1 @@
|
||||
HassOS boot Menu:
|
@@ -0,0 +1 @@
|
||||
A B
|
1
buildroot-external/bootloader/barebox/nv/editcmd
Normal file
1
buildroot-external/bootloader/barebox/nv/editcmd
Normal file
@@ -0,0 +1 @@
|
||||
sedit
|
16
buildroot-external/bootloader/uboot.config
Normal file
16
buildroot-external/bootloader/uboot.config
Normal file
@@ -0,0 +1,16 @@
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
# CONFIG_EXPERT is not set
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
CONFIG_SYS_PROMPT="HassOS> "
|
||||
# CONFIG_DOS_PARTITION is not set
|
||||
# CONFIG_ISO_PARTITION is not set
|
||||
CONFIG_EFI_PARTITION=y
|
||||
CONFIG_FS_EXT4=y
|
||||
# CONFIG_ENV_IS_NOWHERE is not set
|
||||
# CONFIG_ENV_IS_IN_FAT is not set
|
||||
# CONFIG_ENV_IS_IN_EXT4 is not set
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
CONFIG_CONSOLE_SCROLL_LINES=10
|
||||
# CONFIG_EFI_LOADER is not set
|
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Busybox version: 1.27.2
|
||||
# Tue Apr 17 18:57:21 2018
|
||||
# Fri May 18 17:09:42 2018
|
||||
#
|
||||
CONFIG_HAVE_DOT_CONFIG=y
|
||||
|
||||
@@ -511,7 +511,7 @@ CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des"
|
||||
# CONFIG_DELUSER is not set
|
||||
# CONFIG_DELGROUP is not set
|
||||
# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
|
||||
# CONFIG_GETTY is not set
|
||||
CONFIG_GETTY=y
|
||||
CONFIG_LOGIN=y
|
||||
# CONFIG_LOGIN_SESSION_AS_CHILD is not set
|
||||
# CONFIG_LOGIN_SCRIPTS is not set
|
||||
@@ -540,12 +540,12 @@ CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
|
||||
# CONFIG_MODPROBE_SMALL is not set
|
||||
# CONFIG_DEPMOD is not set
|
||||
# CONFIG_INSMOD is not set
|
||||
# CONFIG_LSMOD is not set
|
||||
# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set
|
||||
# CONFIG_MODINFO is not set
|
||||
# CONFIG_MODPROBE is not set
|
||||
# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
|
||||
# CONFIG_RMMOD is not set
|
||||
CONFIG_LSMOD=y
|
||||
CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
|
||||
CONFIG_MODINFO=y
|
||||
CONFIG_MODPROBE=y
|
||||
CONFIG_FEATURE_MODPROBE_BLACKLIST=y
|
||||
CONFIG_RMMOD=y
|
||||
|
||||
#
|
||||
# Options common to multiple modutils
|
||||
@@ -562,8 +562,8 @@ CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
|
||||
# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
|
||||
# CONFIG_FEATURE_MODUTILS_ALIAS is not set
|
||||
# CONFIG_FEATURE_MODUTILS_SYMBOLS is not set
|
||||
CONFIG_DEFAULT_MODULES_DIR=""
|
||||
CONFIG_DEFAULT_DEPMOD_FILE=""
|
||||
CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
|
||||
CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
|
||||
|
||||
#
|
||||
# Linux System Utilities
|
||||
@@ -606,13 +606,13 @@ CONFIG_GETOPT=y
|
||||
CONFIG_FEATURE_GETOPT_LONG=y
|
||||
CONFIG_HEXDUMP=y
|
||||
CONFIG_FEATURE_HEXDUMP_REVERSE=y
|
||||
CONFIG_HD=y
|
||||
CONFIG_XXD=y
|
||||
CONFIG_HWCLOCK=y
|
||||
CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
|
||||
# CONFIG_HD is not set
|
||||
# CONFIG_XXD is not set
|
||||
# CONFIG_HWCLOCK is not set
|
||||
# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
|
||||
CONFIG_IONICE=y
|
||||
CONFIG_IPCRM=y
|
||||
# CONFIG_IPCRM is not set
|
||||
CONFIG_IPCS=y
|
||||
# CONFIG_LAST is not set
|
||||
# CONFIG_FEATURE_LAST_FANCY is not set
|
||||
@@ -648,9 +648,9 @@ CONFIG_FEATURE_MOUNT_FLAGS=y
|
||||
# CONFIG_FEATURE_MOUNT_FSTAB is not set
|
||||
# CONFIG_FEATURE_MOUNT_OTHERTAB is not set
|
||||
# CONFIG_MOUNTPOINT is not set
|
||||
CONFIG_NSENTER=y
|
||||
CONFIG_FEATURE_NSENTER_LONG_OPTS=y
|
||||
CONFIG_PIVOT_ROOT=y
|
||||
# CONFIG_NSENTER is not set
|
||||
# CONFIG_FEATURE_NSENTER_LONG_OPTS is not set
|
||||
# CONFIG_PIVOT_ROOT is not set
|
||||
CONFIG_RDATE=y
|
||||
CONFIG_RDEV=y
|
||||
CONFIG_READPROFILE=y
|
||||
@@ -674,14 +674,14 @@ CONFIG_FEATURE_TASKSET_FANCY=y
|
||||
CONFIG_UEVENT=y
|
||||
CONFIG_UMOUNT=y
|
||||
CONFIG_FEATURE_UMOUNT_ALL=y
|
||||
CONFIG_UNSHARE=y
|
||||
# CONFIG_UNSHARE is not set
|
||||
# CONFIG_WALL is not set
|
||||
|
||||
#
|
||||
# Common options for mount/umount
|
||||
#
|
||||
CONFIG_FEATURE_MOUNT_LOOP=y
|
||||
CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
|
||||
# CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set
|
||||
# CONFIG_FEATURE_MTAB_SUPPORT is not set
|
||||
CONFIG_VOLUMEID=y
|
||||
|
||||
@@ -750,10 +750,10 @@ CONFIG_FEATURE_CROND_DIR=""
|
||||
# CONFIG_FLASHCP is not set
|
||||
CONFIG_HDPARM=y
|
||||
CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
|
||||
CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF=y
|
||||
CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF=y
|
||||
CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET=y
|
||||
CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF=y
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
|
||||
CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA=y
|
||||
# CONFIG_I2CGET is not set
|
||||
# CONFIG_I2CSET is not set
|
||||
@@ -780,7 +780,7 @@ CONFIG_FEATURE_LESS_MAXLINES=0
|
||||
# CONFIG_MT is not set
|
||||
CONFIG_NANDWRITE=y
|
||||
CONFIG_NANDDUMP=y
|
||||
CONFIG_PARTPROBE=y
|
||||
# CONFIG_PARTPROBE is not set
|
||||
# CONFIG_RAIDAUTORUN is not set
|
||||
# CONFIG_READAHEAD is not set
|
||||
# CONFIG_RFKILL is not set
|
||||
@@ -1069,7 +1069,7 @@ CONFIG_ASH_TEST=y
|
||||
CONFIG_ASH_HELP=y
|
||||
CONFIG_ASH_GETOPTS=y
|
||||
CONFIG_ASH_CMDCMD=y
|
||||
CONFIG_CTTYHACK=y
|
||||
# CONFIG_CTTYHACK is not set
|
||||
# CONFIG_HUSH is not set
|
||||
# CONFIG_HUSH_BASH_COMPAT is not set
|
||||
# CONFIG_HUSH_BRACE_EXPANSION is not set
|
||||
|
@@ -1,33 +1,35 @@
|
||||
BR2_x86_64=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="$(TOPDIR)/ccache"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSIO_PATH)/patches"
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/ova/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio.local"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Hass.io"
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSIO_PATH)/rootfs-overlay/"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSIO_PATH)/board/ova/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSIO_PATH)/board/ova/post-image.sh"
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/ova/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/ova"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSIO_PATH)/board/ova/kernel.config"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.41"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config $(BR2_EXTERNAL_HASSOS_PATH)/board/ova/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSIO_PATH)/busybox.config"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_ALSA_UTILS=y
|
||||
BR2_PACKAGE_LZ4=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_DT_UTILS=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
@@ -35,6 +37,7 @@ BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
@@ -42,6 +45,7 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_OPENVMTOOLS=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
@@ -56,18 +60,26 @@ BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_BAREBOX=y
|
||||
BR2_TARGET_BAREBOX_CUSTOM_VERSION=y
|
||||
BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE="2018.05.0"
|
||||
BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG=y
|
||||
BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSIO_PATH)/board/ova/barebox.config"
|
||||
BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV_PATH="$(BR2_EXTERNAL_HASSIO_PATH)/board/ova/barebox-env $(BR2_EXTERNAL_HASSIO_PATH)/barebox-env"
|
||||
BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/ova/barebox.config"
|
||||
BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox.config"
|
||||
BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV_PATH="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_MINGETTY=y
|
||||
BR2_PACKAGE_HASSIO=y
|
||||
BR2_PACKAGE_HASSIO_SUPERVISOR="homeassistant/amd64-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSIO_SUPERVISOR_VERSION="0.101"
|
||||
BR2_PACKAGE_HASSIO_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/qemux86-64-homeassistant"
|
||||
BR2_PACKAGE_HASSIO_CLI="homeassistant/amd64-hassio-cli"
|
||||
BR2_PACKAGE_HASSIO_CLI_VERSION="0.1"
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/amd64-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/qemux86-64-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/amd64-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
||||
|
94
buildroot-external/configs/rpi0_w_defconfig
Normal file
94
buildroot-external/configs/rpi0_w_defconfig
Normal file
@@ -0,0 +1,94 @@
|
||||
BR2_arm=y
|
||||
BR2_arm1176jzf_s=y
|
||||
BR2_ARM_EABIHF=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi0-w"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux"
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-0-w"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_RPI_WIFI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_DROPBEAR_CLIENT is not set
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_0_w"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/armhf-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/armhf-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
93
buildroot-external/configs/rpi2_defconfig
Normal file
93
buildroot-external/configs/rpi2_defconfig
Normal file
@@ -0,0 +1,93 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a7=y
|
||||
BR2_ARM_FPU_VFPV4=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi2"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux"
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2709-rpi-2-b"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_DROPBEAR_CLIENT is not set
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_2"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/armhf-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi2-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/armhf-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
94
buildroot-external/configs/rpi3_64_defconfig
Normal file
94
buildroot-external/configs/rpi3_64_defconfig
Normal file
@@ -0,0 +1,94 @@
|
||||
BR2_aarch64=y
|
||||
BR2_cortex_a53=y
|
||||
BR2_ARM_FPU_VFPV4=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3-64"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux"
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2710-rpi-3-b broadcom/bcm2837-rpi-3-b broadcom/bcm2710-rpi-3-b-plus"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_RPI_WIFI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_DROPBEAR_CLIENT is not set
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_3"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3-64/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/aarch64-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi3-64-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/aarch64-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
94
buildroot-external/configs/rpi3_defconfig
Normal file
94
buildroot-external/configs/rpi3_defconfig
Normal file
@@ -0,0 +1,94 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a53=y
|
||||
BR2_ARM_FPU_VFPV4=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux"
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2710-rpi-cm3"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_RPI_WIFI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_DROPBEAR_CLIENT is not set
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi_3_32b"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/armhf-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi3-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/armhf-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
93
buildroot-external/configs/rpi_defconfig
Normal file
93
buildroot-external/configs/rpi_defconfig
Normal file
@@ -0,0 +1,93 @@
|
||||
BR2_arm=y
|
||||
BR2_arm1176jzf_s=y
|
||||
BR2_ARM_EABIHF=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches"
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
|
||||
BR2_GCC_VERSION_7_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="hassio"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux"
|
||||
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rpi-4.14.y"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
# BR2_PACKAGE_AVAHI_AUTOIPD is not set
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_DROPBEAR_CLIENT is not set
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.05"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rpi"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot.config"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT=y
|
||||
BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/uboot-boot.sh"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HASSOS=y
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/armhf-hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="109"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi-homeassistant"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor"
|
||||
BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt"
|
||||
BR2_PACKAGE_HASSOS_CLI="homeassistant/armhf-hassio-cli"
|
||||
BR2_PACKAGE_HASSOS_CLI_VERSION="5"
|
||||
BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2"
|
||||
BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default"
|
||||
BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor"
|
||||
BR2_PACKAGE_APPARMOR=y
|
@@ -1,2 +1,2 @@
|
||||
name: HASSIO
|
||||
desc: HassIO Buildroot tree
|
||||
name: HASSOS
|
||||
desc: HassOS Buildroot tree
|
||||
|
@@ -1 +1 @@
|
||||
include $(sort $(wildcard $(BR2_EXTERNAL_HASSIO_PATH)/package/*/*.mk))
|
||||
include $(sort $(wildcard $(BR2_EXTERNAL_HASSOS_PATH)/package/*/*.mk))
|
||||
|
7
buildroot-external/info
Normal file
7
buildroot-external/info
Normal file
@@ -0,0 +1,7 @@
|
||||
VERSION_MAJOR=1
|
||||
VERSION_BUILD=2
|
||||
|
||||
HASSOS_NAME="HassOS"
|
||||
HASSOS_ID="hassos"
|
||||
|
||||
DEPLOYMENT="staging"
|
100
buildroot-external/kernel.config
Normal file
100
buildroot-external/kernel.config
Normal file
@@ -0,0 +1,100 @@
|
||||
CONFIG_KERNEL_LZ4=y
|
||||
CONFIG_CMDLINE=""
|
||||
|
||||
CONFIG_ZRAM=y
|
||||
CONFIG_ZSMALLOC=y
|
||||
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_CFQ_GROUP_IOSCHED=y
|
||||
CONFIG_CFS_BANDWIDTH=y
|
||||
CONFIG_FAIR_GROUP_SCHED=y
|
||||
CONFIG_RT_GROUP_SCHED=y
|
||||
CONFIG_NET_SCHED=y
|
||||
|
||||
CONFIG_CGROUPS=y
|
||||
CONFIG_BLK_CGROUP=y
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
CONFIG_CGROUP_SCHED=y
|
||||
CONFIG_CGROUP_PIDS=y
|
||||
CONFIG_CGROUP_FREEZER=y
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
CONFIG_CGROUP_DEVICE=y
|
||||
CONFIG_CGROUP_CPUACCT=y
|
||||
CONFIG_CGROUP_PERF=y
|
||||
CONFIG_NET_CLS_CGROUP=y
|
||||
CONFIG_CGROUP_NET_PRIO=y
|
||||
|
||||
CONFIG_MEMCG=y
|
||||
CONFIG_MEMCG_SWAP=y
|
||||
|
||||
CONFIG_NAMESPACES=y
|
||||
CONFIG_USER_NS=y
|
||||
CONFIG_PID_NS=y
|
||||
CONFIG_IPC_NS=y
|
||||
CONFIG_UTS_NS=y
|
||||
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_DUMMY=y
|
||||
CONFIG_MACVLAN=y
|
||||
CONFIG_IPVLAN=y
|
||||
CONFIG_VXLAN=y
|
||||
|
||||
CONFIG_INET=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_INET_ESP=y
|
||||
CONFIG_INET_XFRM_MODE_TRANSPORT=y
|
||||
CONFIG_NETCONSOLE=y
|
||||
CONFIG_VETH=y
|
||||
CONFIG_NETFILTER=y
|
||||
CONFIG_NF_CONNTRACK=y
|
||||
CONFIG_NF_NAT=y
|
||||
CONFIG_NF_NAT_NEEDED=y
|
||||
CONFIG_NF_CONNTRACK_IPV4=y
|
||||
CONFIG_NF_CONNTRACK_FTP=y
|
||||
CONFIG_NF_CONNTRACK_TFTP=y
|
||||
CONFIG_NETFILTER_ADVANCED=y
|
||||
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
|
||||
CONFIG_NETFILTER_XT_MATCH_IPVS=y
|
||||
CONFIG_IP_VS=y
|
||||
CONFIG_IP_VS_RR=y
|
||||
CONFIG_IP_VS_NFCT=y
|
||||
CONFIG_IP_NF_IPTABLES=y
|
||||
CONFIG_IP_NF_FILTER=y
|
||||
CONFIG_IP_NF_NAT=y
|
||||
CONFIG_IP_NF_TARGET_MASQUERADE=y
|
||||
CONFIG_BRIDGE=y
|
||||
CONFIG_BRIDGE_NETFILTER=y
|
||||
CONFIG_XFRM=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_XFRM_ALGO=y
|
||||
CONFIG_NET_L3_MASTER_DEV=y
|
||||
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_EXT4_FS_POSIX_ACL=y
|
||||
CONFIG_EXT4_FS_SECURITY=y
|
||||
CONFIG_OVERLAY_FS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_SQUASHFS=y
|
||||
CONFIG_SQUASHFS_XATTR=y
|
||||
CONFIG_SQUASHFS_LZ4=y
|
||||
|
||||
# CONFIG_SECCOMP is not set
|
||||
CONFIG_SECURITY=y
|
||||
CONFIG_SECURITY_APPARMOR=y
|
||||
CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
|
||||
CONFIG_KEYS=y
|
||||
|
||||
CONFIG_CRYPTO_CCM=y
|
||||
CONFIG_CRYPTO_GCM=y
|
||||
CONFIG_CRYPTO_CMAC=y
|
||||
CONFIG_CRYPTO_ARC4=y
|
||||
CONFIG_CRYPTO_LZ4=y
|
||||
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_EFI_PARTITION=y
|
||||
|
||||
# CONFIG_LOGO is not set
|
||||
# CONFIG_VIRTUALIZATION is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
BIN
buildroot-external/misc/barebox-state-efi.dtb
Normal file
BIN
buildroot-external/misc/barebox-state-efi.dtb
Normal file
Binary file not shown.
@@ -12,14 +12,13 @@
|
||||
compatible = "barebox,state";
|
||||
backend = <&backend_state>;
|
||||
backend-type = "raw";
|
||||
backend-stridesize = <1024>;
|
||||
backend-storage-type = "direct";
|
||||
backend-stridesize = <4048>;
|
||||
|
||||
bootstate {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
system0 {
|
||||
A {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
remaining_attempts@0 {
|
||||
@@ -33,13 +32,13 @@
|
||||
default = <20>;
|
||||
};
|
||||
};
|
||||
system1 {
|
||||
B {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
remaining_attempts@8 {
|
||||
reg = <0x8 0x4>;
|
||||
type = "uint32";
|
||||
default = <3>;
|
||||
default = <0>;
|
||||
};
|
||||
priority@c {
|
||||
reg = <0xc 0x4>;
|
||||
@@ -61,7 +60,6 @@
|
||||
|
||||
backend_state: state {
|
||||
partuuid = "33236519-7f32-4dff-8002-3390b62c309d";
|
||||
|
||||
};
|
||||
};
|
||||
|
272
buildroot-external/misc/dev-ca.pem
Normal file
272
buildroot-external/misc/dev-ca.pem
Normal file
@@ -0,0 +1,272 @@
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 1 (0x1)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:a5:81:96:24:f6:eb:ac:0b:10:72:34:c8:41:70:
|
||||
f5:29:9c:1c:1e:d9:a6:68:a3:ea:c5:e4:68:e7:b5:
|
||||
76:2e:13:e0:0e:fe:8e:c4:2f:d2:76:2c:76:63:15:
|
||||
8d:7e:7f:8a:9f:d8:9a:66:94:b9:b4:6f:5e:bc:a9:
|
||||
59:59:12:fa:bb:7b:af:34:95:79:dd:2d:b1:3e:0e:
|
||||
16:27:92:40:9d:15:55:34:b9:7d:dd:63:2e:64:f9:
|
||||
65:46:e9:b2:de:66:d8:e5:12:9d:af:ca:db:3e:44:
|
||||
15:57:8f:15:17:58:9d:2d:9b:1e:79:7b:ec:eb:28:
|
||||
b3:11:81:a3:34:bb:b5:5d:08:a4:6b:4e:7e:7e:ec:
|
||||
d3:e3:b9:d9:2d:66:e8:04:be:09:d3:75:86:8f:86:
|
||||
94:01:aa:c1:0d:7e:28:74:27:da:c6:b8:d5:bf:94:
|
||||
a0:d2:f5:bf:88:72:40:21:fe:4c:aa:39:06:35:29:
|
||||
ee:c0:f5:f0:f0:85:d0:6b:ea:ee:c7:b7:54:aa:df:
|
||||
e9:e4:cf:cd:5a:1a:61:e5:63:be:3c:7f:4b:6c:ae:
|
||||
79:20:07:e0:44:c5:3d:c2:df:f8:04:64:22:2b:fb:
|
||||
11:cf:99:0e:ba:1f:6b:51:56:ea:27:ca:a6:70:76:
|
||||
19:2f:16:24:35:d9:0a:05:cf:b6:9d:ae:82:4a:e0:
|
||||
5a:c5
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
08:35:23:fd:fd:da:80:5a:c9:c5:b1:2e:9e:3d:b1:57:7e:ea:
|
||||
72:cd:c4:df:b4:5f:a4:47:84:d5:25:6f:c2:27:66:6d:e5:fc:
|
||||
91:99:7d:81:7e:38:09:1d:d9:7e:31:fd:db:4b:a3:52:f8:6a:
|
||||
98:53:dd:dd:be:21:b3:de:af:01:b5:e4:b1:a6:e4:7b:40:27:
|
||||
0c:dc:89:e4:34:78:56:1b:bb:01:e3:2e:90:ee:94:8b:9d:2e:
|
||||
f7:37:da:4c:b1:02:ef:7d:53:62:7f:9b:3b:e7:70:44:aa:4e:
|
||||
5f:d0:16:a5:1a:2b:62:0b:9e:55:07:12:25:3c:bf:c4:26:52:
|
||||
5e:10:c5:b6:25:a7:f7:cd:3b:03:07:bb:66:8f:4a:e6:84:c3:
|
||||
06:38:43:ab:2b:c3:29:7c:cb:aa:5f:23:2e:a7:e6:6b:5d:e5:
|
||||
dd:d9:ea:2c:59:46:e5:f3:6c:73:9b:eb:ef:74:56:93:f0:e9:
|
||||
3c:17:03:57:b6:17:3f:de:2f:2e:1d:6a:65:d8:71:88:6f:ad:
|
||||
19:48:d3:3a:05:46:d2:65:71:fa:97:73:38:0c:1d:d2:83:48:
|
||||
b1:16:61:7c:f1:db:b6:06:5b:46:8d:45:4c:f4:af:b2:da:b6:
|
||||
ca:47:54:f6:e7:37:9e:7a:d6:0c:88:58:06:b0:49:b5:25:16:
|
||||
a0:77:9b:5a
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIG
|
||||
A1UEAwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290MIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEApYGWJPbrrAsQcjTIQXD1KZwcHtmmaKPqxeRo57V2
|
||||
LhPgDv6OxC/Sdix2YxWNfn+Kn9iaZpS5tG9evKlZWRL6u3uvNJV53S2xPg4WJ5JA
|
||||
nRVVNLl93WMuZPllRumy3mbY5RKdr8rbPkQVV48VF1idLZseeXvs6yizEYGjNLu1
|
||||
XQika05+fuzT47nZLWboBL4J03WGj4aUAarBDX4odCfaxrjVv5Sg0vW/iHJAIf5M
|
||||
qjkGNSnuwPXw8IXQa+rux7dUqt/p5M/NWhph5WO+PH9LbK55IAfgRMU9wt/4BGQi
|
||||
K/sRz5kOuh9rUVbqJ8qmcHYZLxYkNdkKBc+2na6CSuBaxQIDAQABo4GRMIGOMB0G
|
||||
A1UdDgQWBBRJaS2oJC+wrOaaAmrQ/Jqqc5ticTBfBgNVHSMEWDBWgBRJaS2oJC+w
|
||||
rOaaAmrQ/Jqqc5ticaE7pDkwNzEPMA0GA1UECgwGSGFzc09TMSQwIgYDVQQDDBtI
|
||||
YXNzT1MgUHJvdmlzaW9uaW5nIENBIFJvb3SCAQEwDAYDVR0TBAUwAwEB/zANBgkq
|
||||
hkiG9w0BAQsFAAOCAQEACDUj/f3agFrJxbEunj2xV37qcs3E37RfpEeE1SVvwidm
|
||||
beX8kZl9gX44CR3ZfjH920ujUvhqmFPd3b4hs96vAbXksabke0AnDNyJ5DR4Vhu7
|
||||
AeMukO6Ui50u9zfaTLEC731TYn+bO+dwRKpOX9AWpRorYgueVQcSJTy/xCZSXhDF
|
||||
tiWn9807Awe7Zo9K5oTDBjhDqyvDKXzLql8jLqfma13l3dnqLFlG5fNsc5vr73RW
|
||||
k/DpPBcDV7YXP94vLh1qZdhxiG+tGUjTOgVG0mVx+pdzOAwd0oNIsRZhfPHbtgZb
|
||||
Ro1FTPSvstq2ykdU9uc3nnrWDIhYBrBJtSUWoHebWg==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfDBmMA0GCSqGSIb3DQEBCwUAMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIGA1UE
|
||||
AwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290Fw0xODA1MTUxNjM1NTRaFw0z
|
||||
MjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQAWfPq1Bchq5D2B+baE149H
|
||||
M9ozBTeICoZJ3xNyVPfce9F2VHQjuXngKCVzCgBxeUNJXVbFdDvd0ybs6SoOojeG
|
||||
WbIeAwzQ2uwluqy7rMx3bvn+QDVUfUP01e7Wd21m1aR+eas6FKCTwUw9CEHMr34s
|
||||
3TZOJ4av3vVlYcJbCk5mfRQ5xyf6qxsdi/tWHxchrJNi/X/e6AMy2sJmj8mBvPES
|
||||
JmjWx97JJISvMYuhWZpbycq+SlvISSbP4IcAYAekGJreHxAXuXr4ELZRQAHTeueH
|
||||
ID0K1fRJU+LVTaQCZohFoECEMqJhrBVs5CTMG2EyEeqlI3I5PTBAyjO362rNkSQz
|
||||
-----END X509 CRL-----
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 2 (0x2)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Release
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:b9:38:00:71:51:61:eb:d5:91:87:78:1d:fd:a7:
|
||||
e9:4e:17:75:50:c7:86:2e:4d:64:e3:32:c6:3a:09:
|
||||
13:1a:5d:05:67:af:d5:da:75:c6:cc:b1:b8:c6:b8:
|
||||
86:05:bf:da:fe:62:62:81:c2:1a:34:d4:34:10:20:
|
||||
e3:91:7f:10:d7:f7:18:54:92:02:29:10:8c:39:6b:
|
||||
1f:42:87:60:08:15:92:03:1d:0e:da:88:7c:7e:0a:
|
||||
38:94:d3:d8:fc:8d:d7:7f:d7:0f:6c:94:5d:82:da:
|
||||
bd:b8:5e:26:37:72:6a:75:6d:84:05:f1:64:fa:78:
|
||||
48:98:33:3d:f9:ae:36:67:98:b9:51:19:8a:84:0b:
|
||||
00:18:20:d8:5e:55:22:7b:95:92:e7:81:dd:67:ac:
|
||||
a0:9d:2e:86:a0:79:ee:8d:00:f6:62:c0:9d:5a:99:
|
||||
ac:ec:f0:a6:66:af:b6:f5:05:64:66:34:1e:3d:7a:
|
||||
b4:f5:b5:18:9a:20:e7:d1:a4:36:81:4d:a3:f8:28:
|
||||
c7:3a:17:a3:c2:0f:a2:95:06:f7:a7:de:83:dd:82:
|
||||
72:50:62:b8:24:9d:cc:05:d5:0f:70:1d:98:7f:13:
|
||||
b2:f3:30:5b:dd:83:24:26:b3:af:ea:b3:5d:8b:b5:
|
||||
de:b8:0a:1e:13:ba:f6:1d:ae:08:ba:b2:b3:d7:7d:
|
||||
4f:af
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
E6:1B:A0:DC:7E:B3:8F:81:97:8B:01:83:86:D4:33:5D:A2:B4:F4:2B
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE, pathlen:0
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
63:d9:a4:26:89:fc:4d:0b:e0:51:2f:8e:82:8d:69:9f:1e:fc:
|
||||
ed:be:73:a8:f4:8c:99:55:c8:36:af:57:80:9f:97:34:a7:47:
|
||||
fb:ae:ee:8f:03:64:2e:88:59:25:c4:f7:e4:8d:85:4b:b3:4a:
|
||||
e8:42:84:01:b9:c1:f4:ce:d4:9d:b1:54:34:8d:8d:0d:22:91:
|
||||
48:a0:59:f0:ea:b9:f4:a1:0f:63:02:a1:52:cb:c7:92:c0:a7:
|
||||
8f:d6:4a:d2:17:36:a5:16:5a:5f:09:1f:48:33:d1:0a:8b:d9:
|
||||
41:e9:ae:0d:c6:15:36:63:0e:f8:7b:9d:ab:b0:49:4e:ab:a6:
|
||||
1d:54:e5:3f:39:7a:d1:49:31:f7:bf:4f:31:9b:0d:1d:a8:91:
|
||||
68:45:b0:fa:e7:e6:9e:2d:37:89:fc:5c:80:64:2c:bb:cd:19:
|
||||
8c:d7:5d:d0:b6:76:97:a9:81:e4:2b:77:f9:a3:02:dc:81:d6:
|
||||
fe:bd:24:0b:36:6a:c2:0f:b0:60:d9:0e:d3:03:ba:80:d4:50:
|
||||
f1:59:dd:bf:c0:96:ee:2c:06:cc:00:2a:cf:dd:48:55:0d:81:
|
||||
e6:76:06:92:df:46:29:10:d5:eb:5c:9c:81:75:2d:94:6b:5b:
|
||||
2f:15:e3:62:0e:39:53:1c:1f:4a:82:c8:13:c6:ae:91:8c:58:
|
||||
e7:70:9e:57
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDgTCCAmmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMDoxDzANBgNVBAoMBkhhc3NPUzEnMCUG
|
||||
A1UEAwweSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSZWxlYXNlMIIBIjANBgkqhkiG
|
||||
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuTgAcVFh69WRh3gd/afpThd1UMeGLk1k4zLG
|
||||
OgkTGl0FZ6/V2nXGzLG4xriGBb/a/mJigcIaNNQ0ECDjkX8Q1/cYVJICKRCMOWsf
|
||||
QodgCBWSAx0O2oh8fgo4lNPY/I3Xf9cPbJRdgtq9uF4mN3JqdW2EBfFk+nhImDM9
|
||||
+a42Z5i5URmKhAsAGCDYXlUie5WS54HdZ6ygnS6GoHnujQD2YsCdWpms7PCmZq+2
|
||||
9QVkZjQePXq09bUYmiDn0aQ2gU2j+CjHOhejwg+ilQb3p96D3YJyUGK4JJ3MBdUP
|
||||
cB2YfxOy8zBb3YMkJrOv6rNdi7XeuAoeE7r2Ha4IurKz131PrwIDAQABo4GUMIGR
|
||||
MB0GA1UdDgQWBBTmG6DcfrOPgZeLAYOG1DNdorT0KzBfBgNVHSMEWDBWgBRJaS2o
|
||||
JC+wrOaaAmrQ/Jqqc5ticaE7pDkwNzEPMA0GA1UECgwGSGFzc09TMSQwIgYDVQQD
|
||||
DBtIYXNzT1MgUHJvdmlzaW9uaW5nIENBIFJvb3SCAQEwDwYDVR0TBAgwBgEB/wIB
|
||||
ADANBgkqhkiG9w0BAQsFAAOCAQEAY9mkJon8TQvgUS+Ogo1pnx787b5zqPSMmVXI
|
||||
Nq9XgJ+XNKdH+67ujwNkLohZJcT35I2FS7NK6EKEAbnB9M7UnbFUNI2NDSKRSKBZ
|
||||
8Oq59KEPYwKhUsvHksCnj9ZK0hc2pRZaXwkfSDPRCovZQemuDcYVNmMO+Hudq7BJ
|
||||
TqumHVTlPzl60Ukx979PMZsNHaiRaEWw+ufmni03ifxcgGQsu80ZjNdd0LZ2l6mB
|
||||
5Ct3+aMC3IHW/r0kCzZqwg+wYNkO0wO6gNRQ8Vndv8CW7iwGzAAqz91IVQ2B5nYG
|
||||
kt9GKRDV61ycgXUtlGtbLxXjYg45UxwfSoLIE8aukYxY53CeVw==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfzBpMA0GCSqGSIb3DQEBCwUAMDoxDzANBgNVBAoMBkhhc3NPUzEnMCUGA1UE
|
||||
AwweSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSZWxlYXNlFw0xODA1MTUxNjM1NTRa
|
||||
Fw0zMjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQBOSgkmXR88VTMZfsjY
|
||||
NYHj2eYSSoFCLLW9CepoeCfIYeb81w6DUusZm4oqyvU+yFj5SBxV6X4ZEJaIaj8r
|
||||
jZtIbx6O6ocMQp9SX1O0OoG+/JJNm/9eezyhuMEK+OEbpVaPpjw6nvizOJMzAx3G
|
||||
hdW8u7xOVc004uDyCE0KT/5DTqQifsS1C5NhRZTrXSD4b6PY1d2wJx33zNUlD0B4
|
||||
7v4f+U9CzQJKY0og7krrlRHfwl8vpMUR4OL1Lxwju8RvcT4u5Do1gp3c7DJ/NJqr
|
||||
xHQjNseGewHQPrNe4Ix6inwIDRQLimQvF74RlmHf0G+Jf9+m5ixCOWH+ySfReCQ7
|
||||
fSiy
|
||||
-----END X509 CRL-----
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 3 (0x3)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Development
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:e1:db:e7:26:03:db:fe:b8:87:bd:91:57:9a:27:
|
||||
ed:ed:f0:7f:5d:18:0a:5a:a0:18:7d:66:ab:4f:90:
|
||||
ed:c8:ab:de:53:b4:d7:a4:b2:87:e7:d6:28:40:32:
|
||||
11:84:b4:fc:0f:33:f3:97:0c:fe:7c:0e:04:5d:cf:
|
||||
c0:bf:0b:8a:cb:a0:b7:cb:75:e6:b3:76:d0:7b:60:
|
||||
b7:80:be:83:7a:ef:e0:32:fa:91:43:72:c3:2c:72:
|
||||
6c:c7:db:c6:a8:bf:6e:3b:9e:ce:e2:60:6a:b0:7f:
|
||||
38:c5:36:b2:32:f5:50:51:d1:0c:43:e1:b8:cf:b0:
|
||||
fe:10:83:f2:2d:e3:4e:c3:b6:83:e2:17:42:b9:f4:
|
||||
31:b4:b7:47:42:ba:b7:3e:91:f0:8a:90:8f:36:66:
|
||||
ca:6a:9a:6c:96:06:5b:f9:27:4d:ff:94:6b:d3:34:
|
||||
c2:ad:bc:d4:fa:30:0f:76:93:e4:5d:8d:ac:46:b9:
|
||||
ab:e3:7b:44:cc:07:7b:67:33:38:40:7a:73:f5:ef:
|
||||
cd:ab:3a:97:60:77:22:ff:25:83:e6:5f:d7:f6:f1:
|
||||
d1:f9:5d:63:fa:69:5c:9c:b3:b7:60:07:09:b4:78:
|
||||
7d:ca:af:0b:80:46:d5:ee:6e:b1:a4:14:03:ce:7d:
|
||||
62:98:e0:71:31:33:84:7d:65:f4:82:7c:6b:49:18:
|
||||
e6:15
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
A4:B8:E3:2A:38:E2:F4:A4:DC:67:71:E8:04:EC:05:4E:37:27:06:8F
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE, pathlen:0
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
8e:c0:e5:ae:72:94:a6:0c:22:53:27:b9:df:e8:01:60:8a:5b:
|
||||
f1:90:4f:56:e1:63:d7:98:c5:1c:49:5f:98:11:79:62:02:b5:
|
||||
49:51:1b:b2:38:df:89:c9:3e:35:63:23:48:5a:5c:b2:bf:4c:
|
||||
5f:41:4e:75:b6:51:ce:1b:66:f7:85:96:b7:f2:33:7d:6e:42:
|
||||
17:60:15:14:18:6f:9f:fb:9b:21:01:28:b5:c7:bd:0c:a4:2c:
|
||||
2c:09:a6:5f:ca:b8:f9:02:65:97:30:22:3c:b9:3a:8f:04:31:
|
||||
21:d0:ea:66:90:12:fa:e8:10:62:c4:ac:30:3a:e1:29:e1:e2:
|
||||
f0:9b:5f:7f:1e:0d:e8:6b:a8:a4:3c:6c:09:97:b2:ab:bf:58:
|
||||
16:cc:6f:62:0b:e7:a1:d6:06:f0:aa:7d:be:1f:e4:00:14:d0:
|
||||
2a:9c:a7:7d:99:90:74:d2:97:76:f3:72:c0:bf:83:40:41:6b:
|
||||
97:ee:ac:a0:ec:5e:79:ba:74:51:ef:d2:22:7f:c8:20:a7:39:
|
||||
c6:8f:2b:a8:aa:ad:9e:1b:5e:fe:61:b0:d7:f8:94:6b:64:3c:
|
||||
3d:9f:da:4e:59:e8:95:f9:58:81:55:4e:ca:dd:93:24:cf:97:
|
||||
4a:0b:47:f2:8c:c8:49:c7:16:cd:69:c0:b6:62:91:19:ae:c9:
|
||||
15:ba:99:78
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDhTCCAm2gAwIBAgIBAzANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMD4xDzANBgNVBAoMBkhhc3NPUzErMCkG
|
||||
A1UEAwwiSGFzc09TIFByb3Zpc2lvbmluZyBDQSBEZXZlbG9wbWVudDCCASIwDQYJ
|
||||
KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOHb5yYD2/64h72RV5on7e3wf10YClqg
|
||||
GH1mq0+Q7cir3lO016Syh+fWKEAyEYS0/A8z85cM/nwOBF3PwL8Lisugt8t15rN2
|
||||
0Htgt4C+g3rv4DL6kUNywyxybMfbxqi/bjuezuJgarB/OMU2sjL1UFHRDEPhuM+w
|
||||
/hCD8i3jTsO2g+IXQrn0MbS3R0K6tz6R8IqQjzZmymqabJYGW/knTf+Ua9M0wq28
|
||||
1PowD3aT5F2NrEa5q+N7RMwHe2czOEB6c/Xvzas6l2B3Iv8lg+Zf1/bx0fldY/pp
|
||||
XJyzt2AHCbR4fcqvC4BG1e5usaQUA859YpjgcTEzhH1l9IJ8a0kY5hUCAwEAAaOB
|
||||
lDCBkTAdBgNVHQ4EFgQUpLjjKjji9KTcZ3HoBOwFTjcnBo8wXwYDVR0jBFgwVoAU
|
||||
SWktqCQvsKzmmgJq0PyaqnObYnGhO6Q5MDcxDzANBgNVBAoMBkhhc3NPUzEkMCIG
|
||||
A1UEAwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290ggEBMA8GA1UdEwQIMAYB
|
||||
Af8CAQAwDQYJKoZIhvcNAQELBQADggEBAI7A5a5ylKYMIlMnud/oAWCKW/GQT1bh
|
||||
Y9eYxRxJX5gReWICtUlRG7I434nJPjVjI0haXLK/TF9BTnW2Uc4bZveFlrfyM31u
|
||||
QhdgFRQYb5/7myEBKLXHvQykLCwJpl/KuPkCZZcwIjy5Oo8EMSHQ6maQEvroEGLE
|
||||
rDA64Snh4vCbX38eDehrqKQ8bAmXsqu/WBbMb2IL56HWBvCqfb4f5AAU0Cqcp32Z
|
||||
kHTSl3bzcsC/g0BBa5furKDsXnm6dFHv0iJ/yCCnOcaPK6iqrZ4bXv5hsNf4lGtk
|
||||
PD2f2k5Z6JX5WIFVTsrdkyTPl0oLR/KMyEnHFs1pwLZikRmuyRW6mXg=
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBgzBtMA0GCSqGSIb3DQEBCwUAMD4xDzANBgNVBAoMBkhhc3NPUzErMCkGA1UE
|
||||
AwwiSGFzc09TIFByb3Zpc2lvbmluZyBDQSBEZXZlbG9wbWVudBcNMTgwNTE1MTYz
|
||||
NTU0WhcNMzIwMTIyMTYzNTU0WjANBgkqhkiG9w0BAQsFAAOCAQEAhmHxjIYZ+J7U
|
||||
/Ih4vWTakmjSQgD+cvhOedUMxBBwxerZ2qKB2t3LGSBKjVgOThL84HppNP/Y1Hqs
|
||||
Kq3RD57aL2ZNdQeP3xXjotb/LXsO8KjNi1SeFFIdXkQ8qFVyXkrbqM2h8PJE3Cu5
|
||||
yeKJaQytPPl90scqmyS07bfI6akwNyg4W6dKQ8KDQrs3DV+Q1xGff6mUgH/6eTIa
|
||||
lg8OTjh6yI1+XZr0Yz9bNo0/3AOMTbNTYZMnZTapD6r8k2r3pr7FQ6lIyHaCAUVF
|
||||
TrWQsqmjuQ2uoj0VZvjKxje8VggNv0NFKg8W3l6p7ng1SVLdzw7i7RIVb+iF9BJC
|
||||
N373ui3HSw==
|
||||
-----END X509 CRL-----
|
1
buildroot-external/misc/fw_env.config
Normal file
1
buildroot-external/misc/fw_env.config
Normal file
@@ -0,0 +1 @@
|
||||
/dev/disk/by-partlabel/hassos-bootstate 0x00 0x4000
|
BIN
buildroot-external/misc/mbr.img
Normal file
BIN
buildroot-external/misc/mbr.img
Normal file
Binary file not shown.
112
buildroot-external/misc/provisioning-ca.pem
Normal file
112
buildroot-external/misc/provisioning-ca.pem
Normal file
@@ -0,0 +1,112 @@
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 1 (0x1)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:a5:81:96:24:f6:eb:ac:0b:10:72:34:c8:41:70:
|
||||
f5:29:9c:1c:1e:d9:a6:68:a3:ea:c5:e4:68:e7:b5:
|
||||
76:2e:13:e0:0e:fe:8e:c4:2f:d2:76:2c:76:63:15:
|
||||
8d:7e:7f:8a:9f:d8:9a:66:94:b9:b4:6f:5e:bc:a9:
|
||||
59:59:12:fa:bb:7b:af:34:95:79:dd:2d:b1:3e:0e:
|
||||
16:27:92:40:9d:15:55:34:b9:7d:dd:63:2e:64:f9:
|
||||
65:46:e9:b2:de:66:d8:e5:12:9d:af:ca:db:3e:44:
|
||||
15:57:8f:15:17:58:9d:2d:9b:1e:79:7b:ec:eb:28:
|
||||
b3:11:81:a3:34:bb:b5:5d:08:a4:6b:4e:7e:7e:ec:
|
||||
d3:e3:b9:d9:2d:66:e8:04:be:09:d3:75:86:8f:86:
|
||||
94:01:aa:c1:0d:7e:28:74:27:da:c6:b8:d5:bf:94:
|
||||
a0:d2:f5:bf:88:72:40:21:fe:4c:aa:39:06:35:29:
|
||||
ee:c0:f5:f0:f0:85:d0:6b:ea:ee:c7:b7:54:aa:df:
|
||||
e9:e4:cf:cd:5a:1a:61:e5:63:be:3c:7f:4b:6c:ae:
|
||||
79:20:07:e0:44:c5:3d:c2:df:f8:04:64:22:2b:fb:
|
||||
11:cf:99:0e:ba:1f:6b:51:56:ea:27:ca:a6:70:76:
|
||||
19:2f:16:24:35:d9:0a:05:cf:b6:9d:ae:82:4a:e0:
|
||||
5a:c5
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
08:35:23:fd:fd:da:80:5a:c9:c5:b1:2e:9e:3d:b1:57:7e:ea:
|
||||
72:cd:c4:df:b4:5f:a4:47:84:d5:25:6f:c2:27:66:6d:e5:fc:
|
||||
91:99:7d:81:7e:38:09:1d:d9:7e:31:fd:db:4b:a3:52:f8:6a:
|
||||
98:53:dd:dd:be:21:b3:de:af:01:b5:e4:b1:a6:e4:7b:40:27:
|
||||
0c:dc:89:e4:34:78:56:1b:bb:01:e3:2e:90:ee:94:8b:9d:2e:
|
||||
f7:37:da:4c:b1:02:ef:7d:53:62:7f:9b:3b:e7:70:44:aa:4e:
|
||||
5f:d0:16:a5:1a:2b:62:0b:9e:55:07:12:25:3c:bf:c4:26:52:
|
||||
5e:10:c5:b6:25:a7:f7:cd:3b:03:07:bb:66:8f:4a:e6:84:c3:
|
||||
06:38:43:ab:2b:c3:29:7c:cb:aa:5f:23:2e:a7:e6:6b:5d:e5:
|
||||
dd:d9:ea:2c:59:46:e5:f3:6c:73:9b:eb:ef:74:56:93:f0:e9:
|
||||
3c:17:03:57:b6:17:3f:de:2f:2e:1d:6a:65:d8:71:88:6f:ad:
|
||||
19:48:d3:3a:05:46:d2:65:71:fa:97:73:38:0c:1d:d2:83:48:
|
||||
b1:16:61:7c:f1:db:b6:06:5b:46:8d:45:4c:f4:af:b2:da:b6:
|
||||
ca:47:54:f6:e7:37:9e:7a:d6:0c:88:58:06:b0:49:b5:25:16:
|
||||
a0:77:9b:5a
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIG
|
||||
A1UEAwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290MIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEApYGWJPbrrAsQcjTIQXD1KZwcHtmmaKPqxeRo57V2
|
||||
LhPgDv6OxC/Sdix2YxWNfn+Kn9iaZpS5tG9evKlZWRL6u3uvNJV53S2xPg4WJ5JA
|
||||
nRVVNLl93WMuZPllRumy3mbY5RKdr8rbPkQVV48VF1idLZseeXvs6yizEYGjNLu1
|
||||
XQika05+fuzT47nZLWboBL4J03WGj4aUAarBDX4odCfaxrjVv5Sg0vW/iHJAIf5M
|
||||
qjkGNSnuwPXw8IXQa+rux7dUqt/p5M/NWhph5WO+PH9LbK55IAfgRMU9wt/4BGQi
|
||||
K/sRz5kOuh9rUVbqJ8qmcHYZLxYkNdkKBc+2na6CSuBaxQIDAQABo4GRMIGOMB0G
|
||||
A1UdDgQWBBRJaS2oJC+wrOaaAmrQ/Jqqc5ticTBfBgNVHSMEWDBWgBRJaS2oJC+w
|
||||
rOaaAmrQ/Jqqc5ticaE7pDkwNzEPMA0GA1UECgwGSGFzc09TMSQwIgYDVQQDDBtI
|
||||
YXNzT1MgUHJvdmlzaW9uaW5nIENBIFJvb3SCAQEwDAYDVR0TBAUwAwEB/zANBgkq
|
||||
hkiG9w0BAQsFAAOCAQEACDUj/f3agFrJxbEunj2xV37qcs3E37RfpEeE1SVvwidm
|
||||
beX8kZl9gX44CR3ZfjH920ujUvhqmFPd3b4hs96vAbXksabke0AnDNyJ5DR4Vhu7
|
||||
AeMukO6Ui50u9zfaTLEC731TYn+bO+dwRKpOX9AWpRorYgueVQcSJTy/xCZSXhDF
|
||||
tiWn9807Awe7Zo9K5oTDBjhDqyvDKXzLql8jLqfma13l3dnqLFlG5fNsc5vr73RW
|
||||
k/DpPBcDV7YXP94vLh1qZdhxiG+tGUjTOgVG0mVx+pdzOAwd0oNIsRZhfPHbtgZb
|
||||
Ro1FTPSvstq2ykdU9uc3nnrWDIhYBrBJtSUWoHebWg==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfDBmMA0GCSqGSIb3DQEBCwUAMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIGA1UE
|
||||
AwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290Fw0xODA1MTUxNjM1NTRaFw0z
|
||||
MjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQAWfPq1Bchq5D2B+baE149H
|
||||
M9ozBTeICoZJ3xNyVPfce9F2VHQjuXngKCVzCgBxeUNJXVbFdDvd0ybs6SoOojeG
|
||||
WbIeAwzQ2uwluqy7rMx3bvn+QDVUfUP01e7Wd21m1aR+eas6FKCTwUw9CEHMr34s
|
||||
3TZOJ4av3vVlYcJbCk5mfRQ5xyf6qxsdi/tWHxchrJNi/X/e6AMy2sJmj8mBvPES
|
||||
JmjWx97JJISvMYuhWZpbycq+SlvISSbP4IcAYAekGJreHxAXuXr4ELZRQAHTeueH
|
||||
ID0K1fRJU+LVTaQCZohFoECEMqJhrBVs5CTMG2EyEeqlI3I5PTBAyjO362rNkSQz
|
||||
-----END X509 CRL-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfzBpMA0GCSqGSIb3DQEBCwUAMDoxDzANBgNVBAoMBkhhc3NPUzEnMCUGA1UE
|
||||
AwweSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSZWxlYXNlFw0xODA1MTUxNjM1NTRa
|
||||
Fw0zMjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQBOSgkmXR88VTMZfsjY
|
||||
NYHj2eYSSoFCLLW9CepoeCfIYeb81w6DUusZm4oqyvU+yFj5SBxV6X4ZEJaIaj8r
|
||||
jZtIbx6O6ocMQp9SX1O0OoG+/JJNm/9eezyhuMEK+OEbpVaPpjw6nvizOJMzAx3G
|
||||
hdW8u7xOVc004uDyCE0KT/5DTqQifsS1C5NhRZTrXSD4b6PY1d2wJx33zNUlD0B4
|
||||
7v4f+U9CzQJKY0og7krrlRHfwl8vpMUR4OL1Lxwju8RvcT4u5Do1gp3c7DJ/NJqr
|
||||
xHQjNseGewHQPrNe4Ix6inwIDRQLimQvF74RlmHf0G+Jf9+m5ixCOWH+ySfReCQ7
|
||||
fSiy
|
||||
-----END X509 CRL-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBgzBtMA0GCSqGSIb3DQEBCwUAMD4xDzANBgNVBAoMBkhhc3NPUzErMCkGA1UE
|
||||
AwwiSGFzc09TIFByb3Zpc2lvbmluZyBDQSBEZXZlbG9wbWVudBcNMTgwNTE1MTYz
|
||||
NTU0WhcNMzIwMTIyMTYzNTU0WjANBgkqhkiG9w0BAQsFAAOCAQEAhmHxjIYZ+J7U
|
||||
/Ih4vWTakmjSQgD+cvhOedUMxBBwxerZ2qKB2t3LGSBKjVgOThL84HppNP/Y1Hqs
|
||||
Kq3RD57aL2ZNdQeP3xXjotb/LXsO8KjNi1SeFFIdXkQ8qFVyXkrbqM2h8PJE3Cu5
|
||||
yeKJaQytPPl90scqmyS07bfI6akwNyg4W6dKQ8KDQrs3DV+Q1xGff6mUgH/6eTIa
|
||||
lg8OTjh6yI1+XZr0Yz9bNo0/3AOMTbNTYZMnZTapD6r8k2r3pr7FQ6lIyHaCAUVF
|
||||
TrWQsqmjuQ2uoj0VZvjKxje8VggNv0NFKg8W3l6p7ng1SVLdzw7i7RIVb+iF9BJC
|
||||
N373ui3HSw==
|
||||
-----END X509 CRL-----
|
12
buildroot-external/misc/rauc-hook
Executable file
12
buildroot-external/misc/rauc-hook
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Handle boot hocks
|
||||
if [ "${RAUC_SLOT_CLASS}" = "boot" ]; then
|
||||
if [ "${1}" = "slot-post-install" ]; then
|
||||
/usr/lib/rauc/post-install-boot
|
||||
elif [ "${1}" = "slot-pre-install" ]; then
|
||||
/usr/lib/rauc/pre-install-boot
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
181
buildroot-external/misc/rel-ca.pem
Normal file
181
buildroot-external/misc/rel-ca.pem
Normal file
@@ -0,0 +1,181 @@
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 1 (0x1)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:a5:81:96:24:f6:eb:ac:0b:10:72:34:c8:41:70:
|
||||
f5:29:9c:1c:1e:d9:a6:68:a3:ea:c5:e4:68:e7:b5:
|
||||
76:2e:13:e0:0e:fe:8e:c4:2f:d2:76:2c:76:63:15:
|
||||
8d:7e:7f:8a:9f:d8:9a:66:94:b9:b4:6f:5e:bc:a9:
|
||||
59:59:12:fa:bb:7b:af:34:95:79:dd:2d:b1:3e:0e:
|
||||
16:27:92:40:9d:15:55:34:b9:7d:dd:63:2e:64:f9:
|
||||
65:46:e9:b2:de:66:d8:e5:12:9d:af:ca:db:3e:44:
|
||||
15:57:8f:15:17:58:9d:2d:9b:1e:79:7b:ec:eb:28:
|
||||
b3:11:81:a3:34:bb:b5:5d:08:a4:6b:4e:7e:7e:ec:
|
||||
d3:e3:b9:d9:2d:66:e8:04:be:09:d3:75:86:8f:86:
|
||||
94:01:aa:c1:0d:7e:28:74:27:da:c6:b8:d5:bf:94:
|
||||
a0:d2:f5:bf:88:72:40:21:fe:4c:aa:39:06:35:29:
|
||||
ee:c0:f5:f0:f0:85:d0:6b:ea:ee:c7:b7:54:aa:df:
|
||||
e9:e4:cf:cd:5a:1a:61:e5:63:be:3c:7f:4b:6c:ae:
|
||||
79:20:07:e0:44:c5:3d:c2:df:f8:04:64:22:2b:fb:
|
||||
11:cf:99:0e:ba:1f:6b:51:56:ea:27:ca:a6:70:76:
|
||||
19:2f:16:24:35:d9:0a:05:cf:b6:9d:ae:82:4a:e0:
|
||||
5a:c5
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
08:35:23:fd:fd:da:80:5a:c9:c5:b1:2e:9e:3d:b1:57:7e:ea:
|
||||
72:cd:c4:df:b4:5f:a4:47:84:d5:25:6f:c2:27:66:6d:e5:fc:
|
||||
91:99:7d:81:7e:38:09:1d:d9:7e:31:fd:db:4b:a3:52:f8:6a:
|
||||
98:53:dd:dd:be:21:b3:de:af:01:b5:e4:b1:a6:e4:7b:40:27:
|
||||
0c:dc:89:e4:34:78:56:1b:bb:01:e3:2e:90:ee:94:8b:9d:2e:
|
||||
f7:37:da:4c:b1:02:ef:7d:53:62:7f:9b:3b:e7:70:44:aa:4e:
|
||||
5f:d0:16:a5:1a:2b:62:0b:9e:55:07:12:25:3c:bf:c4:26:52:
|
||||
5e:10:c5:b6:25:a7:f7:cd:3b:03:07:bb:66:8f:4a:e6:84:c3:
|
||||
06:38:43:ab:2b:c3:29:7c:cb:aa:5f:23:2e:a7:e6:6b:5d:e5:
|
||||
dd:d9:ea:2c:59:46:e5:f3:6c:73:9b:eb:ef:74:56:93:f0:e9:
|
||||
3c:17:03:57:b6:17:3f:de:2f:2e:1d:6a:65:d8:71:88:6f:ad:
|
||||
19:48:d3:3a:05:46:d2:65:71:fa:97:73:38:0c:1d:d2:83:48:
|
||||
b1:16:61:7c:f1:db:b6:06:5b:46:8d:45:4c:f4:af:b2:da:b6:
|
||||
ca:47:54:f6:e7:37:9e:7a:d6:0c:88:58:06:b0:49:b5:25:16:
|
||||
a0:77:9b:5a
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIG
|
||||
A1UEAwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290MIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEApYGWJPbrrAsQcjTIQXD1KZwcHtmmaKPqxeRo57V2
|
||||
LhPgDv6OxC/Sdix2YxWNfn+Kn9iaZpS5tG9evKlZWRL6u3uvNJV53S2xPg4WJ5JA
|
||||
nRVVNLl93WMuZPllRumy3mbY5RKdr8rbPkQVV48VF1idLZseeXvs6yizEYGjNLu1
|
||||
XQika05+fuzT47nZLWboBL4J03WGj4aUAarBDX4odCfaxrjVv5Sg0vW/iHJAIf5M
|
||||
qjkGNSnuwPXw8IXQa+rux7dUqt/p5M/NWhph5WO+PH9LbK55IAfgRMU9wt/4BGQi
|
||||
K/sRz5kOuh9rUVbqJ8qmcHYZLxYkNdkKBc+2na6CSuBaxQIDAQABo4GRMIGOMB0G
|
||||
A1UdDgQWBBRJaS2oJC+wrOaaAmrQ/Jqqc5ticTBfBgNVHSMEWDBWgBRJaS2oJC+w
|
||||
rOaaAmrQ/Jqqc5ticaE7pDkwNzEPMA0GA1UECgwGSGFzc09TMSQwIgYDVQQDDBtI
|
||||
YXNzT1MgUHJvdmlzaW9uaW5nIENBIFJvb3SCAQEwDAYDVR0TBAUwAwEB/zANBgkq
|
||||
hkiG9w0BAQsFAAOCAQEACDUj/f3agFrJxbEunj2xV37qcs3E37RfpEeE1SVvwidm
|
||||
beX8kZl9gX44CR3ZfjH920ujUvhqmFPd3b4hs96vAbXksabke0AnDNyJ5DR4Vhu7
|
||||
AeMukO6Ui50u9zfaTLEC731TYn+bO+dwRKpOX9AWpRorYgueVQcSJTy/xCZSXhDF
|
||||
tiWn9807Awe7Zo9K5oTDBjhDqyvDKXzLql8jLqfma13l3dnqLFlG5fNsc5vr73RW
|
||||
k/DpPBcDV7YXP94vLh1qZdhxiG+tGUjTOgVG0mVx+pdzOAwd0oNIsRZhfPHbtgZb
|
||||
Ro1FTPSvstq2ykdU9uc3nnrWDIhYBrBJtSUWoHebWg==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfDBmMA0GCSqGSIb3DQEBCwUAMDcxDzANBgNVBAoMBkhhc3NPUzEkMCIGA1UE
|
||||
AwwbSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSb290Fw0xODA1MTUxNjM1NTRaFw0z
|
||||
MjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQAWfPq1Bchq5D2B+baE149H
|
||||
M9ozBTeICoZJ3xNyVPfce9F2VHQjuXngKCVzCgBxeUNJXVbFdDvd0ybs6SoOojeG
|
||||
WbIeAwzQ2uwluqy7rMx3bvn+QDVUfUP01e7Wd21m1aR+eas6FKCTwUw9CEHMr34s
|
||||
3TZOJ4av3vVlYcJbCk5mfRQ5xyf6qxsdi/tWHxchrJNi/X/e6AMy2sJmj8mBvPES
|
||||
JmjWx97JJISvMYuhWZpbycq+SlvISSbP4IcAYAekGJreHxAXuXr4ELZRQAHTeueH
|
||||
ID0K1fRJU+LVTaQCZohFoECEMqJhrBVs5CTMG2EyEeqlI3I5PTBAyjO362rNkSQz
|
||||
-----END X509 CRL-----
|
||||
Certificate:
|
||||
Data:
|
||||
Version: 3 (0x2)
|
||||
Serial Number: 2 (0x2)
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
Issuer: O=HassOS, CN=HassOS Provisioning CA Root
|
||||
Validity
|
||||
Not Before: May 15 16:35:54 2018 GMT
|
||||
Not After : May 14 16:35:54 2028 GMT
|
||||
Subject: O=HassOS, CN=HassOS Provisioning CA Release
|
||||
Subject Public Key Info:
|
||||
Public Key Algorithm: rsaEncryption
|
||||
Public-Key: (2048 bit)
|
||||
Modulus:
|
||||
00:b9:38:00:71:51:61:eb:d5:91:87:78:1d:fd:a7:
|
||||
e9:4e:17:75:50:c7:86:2e:4d:64:e3:32:c6:3a:09:
|
||||
13:1a:5d:05:67:af:d5:da:75:c6:cc:b1:b8:c6:b8:
|
||||
86:05:bf:da:fe:62:62:81:c2:1a:34:d4:34:10:20:
|
||||
e3:91:7f:10:d7:f7:18:54:92:02:29:10:8c:39:6b:
|
||||
1f:42:87:60:08:15:92:03:1d:0e:da:88:7c:7e:0a:
|
||||
38:94:d3:d8:fc:8d:d7:7f:d7:0f:6c:94:5d:82:da:
|
||||
bd:b8:5e:26:37:72:6a:75:6d:84:05:f1:64:fa:78:
|
||||
48:98:33:3d:f9:ae:36:67:98:b9:51:19:8a:84:0b:
|
||||
00:18:20:d8:5e:55:22:7b:95:92:e7:81:dd:67:ac:
|
||||
a0:9d:2e:86:a0:79:ee:8d:00:f6:62:c0:9d:5a:99:
|
||||
ac:ec:f0:a6:66:af:b6:f5:05:64:66:34:1e:3d:7a:
|
||||
b4:f5:b5:18:9a:20:e7:d1:a4:36:81:4d:a3:f8:28:
|
||||
c7:3a:17:a3:c2:0f:a2:95:06:f7:a7:de:83:dd:82:
|
||||
72:50:62:b8:24:9d:cc:05:d5:0f:70:1d:98:7f:13:
|
||||
b2:f3:30:5b:dd:83:24:26:b3:af:ea:b3:5d:8b:b5:
|
||||
de:b8:0a:1e:13:ba:f6:1d:ae:08:ba:b2:b3:d7:7d:
|
||||
4f:af
|
||||
Exponent: 65537 (0x10001)
|
||||
X509v3 extensions:
|
||||
X509v3 Subject Key Identifier:
|
||||
E6:1B:A0:DC:7E:B3:8F:81:97:8B:01:83:86:D4:33:5D:A2:B4:F4:2B
|
||||
X509v3 Authority Key Identifier:
|
||||
keyid:49:69:2D:A8:24:2F:B0:AC:E6:9A:02:6A:D0:FC:9A:AA:73:9B:62:71
|
||||
DirName:/O=HassOS/CN=HassOS Provisioning CA Root
|
||||
serial:01
|
||||
|
||||
X509v3 Basic Constraints:
|
||||
CA:TRUE, pathlen:0
|
||||
Signature Algorithm: sha256WithRSAEncryption
|
||||
63:d9:a4:26:89:fc:4d:0b:e0:51:2f:8e:82:8d:69:9f:1e:fc:
|
||||
ed:be:73:a8:f4:8c:99:55:c8:36:af:57:80:9f:97:34:a7:47:
|
||||
fb:ae:ee:8f:03:64:2e:88:59:25:c4:f7:e4:8d:85:4b:b3:4a:
|
||||
e8:42:84:01:b9:c1:f4:ce:d4:9d:b1:54:34:8d:8d:0d:22:91:
|
||||
48:a0:59:f0:ea:b9:f4:a1:0f:63:02:a1:52:cb:c7:92:c0:a7:
|
||||
8f:d6:4a:d2:17:36:a5:16:5a:5f:09:1f:48:33:d1:0a:8b:d9:
|
||||
41:e9:ae:0d:c6:15:36:63:0e:f8:7b:9d:ab:b0:49:4e:ab:a6:
|
||||
1d:54:e5:3f:39:7a:d1:49:31:f7:bf:4f:31:9b:0d:1d:a8:91:
|
||||
68:45:b0:fa:e7:e6:9e:2d:37:89:fc:5c:80:64:2c:bb:cd:19:
|
||||
8c:d7:5d:d0:b6:76:97:a9:81:e4:2b:77:f9:a3:02:dc:81:d6:
|
||||
fe:bd:24:0b:36:6a:c2:0f:b0:60:d9:0e:d3:03:ba:80:d4:50:
|
||||
f1:59:dd:bf:c0:96:ee:2c:06:cc:00:2a:cf:dd:48:55:0d:81:
|
||||
e6:76:06:92:df:46:29:10:d5:eb:5c:9c:81:75:2d:94:6b:5b:
|
||||
2f:15:e3:62:0e:39:53:1c:1f:4a:82:c8:13:c6:ae:91:8c:58:
|
||||
e7:70:9e:57
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDgTCCAmmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADA3MQ8wDQYDVQQKDAZIYXNz
|
||||
T1MxJDAiBgNVBAMMG0hhc3NPUyBQcm92aXNpb25pbmcgQ0EgUm9vdDAeFw0xODA1
|
||||
MTUxNjM1NTRaFw0yODA1MTQxNjM1NTRaMDoxDzANBgNVBAoMBkhhc3NPUzEnMCUG
|
||||
A1UEAwweSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSZWxlYXNlMIIBIjANBgkqhkiG
|
||||
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuTgAcVFh69WRh3gd/afpThd1UMeGLk1k4zLG
|
||||
OgkTGl0FZ6/V2nXGzLG4xriGBb/a/mJigcIaNNQ0ECDjkX8Q1/cYVJICKRCMOWsf
|
||||
QodgCBWSAx0O2oh8fgo4lNPY/I3Xf9cPbJRdgtq9uF4mN3JqdW2EBfFk+nhImDM9
|
||||
+a42Z5i5URmKhAsAGCDYXlUie5WS54HdZ6ygnS6GoHnujQD2YsCdWpms7PCmZq+2
|
||||
9QVkZjQePXq09bUYmiDn0aQ2gU2j+CjHOhejwg+ilQb3p96D3YJyUGK4JJ3MBdUP
|
||||
cB2YfxOy8zBb3YMkJrOv6rNdi7XeuAoeE7r2Ha4IurKz131PrwIDAQABo4GUMIGR
|
||||
MB0GA1UdDgQWBBTmG6DcfrOPgZeLAYOG1DNdorT0KzBfBgNVHSMEWDBWgBRJaS2o
|
||||
JC+wrOaaAmrQ/Jqqc5ticaE7pDkwNzEPMA0GA1UECgwGSGFzc09TMSQwIgYDVQQD
|
||||
DBtIYXNzT1MgUHJvdmlzaW9uaW5nIENBIFJvb3SCAQEwDwYDVR0TBAgwBgEB/wIB
|
||||
ADANBgkqhkiG9w0BAQsFAAOCAQEAY9mkJon8TQvgUS+Ogo1pnx787b5zqPSMmVXI
|
||||
Nq9XgJ+XNKdH+67ujwNkLohZJcT35I2FS7NK6EKEAbnB9M7UnbFUNI2NDSKRSKBZ
|
||||
8Oq59KEPYwKhUsvHksCnj9ZK0hc2pRZaXwkfSDPRCovZQemuDcYVNmMO+Hudq7BJ
|
||||
TqumHVTlPzl60Ukx979PMZsNHaiRaEWw+ufmni03ifxcgGQsu80ZjNdd0LZ2l6mB
|
||||
5Ct3+aMC3IHW/r0kCzZqwg+wYNkO0wO6gNRQ8Vndv8CW7iwGzAAqz91IVQ2B5nYG
|
||||
kt9GKRDV61ycgXUtlGtbLxXjYg45UxwfSoLIE8aukYxY53CeVw==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN X509 CRL-----
|
||||
MIIBfzBpMA0GCSqGSIb3DQEBCwUAMDoxDzANBgNVBAoMBkhhc3NPUzEnMCUGA1UE
|
||||
AwweSGFzc09TIFByb3Zpc2lvbmluZyBDQSBSZWxlYXNlFw0xODA1MTUxNjM1NTRa
|
||||
Fw0zMjAxMjIxNjM1NTRaMA0GCSqGSIb3DQEBCwUAA4IBAQBOSgkmXR88VTMZfsjY
|
||||
NYHj2eYSSoFCLLW9CepoeCfIYeb81w6DUusZm4oqyvU+yFj5SBxV6X4ZEJaIaj8r
|
||||
jZtIbx6O6ocMQp9SX1O0OoG+/JJNm/9eezyhuMEK+OEbpVaPpjw6nvizOJMzAx3G
|
||||
hdW8u7xOVc004uDyCE0KT/5DTqQifsS1C5NhRZTrXSD4b6PY1d2wJx33zNUlD0B4
|
||||
7v4f+U9CzQJKY0og7krrlRHfwl8vpMUR4OL1Lxwju8RvcT4u5Do1gp3c7DJ/NJqr
|
||||
xHQjNseGewHQPrNe4Ix6inwIDRQLimQvF74RlmHf0G+Jf9+m5ixCOWH+ySfReCQ7
|
||||
fSiy
|
||||
-----END X509 CRL-----
|
9
buildroot-external/package/apparmor/Config.in
Normal file
9
buildroot-external/package/apparmor/Config.in
Normal file
@@ -0,0 +1,9 @@
|
||||
config BR2_PACKAGE_APPARMOR
|
||||
bool "apparmor"
|
||||
select BR2_PACKAGE_LIBAPPARMOR
|
||||
help
|
||||
AppArmor gives you network application security via mandatory
|
||||
access control for programs, protecting against the exploitation
|
||||
of software flaws and compromised systems.
|
||||
|
||||
http://apparmor.net
|
24
buildroot-external/package/apparmor/apparmor.mk
Normal file
24
buildroot-external/package/apparmor/apparmor.mk
Normal file
@@ -0,0 +1,24 @@
|
||||
#############################################################
|
||||
#
|
||||
# apparmor
|
||||
#
|
||||
#############################################################
|
||||
APPARMOR_VERSION = v2.13
|
||||
APPARMOR_SITE = git://git.launchpad.net/apparmor
|
||||
APPARMOR_LICENSE = GPL-2
|
||||
APPARMOR_LICENSE_FILES = LICENSE
|
||||
APPARMOR_DEPENDENCIES = libapparmor
|
||||
|
||||
define APPARMOR_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) PATH=$(BR_PATH) $(MAKE) -C $(@D)/parser USE_SYSTEM=1 YACC=bison LEX=flex
|
||||
$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/profiles
|
||||
endef
|
||||
|
||||
define APPARMOR_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/parser DESTDIR=$(TARGET_DIR) USE_SYSTEM=1 PREFIX=/usr install
|
||||
$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/profiles DESTDIR=$(TARGET_DIR) PREFIX=/usr install
|
||||
|
||||
rm -rf $(TARGET_DIR)/usr/lib/apparmor
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
@@ -1,41 +0,0 @@
|
||||
config BR2_PACKAGE_HASSIO
|
||||
bool "hassio-app"
|
||||
help
|
||||
This is the Application layer they build the
|
||||
data partition with configurations.
|
||||
|
||||
https://github.com/home-assistant/hassio-os
|
||||
|
||||
if BR2_PACKAGE_HASSIO
|
||||
|
||||
config BR2_PACKAGE_HASSIO_SUPERVISOR
|
||||
string "supervisor docker image"
|
||||
help
|
||||
Name of supervisor docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSIO_SUPERVISOR_VERSION
|
||||
string "supervisor docker image version"
|
||||
help
|
||||
Version of supervisor docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSIO_SUPERVISOR_ARGS
|
||||
string "supervisor docker arguments"
|
||||
help
|
||||
Extended docker arguments to run the supervisor.
|
||||
|
||||
config BR2_PACKAGE_HASSIO_CLI
|
||||
string "cli docker image"
|
||||
help
|
||||
Name of cli docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSIO_CLI_VERSION
|
||||
string "cli docker image version"
|
||||
help
|
||||
Version of cli docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSIO_CLI_ARGS
|
||||
string "cli docker arguments"
|
||||
help
|
||||
Extended docker arguments to run the cli.
|
||||
|
||||
endif
|
@@ -1,27 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# hassio
|
||||
#
|
||||
################################################################################
|
||||
|
||||
HASSIO_VERSION = 1.0.0
|
||||
HASSIO_LICENSE = Apache License 2.0
|
||||
HASSIO_LICENSE_FILES = $(BR2_EXTERNAL_HASSIO_PATH)/../LICENSE
|
||||
HASSIO_SITE = $(BR2_EXTERNAL_HASSIO_PATH)/package/hassio
|
||||
HASSIO_SITE_METHOD = local
|
||||
|
||||
define HASSIO_BUILD_CMDS
|
||||
docker build --tag hassio-hostapps $(@D)/builder
|
||||
endef
|
||||
|
||||
define HASSIO_INSTALL_TARGET_CMDS
|
||||
docker run --rm --privileged -v ${BINARIES_DIR}:/export hassio-hostapps \
|
||||
--supervisor ${BR2_PACKAGE_HASSIO_SUPERVISOR} \
|
||||
--supervisor-version ${BR2_PACKAGE_HASSIO_SUPERVISOR_VERSION} \
|
||||
--supervisor-args ${BR2_PACKAGE_HASSIO_SUPERVISOR_ARGS} \
|
||||
--cli ${BR2_PACKAGE_HASSIO_CLI} \
|
||||
--cli-version ${BR2_PACKAGE_HASSIO_CLI_VERSION} \
|
||||
--cli-args ${BR2_PACKAGE_HASSIO_CLI_ARGS}
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
66
buildroot-external/package/hassos/Config.in
Normal file
66
buildroot-external/package/hassos/Config.in
Normal file
@@ -0,0 +1,66 @@
|
||||
menuconfig BR2_PACKAGE_HASSOS
|
||||
bool "hassos-app"
|
||||
help
|
||||
This is the Application layer they build the
|
||||
data partition with configurations.
|
||||
|
||||
https://github.com/home-assistant/hassos
|
||||
|
||||
if BR2_PACKAGE_HASSOS
|
||||
|
||||
config BR2_PACKAGE_HASSOS_SUPERVISOR
|
||||
string "supervisor docker image"
|
||||
help
|
||||
Name of supervisor docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION
|
||||
string "supervisor docker image version"
|
||||
help
|
||||
Version of supervisor docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS
|
||||
string "supervisor docker arguments"
|
||||
help
|
||||
Extended docker arguments to run the supervisor.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE
|
||||
string "AppArmor supervisor profile"
|
||||
help
|
||||
AppArmor profile for supervisor.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL
|
||||
string "AppArmor supervisor profile URL"
|
||||
help
|
||||
AppArmor profile for supervisor url.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_CLI
|
||||
string "cli docker image"
|
||||
help
|
||||
Name of cli docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_CLI_VERSION
|
||||
string "cli docker image version"
|
||||
help
|
||||
Version of cli docker image they will be build in.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_CLI_ARGS
|
||||
string "cli docker arguments"
|
||||
help
|
||||
Extended docker arguments to run the cli.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_CLI_PROFILE
|
||||
string "AppArmor cli profile"
|
||||
help
|
||||
AppArmor profile for cli.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_CLI_PROFILE_URL
|
||||
string "AppArmor cli profile url"
|
||||
help
|
||||
AppArmor profile for cli url.
|
||||
|
||||
config BR2_PACKAGE_HASSOS_APPARMOR_DIR
|
||||
string "AppArmor profiles folder"
|
||||
help
|
||||
AppArmor profiles folder for HassOS.
|
||||
|
||||
endif
|
@@ -2,7 +2,7 @@ FROM alpine:3.7
|
||||
|
||||
# Install packages
|
||||
RUN apk add --no-cache \
|
||||
bash coreutils e2fsprogs
|
||||
bash coreutils e2fsprogs curl
|
||||
RUN apk add --no-cache --repository http://nl.alpinelinux.org/alpine/v3.7/community \
|
||||
docker
|
||||
|
@@ -4,9 +4,14 @@ set -e
|
||||
SUPERVISOR=""
|
||||
SUPERVISOR_VERSION=""
|
||||
SUPERVISOR_ARGS=""
|
||||
SUPERVISOR_PROFILE=""
|
||||
SUPERVISOR_PROFILE_URL=""
|
||||
CLI=""
|
||||
CLI_VERSION=""
|
||||
CLI_ARGS=""
|
||||
CLI_PROFILE=""
|
||||
CLI_PROFILE_URL=""
|
||||
APPARMOR=""
|
||||
DATA_IMG="/export/data.ext4"
|
||||
|
||||
# Parse
|
||||
@@ -25,6 +30,14 @@ while [[ $# -gt 0 ]]; do
|
||||
SUPERVISOR_ARGS=$2
|
||||
shift
|
||||
;;
|
||||
--supervisor-profile)
|
||||
SUPERVISOR_PROFILE=$2
|
||||
shift
|
||||
;;
|
||||
--supervisor-profile-url)
|
||||
SUPERVISOR_PROFILE_URL=$2
|
||||
shift
|
||||
;;
|
||||
--cli)
|
||||
CLI=$2
|
||||
shift
|
||||
@@ -37,6 +50,18 @@ while [[ $# -gt 0 ]]; do
|
||||
CLI_ARGS=$2
|
||||
shift
|
||||
;;
|
||||
--cli-profile)
|
||||
CLI_PROFILE=$2
|
||||
shift
|
||||
;;
|
||||
--cli-profile-url)
|
||||
CLI_PROFILE_URL=$2
|
||||
shift
|
||||
;;
|
||||
--apparmor)
|
||||
APPARMOR=$2
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
;;
|
||||
@@ -46,20 +71,19 @@ done
|
||||
|
||||
# Make image
|
||||
dd if=/dev/zero of=${DATA_IMG} bs=1G count=1
|
||||
mkfs.ext4 -L "hassio-data" -E lazy_itable_init=0,lazy_journal_init=0 ${DATA_IMG}
|
||||
mkfs.ext4 -L "hassos-data" -E lazy_itable_init=0,lazy_journal_init=0 ${DATA_IMG}
|
||||
|
||||
# Mount / init file structs
|
||||
mount -o loop ${DATA_IMG} /mnt
|
||||
mkdir -p /mnt/docker
|
||||
mkdir -p /mnt/supervisor
|
||||
mkdir -p /mnt/cli
|
||||
mkdir -p /mnt/data/
|
||||
mount -o loop ${DATA_IMG} /mnt/data
|
||||
mkdir -p /mnt/data/docker
|
||||
|
||||
# Run dockerd
|
||||
dockerd -s overlay2 -g /mnt/docker 2> /dev/null &
|
||||
dockerd -s overlay2 -g /mnt/data/docker &
|
||||
DOCKER_PID=$!
|
||||
|
||||
DOCKER_COUNT=0
|
||||
until docker info >/dev/null 2>&1; do
|
||||
DOCKER_COUNT=0
|
||||
if [ ${DOCKER_COUNT} -gt 30 ]; then
|
||||
exit 1
|
||||
fi
|
||||
@@ -77,14 +101,32 @@ docker pull "${CLI}:${CLI_VERSION}"
|
||||
docker tag "${CLI}:${CLI_VERSION}" "${CLI}:latest"
|
||||
|
||||
# Write config
|
||||
cat > /mnt/hassio.json <<- EOF
|
||||
cat > /mnt/data/hassos.json <<- EOF
|
||||
{
|
||||
"supervisor": "${SUPERVISOR}",
|
||||
"supervisor_args": "${SUPERVISOR_ARGS}",
|
||||
"supervisor_apparmor": "${SUPERVISOR_PROFILE}",
|
||||
"cli": "${CLI}",
|
||||
"cli_args": "${CLI_ARGS}"
|
||||
"cli_args": "${CLI_ARGS}",
|
||||
"cli_apparmor": "${CLI_PROFILE}",
|
||||
"apparmor": "${APPARMOR}"
|
||||
}
|
||||
EOF
|
||||
|
||||
# Setup AppArmor
|
||||
if [ ! -z "${APPARMOR}" ]; then
|
||||
mkdir -p /mnt/data/${APPARMOR}
|
||||
|
||||
# Supervisor
|
||||
if [ ! -z "${SUPERVISOR_PROFILE_URL}" ]; then
|
||||
curl -L -o /mnt/data/${APPARMOR}/${SUPERVISOR_PROFILE} ${SUPERVISOR_PROFILE_URL}
|
||||
fi
|
||||
|
||||
# CLI
|
||||
if [ ! -z "${CLI_PROFILE_URL}" ]; then
|
||||
curl -L -o /mnt/data/${APPARMOR}/${CLI_PROFILE} ${CLI_PROFILE_URL}
|
||||
fi
|
||||
fi
|
||||
|
||||
# Finish
|
||||
kill -TERM $DOCKER_PID && wait $DOCKER_PID && umount /mnt
|
||||
kill -TERM $DOCKER_PID && wait $DOCKER_PID && umount /mnt/data
|
34
buildroot-external/package/hassos/hassos.mk
Normal file
34
buildroot-external/package/hassos/hassos.mk
Normal file
@@ -0,0 +1,34 @@
|
||||
################################################################################
|
||||
#
|
||||
# HassOS
|
||||
#
|
||||
################################################################################
|
||||
|
||||
HASSOS_VERSION = 1.0.0
|
||||
HASSOS_LICENSE = Apache License 2.0
|
||||
HASSOS_LICENSE_FILES = $(BR2_EXTERNAL_HASSOS_PATH)/../LICENSE
|
||||
HASSOS_SITE = $(BR2_EXTERNAL_HASSOS_PATH)/package/hassos
|
||||
HASSOS_SITE_METHOD = local
|
||||
|
||||
define HASSOS_BUILD_CMDS
|
||||
docker build --tag hassos-hostapps $(@D)/builder
|
||||
endef
|
||||
|
||||
define HASSOS_INSTALL_TARGET_CMDS
|
||||
docker run --rm --privileged \
|
||||
-v $(BINARIES_DIR):/export \
|
||||
hassos-hostapps \
|
||||
--supervisor $(BR2_PACKAGE_HASSOS_SUPERVISOR) \
|
||||
--supervisor-version $(BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION) \
|
||||
--supervisor-args $(BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS) \
|
||||
--supervisor-profile $(BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE) \
|
||||
--supervisor-profile-url $(BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL) \
|
||||
--cli $(BR2_PACKAGE_HASSOS_CLI) \
|
||||
--cli-version $(BR2_PACKAGE_HASSOS_CLI_VERSION) \
|
||||
--cli-args $(BR2_PACKAGE_HASSOS_CLI_ARGS) \
|
||||
--cli-profile $(BR2_PACKAGE_HASSOS_CLI_PROFILE) \
|
||||
--cli-profile-url $(BR2_PACKAGE_HASSOS_CLI_PROFILE_URL) \
|
||||
--apparmor $(BR2_PACKAGE_HASSOS_APPARMOR_DIR)
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
8
buildroot-external/package/libapparmor/Config.in
Normal file
8
buildroot-external/package/libapparmor/Config.in
Normal file
@@ -0,0 +1,8 @@
|
||||
config BR2_PACKAGE_LIBAPPARMOR
|
||||
bool "libapparmor"
|
||||
help
|
||||
AppArmor gives you network application security via mandatory
|
||||
access control for programs, protecting against the exploitation
|
||||
of software flaws and compromised systems.
|
||||
|
||||
http://apparmor.net
|
18
buildroot-external/package/libapparmor/libapparmor.mk
Normal file
18
buildroot-external/package/libapparmor/libapparmor.mk
Normal file
@@ -0,0 +1,18 @@
|
||||
#############################################################
|
||||
#
|
||||
# libapparmor
|
||||
#
|
||||
#############################################################
|
||||
LIBAPPARMOR_VERSION = v2.13
|
||||
LIBAPPARMOR_SITE = git://git.launchpad.net/apparmor
|
||||
LIBAPPARMOR_LICENSE = GPL-2
|
||||
LIBAPPARMOR_LICENSE_FILES = LICENSE
|
||||
LIBAPPARMOR_INSTALL_STAGING = YES
|
||||
LIBAPPARMOR_INSTALL_TARGET = NO
|
||||
LIBAPPARMOR_DEPENDENCIES = host-flex
|
||||
LIBAPPARMOR_SUBDIR = libraries/libapparmor
|
||||
LIBAPPARMOR_CONF_ENV = ac_cv_func_reallocarray=no
|
||||
LIBAPPARMOR_AUTORECONF = YES
|
||||
LIBAPPARMOR_CONF_OPTS = --enable-static
|
||||
|
||||
$(eval $(autotools-package))
|
@@ -1,156 +0,0 @@
|
||||
diff -Nru mingetty-1.07.orig/mingetty.c mingetty-1.07/mingetty.c
|
||||
--- mingetty-1.07.orig/mingetty.c 2004-01-03 15:15:56.000000000 +0200
|
||||
+++ mingetty-1.07/mingetty.c 2006-11-22 22:13:26.967910100 +0200
|
||||
@@ -16,10 +16,15 @@
|
||||
* - autologin only at first login
|
||||
* - /etc/mingetty.conf that can be used instead of /etc/inittab for
|
||||
* command line options
|
||||
- * - Can UTF-8 setup be done within mingetty?
|
||||
+ * - Can UTF-8 setup be done within mingetty? Let's try now :-) (VinzC)
|
||||
* - Also add /bin/login-type functionality in here?
|
||||
*/
|
||||
|
||||
+/* Additional comments: Vincent Cadet <vcadet@hotmail.com> (2006-11-21)
|
||||
+ * - Attempt to make mingetty support UTF-8. Modifications were imported
|
||||
+ * from Suse migetty.c 0.9.6s.
|
||||
+ */
|
||||
+
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
@@ -39,6 +44,19 @@
|
||||
#include <syslog.h>
|
||||
#include <sys/utsname.h>
|
||||
#include <time.h>
|
||||
+#include <locale.h>
|
||||
+#include <iconv.h>
|
||||
+#include <wctype.h>
|
||||
+#include <sys/kd.h>
|
||||
+#include <sys/ttydefaults.h>
|
||||
+
|
||||
+#ifndef IUTF8
|
||||
+# ifndef ASM_IUTF8
|
||||
+# error ASM_IUTF8 input flag not defined - Cannot define IUTF8
|
||||
+# else
|
||||
+# define IUTF8 ASM_IUTF8
|
||||
+# endif
|
||||
+#endif
|
||||
|
||||
/* name of this program (argv[0]) */
|
||||
static char *progname;
|
||||
@@ -74,6 +92,8 @@
|
||||
static char *autologin = NULL;
|
||||
/* try to read a char before dropping to login prompt */
|
||||
static int loginpause = 0;
|
||||
+/* terminal mode */
|
||||
+static int mode = K_RAW;
|
||||
|
||||
/* error() - output error messages */
|
||||
static void error (const char *fmt, ...)
|
||||
@@ -187,10 +207,21 @@
|
||||
if (fd > 2)
|
||||
close (fd);
|
||||
|
||||
+ /* Detect mode of current keyboard setup, e.g. for UTF-8 */
|
||||
+ if (ioctl(0, KDGKBMODE, &mode) < 0)
|
||||
+ mode = K_RAW;
|
||||
+
|
||||
/* Write a reset string to the terminal. This is very linux-specific
|
||||
and should be checked for other systems. */
|
||||
if (noclear == 0)
|
||||
- write (0, "\033c", 2);
|
||||
+ /* don't write a full reset (ESC c) because this leaves the
|
||||
+ unicode mode again if the terminal was in unicode mode
|
||||
+ and also undos the ESC sequences in CONSOLE_MAGIC which
|
||||
+ are needed for some languages/console-fonts.
|
||||
+ Just put the cursor to the home position (ESC [ H),
|
||||
+ erase everything below the cursor (ESC [ J), and set the
|
||||
+ scrolling region to the full window (ESC [ r) */
|
||||
+ write (0, "\033[r\033[H\033[J", 9);
|
||||
|
||||
sigaction (SIGHUP, &sa_old, NULL);
|
||||
}
|
||||
@@ -292,32 +323,75 @@
|
||||
|
||||
static char *get_logname (void)
|
||||
{
|
||||
- static char logname[40];
|
||||
+ static char logname[4*UT_NAMESIZE];
|
||||
char *bp;
|
||||
unsigned char c;
|
||||
+ int ascii;
|
||||
+ iconv_t ic;
|
||||
|
||||
tcflush (0, TCIFLUSH); /* flush pending input */
|
||||
+
|
||||
+ /* Check for UTF-8 mode */
|
||||
+ switch(mode) {
|
||||
+ case K_UNICODE:
|
||||
+ ascii = 0;
|
||||
+ setlocale(LC_CTYPE, "en_US.UTF-8");
|
||||
+ break;
|
||||
+ case K_RAW:
|
||||
+ case K_MEDIUMRAW:
|
||||
+ case K_XLATE:
|
||||
+ default:
|
||||
+ ascii = 1;
|
||||
+ setlocale(LC_CTYPE, "POSIX");
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
for (*logname = 0; *logname == 0;) {
|
||||
do_prompt (1);
|
||||
for (bp = logname;;) {
|
||||
if (read (0, &c, 1) < 1) {
|
||||
- if (errno == EINTR || errno == EIO
|
||||
- || errno == ENOENT)
|
||||
+ if (errno == EINTR || errno == EAGAIN) {
|
||||
+ usleep(1000);
|
||||
+ continue;
|
||||
+ }
|
||||
+ if (errno == EIO || errno == ENOENT)
|
||||
exit (EXIT_SUCCESS);
|
||||
error ("%s: read: %s", tty, strerror (errno));
|
||||
}
|
||||
if (c == '\n' || c == '\r') {
|
||||
*bp = 0;
|
||||
break;
|
||||
- } else if (!isprint (c))
|
||||
- error ("%s: invalid character 0x%x in login"
|
||||
- " name", tty, c);
|
||||
+ }
|
||||
+
|
||||
+ if (ascii && !isprint (c))
|
||||
+ error ("%s: invalid character 0x%x in login name", tty, c);
|
||||
else if ((size_t)(bp - logname) >= sizeof (logname) - 1)
|
||||
error ("%s: too long login name", tty);
|
||||
- else
|
||||
- *bp++ = c;
|
||||
+
|
||||
+ *bp++ = c;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ if (!ascii && (ic = iconv_open("WCHAR_T", "UTF-8"))) {
|
||||
+ char tmpbuf[4*sizeof(logname)], *op, *lp;
|
||||
+ size_t len = bp - logname;
|
||||
+ size_t out = sizeof(tmpbuf) - 1;
|
||||
+ size_t wcl;
|
||||
+ wint_t *wcp;
|
||||
+
|
||||
+ op = tmpbuf;
|
||||
+ lp = logname;
|
||||
+ if ((wcl = iconv(ic , &lp, &len, &op, &out)) == (size_t)-1)
|
||||
+ error ("%s: invalid character conversion for login name", tty);
|
||||
+ iconv_close(ic);
|
||||
+
|
||||
+ wcp = (wint_t*)tmpbuf;
|
||||
+ wcp[wcl] = (wint_t)0;
|
||||
+ while (*wcp) {
|
||||
+ if (!iswprint(*wcp++))
|
||||
+ error ("%s: invalid character for login name found", tty);
|
||||
+ }
|
||||
+ }
|
||||
return logname;
|
||||
}
|
||||
|
@@ -1,7 +0,0 @@
|
||||
config BR2_PACKAGE_MINGETTY
|
||||
bool "mingetty"
|
||||
help
|
||||
mingetty is a minimal getty for use on virtual consoles and is not
|
||||
suitable for use on serial lines.
|
||||
|
||||
http://sourceforge.net/projects/mingetty/
|
@@ -1 +0,0 @@
|
||||
sha1 283acd3dc9da2c9eb71d5d7cc01d1bd178254523 mingetty-1.08.tar.gz
|
@@ -1,22 +0,0 @@
|
||||
#############################################################
|
||||
#
|
||||
# mingetty
|
||||
#
|
||||
#############################################################
|
||||
MINGETTY_VERSION = 1.08
|
||||
MINGETTY_SOURCE = mingetty-$(MINGETTY_VERSION).tar.gz
|
||||
MINGETTY_SITE = http://downloads.sourceforge.net/project/mingetty/mingetty/$(MINGETTY_VERSION)
|
||||
|
||||
define MINGETTY_BUILD_CMDS
|
||||
$(MAKE) CC=$(TARGET_CC) -C $(@D)
|
||||
endef
|
||||
|
||||
define MINGETTY_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 $(@D)/mingetty $(TARGET_DIR)/sbin
|
||||
endef
|
||||
|
||||
define MINGETTY_CLEAN_CMDS
|
||||
$(MAKE) -C $(@D) clean
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
@@ -0,0 +1,41 @@
|
||||
From 525b60af3320de3cc1f1145fe31a2de07b61faf6 Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Sat, 28 Apr 2018 00:20:08 +0200
|
||||
Subject: [PATCH 1/1] Allow hostname on ro
|
||||
|
||||
---
|
||||
src/hostname/hostnamed.c | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c
|
||||
index d9ad2fb..87fae35 100644
|
||||
--- a/src/hostname/hostnamed.c
|
||||
+++ b/src/hostname/hostnamed.c
|
||||
@@ -289,6 +289,7 @@ static int context_update_kernel_hostname(Context *c) {
|
||||
static int context_write_data_static_hostname(Context *c) {
|
||||
|
||||
assert(c);
|
||||
+ FILE *f = NULL;
|
||||
|
||||
if (isempty(c->data[PROP_STATIC_HOSTNAME])) {
|
||||
|
||||
@@ -297,7 +298,15 @@ static int context_write_data_static_hostname(Context *c) {
|
||||
|
||||
return 0;
|
||||
}
|
||||
- return write_string_file_atomic_label("/etc/hostname", c->data[PROP_STATIC_HOSTNAME]);
|
||||
+
|
||||
+ f = fopen("/etc/hostname", "w");
|
||||
+ if (f == NULL)
|
||||
+ return -ENOENT;
|
||||
+
|
||||
+ fputs(c->data[PROP_STATIC_HOSTNAME], f);
|
||||
+ fclose(f);
|
||||
+
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static int context_write_data_machine_info(Context *c) {
|
||||
--
|
||||
2.7.4
|
||||
|
@@ -0,0 +1,28 @@
|
||||
From 1529062f72cee8061b4733e1148357d227639900 Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Mon, 11 Jun 2018 11:09:10 +0000
|
||||
Subject: [PATCH 1/1] Support HassOS bootstate partition
|
||||
|
||||
Signed-off-by: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
---
|
||||
env/mmc.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/env/mmc.c b/env/mmc.c
|
||||
index 5e3da6dca7..75c06899d1 100644
|
||||
--- a/env/mmc.c
|
||||
+++ b/env/mmc.c
|
||||
@@ -18,6 +18,10 @@
|
||||
#include <search.h>
|
||||
#include <errno.h>
|
||||
|
||||
+#define CONFIG_SYS_MMC_ENV_DEV 0
|
||||
+#define CONFIG_ENV_OFFSET 0x25100000
|
||||
+#define CONFIG_ENV_SIZE 0x400000
|
||||
+
|
||||
#define __STR(X) #X
|
||||
#define STR(X) __STR(X)
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
@@ -0,0 +1,409 @@
|
||||
From patchwork Wed May 23 20:24:51 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot] mmc: Unirqify bcm2835_sdhost and fix writes
|
||||
X-Patchwork-Submitter: Alexander Graf <agraf@suse.de>
|
||||
X-Patchwork-Id: 919394
|
||||
X-Patchwork-Delegate: agraf@suse.de
|
||||
Message-Id: <20180523202451.68781-1-agraf@suse.de>
|
||||
To: u-boot@lists.denx.de
|
||||
Date: Wed, 23 May 2018 22:24:51 +0200
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
The bcm2835 sdhost driver has a problem with "write multiple" commands.
|
||||
It seems to boil down to the fact that the controller dislikes its FIFO
|
||||
to get drained at the end of a block when a write multiple blocks command
|
||||
is in flight.
|
||||
|
||||
The easy fix is to simply get rid of all the IRQ driven logic and make
|
||||
the driver push as much data into the FIFO as it can. That way we never
|
||||
drain and we never run into the problem.
|
||||
|
||||
Reported-by: Jan Leonhardt <jan@cyberdesigner.net>
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
---
|
||||
drivers/mmc/bcm2835_sdhost.c | 265 ++++++++-----------------------------------
|
||||
1 file changed, 47 insertions(+), 218 deletions(-)
|
||||
|
||||
diff --git a/drivers/mmc/bcm2835_sdhost.c b/drivers/mmc/bcm2835_sdhost.c
|
||||
index 96428333b0..1ce019af57 100644
|
||||
--- a/drivers/mmc/bcm2835_sdhost.c
|
||||
+++ b/drivers/mmc/bcm2835_sdhost.c
|
||||
@@ -163,7 +163,6 @@ struct bcm2835_host {
|
||||
int clock; /* Current clock speed */
|
||||
unsigned int max_clk; /* Max possible freq */
|
||||
unsigned int blocks; /* remaining PIO blocks */
|
||||
- int irq; /* Device IRQ */
|
||||
|
||||
u32 ns_per_fifo_word;
|
||||
|
||||
@@ -173,14 +172,7 @@ struct bcm2835_host {
|
||||
|
||||
struct mmc_cmd *cmd; /* Current command */
|
||||
struct mmc_data *data; /* Current data request */
|
||||
- bool data_complete:1;/* Data finished before cmd */
|
||||
bool use_busy:1; /* Wait for busy interrupt */
|
||||
- bool wait_data_complete:1; /* Wait for data */
|
||||
-
|
||||
- /* for threaded irq handler */
|
||||
- bool irq_block;
|
||||
- bool irq_busy;
|
||||
- bool irq_data;
|
||||
|
||||
struct udevice *dev;
|
||||
struct mmc *mmc;
|
||||
@@ -240,17 +232,9 @@ static void bcm2835_reset_internal(struct bcm2835_host *host)
|
||||
writel(host->cdiv, host->ioaddr + SDCDIV);
|
||||
}
|
||||
|
||||
-static int bcm2835_finish_command(struct bcm2835_host *host);
|
||||
-
|
||||
-static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
+static int bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
{
|
||||
- int timediff;
|
||||
- u32 alternate_idle;
|
||||
-
|
||||
- alternate_idle = (host->data->flags & MMC_DATA_READ) ?
|
||||
- SDEDM_FSM_READWAIT : SDEDM_FSM_WRITESTART1;
|
||||
-
|
||||
- timediff = 0;
|
||||
+ int timediff = 0;
|
||||
|
||||
while (1) {
|
||||
u32 edm, fsm;
|
||||
@@ -261,7 +245,10 @@ static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
if ((fsm == SDEDM_FSM_IDENTMODE) ||
|
||||
(fsm == SDEDM_FSM_DATAMODE))
|
||||
break;
|
||||
- if (fsm == alternate_idle) {
|
||||
+
|
||||
+ if ((fsm == SDEDM_FSM_READWAIT) ||
|
||||
+ (fsm == SDEDM_FSM_WRITESTART1) ||
|
||||
+ (fsm == SDEDM_FSM_READDATA)) {
|
||||
writel(edm | SDEDM_FORCE_DATA_MODE,
|
||||
host->ioaddr + SDEDM);
|
||||
break;
|
||||
@@ -273,9 +260,11 @@ static void bcm2835_wait_transfer_complete(struct bcm2835_host *host)
|
||||
"wait_transfer_complete - still waiting after %d retries\n",
|
||||
timediff);
|
||||
bcm2835_dumpregs(host);
|
||||
- return;
|
||||
+ return -ETIMEDOUT;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static int bcm2835_transfer_block_pio(struct bcm2835_host *host, bool is_read)
|
||||
@@ -322,6 +311,9 @@ static int bcm2835_transfer_block_pio(struct bcm2835_host *host, bool is_read)
|
||||
fsm_state != SDEDM_FSM_READCRC)) ||
|
||||
(!is_read &&
|
||||
(fsm_state != SDEDM_FSM_WRITEDATA &&
|
||||
+ fsm_state != SDEDM_FSM_WRITEWAIT1 &&
|
||||
+ fsm_state != SDEDM_FSM_WRITEWAIT2 &&
|
||||
+ fsm_state != SDEDM_FSM_WRITECRC &&
|
||||
fsm_state != SDEDM_FSM_WRITESTART1 &&
|
||||
fsm_state != SDEDM_FSM_WRITESTART2))) {
|
||||
hsts = readl(host->ioaddr + SDHSTS);
|
||||
@@ -358,9 +350,8 @@ static int bcm2835_transfer_pio(struct bcm2835_host *host)
|
||||
|
||||
is_read = (host->data->flags & MMC_DATA_READ) != 0;
|
||||
ret = bcm2835_transfer_block_pio(host, is_read);
|
||||
-
|
||||
- if (host->wait_data_complete)
|
||||
- bcm2835_wait_transfer_complete(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
|
||||
sdhsts = readl(host->ioaddr + SDHSTS);
|
||||
if (sdhsts & (SDHSTS_CRC16_ERROR |
|
||||
@@ -379,21 +370,8 @@ static int bcm2835_transfer_pio(struct bcm2835_host *host)
|
||||
return ret;
|
||||
}
|
||||
|
||||
-static void bcm2835_set_transfer_irqs(struct bcm2835_host *host)
|
||||
-{
|
||||
- u32 all_irqs = SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN |
|
||||
- SDHCFG_BUSY_IRPT_EN;
|
||||
-
|
||||
- host->hcfg = (host->hcfg & ~all_irqs) |
|
||||
- SDHCFG_DATA_IRPT_EN |
|
||||
- SDHCFG_BUSY_IRPT_EN;
|
||||
-
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-}
|
||||
-
|
||||
-static
|
||||
-void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
- struct mmc_data *data)
|
||||
+static void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
+ struct mmc_data *data)
|
||||
{
|
||||
WARN_ON(host->data);
|
||||
|
||||
@@ -401,14 +379,9 @@ void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
if (!data)
|
||||
return;
|
||||
|
||||
- host->wait_data_complete = cmd->cmdidx != MMC_CMD_READ_MULTIPLE_BLOCK;
|
||||
- host->data_complete = false;
|
||||
-
|
||||
/* Use PIO */
|
||||
host->blocks = data->blocks;
|
||||
|
||||
- bcm2835_set_transfer_irqs(host);
|
||||
-
|
||||
writel(data->blocksize, host->ioaddr + SDHBCT);
|
||||
writel(data->blocks, host->ioaddr + SDHBLC);
|
||||
}
|
||||
@@ -483,36 +456,6 @@ static int bcm2835_send_command(struct bcm2835_host *host, struct mmc_cmd *cmd,
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int bcm2835_transfer_complete(struct bcm2835_host *host)
|
||||
-{
|
||||
- int ret = 0;
|
||||
-
|
||||
- WARN_ON(!host->data_complete);
|
||||
-
|
||||
- host->data = NULL;
|
||||
-
|
||||
- return ret;
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_finish_data(struct bcm2835_host *host)
|
||||
-{
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN);
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-
|
||||
- host->data_complete = true;
|
||||
-
|
||||
- if (host->cmd) {
|
||||
- /* Data managed to finish before the
|
||||
- * command completed. Make sure we do
|
||||
- * things in the proper order.
|
||||
- */
|
||||
- dev_dbg(dev, "Finished early - HSTS %08x\n",
|
||||
- readl(host->ioaddr + SDHSTS));
|
||||
- } else {
|
||||
- bcm2835_transfer_complete(host);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
static int bcm2835_finish_command(struct bcm2835_host *host)
|
||||
{
|
||||
struct mmc_cmd *cmd = host->cmd;
|
||||
@@ -562,8 +505,6 @@ static int bcm2835_finish_command(struct bcm2835_host *host)
|
||||
|
||||
/* Processed actual command. */
|
||||
host->cmd = NULL;
|
||||
- if (host->data && host->data_complete)
|
||||
- ret = bcm2835_transfer_complete(host);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -608,159 +549,44 @@ static int bcm2835_check_data_error(struct bcm2835_host *host, u32 intmask)
|
||||
return ret;
|
||||
}
|
||||
|
||||
-static void bcm2835_busy_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (WARN_ON(!host->cmd)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- if (WARN_ON(!host->use_busy)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
- host->use_busy = false;
|
||||
-
|
||||
- bcm2835_finish_command(host);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_data_irq(struct bcm2835_host *host, u32 intmask)
|
||||
+static int bcm2835_transmit(struct bcm2835_host *host)
|
||||
{
|
||||
+ u32 intmask = readl(host->ioaddr + SDHSTS);
|
||||
int ret;
|
||||
|
||||
- /*
|
||||
- * There are no dedicated data/space available interrupt
|
||||
- * status bits, so it is necessary to use the single shared
|
||||
- * data/space available FIFO status bits. It is therefore not
|
||||
- * an error to get here when there is no data transfer in
|
||||
- * progress.
|
||||
- */
|
||||
- if (!host->data)
|
||||
- return;
|
||||
-
|
||||
+ /* Check for errors */
|
||||
ret = bcm2835_check_data_error(host, intmask);
|
||||
if (ret)
|
||||
- goto finished;
|
||||
-
|
||||
- if (host->data->flags & MMC_DATA_WRITE) {
|
||||
- /* Use the block interrupt for writes after the first block */
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN);
|
||||
- host->hcfg |= SDHCFG_BLOCK_IRPT_EN;
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
- bcm2835_transfer_pio(host);
|
||||
- } else {
|
||||
- bcm2835_transfer_pio(host);
|
||||
- host->blocks--;
|
||||
- if ((host->blocks == 0))
|
||||
- goto finished;
|
||||
- }
|
||||
- return;
|
||||
+ return ret;
|
||||
|
||||
-finished:
|
||||
- host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN);
|
||||
- writel(host->hcfg, host->ioaddr + SDHCFG);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_data_threaded_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (!host->data)
|
||||
- return;
|
||||
- if ((host->blocks == 0))
|
||||
- bcm2835_finish_data(host);
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_block_irq(struct bcm2835_host *host)
|
||||
-{
|
||||
- if (WARN_ON(!host->data)) {
|
||||
- bcm2835_dumpregs(host);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- WARN_ON(!host->blocks);
|
||||
- if ((--host->blocks == 0))
|
||||
- bcm2835_finish_data(host);
|
||||
- else
|
||||
- bcm2835_transfer_pio(host);
|
||||
-}
|
||||
+ ret = bcm2835_check_cmd_error(host, intmask);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
|
||||
-static irqreturn_t bcm2835_irq(int irq, void *dev_id)
|
||||
-{
|
||||
- irqreturn_t result = IRQ_NONE;
|
||||
- struct bcm2835_host *host = dev_id;
|
||||
- u32 intmask;
|
||||
-
|
||||
- intmask = readl(host->ioaddr + SDHSTS);
|
||||
-
|
||||
- writel(SDHSTS_BUSY_IRPT |
|
||||
- SDHSTS_BLOCK_IRPT |
|
||||
- SDHSTS_SDIO_IRPT |
|
||||
- SDHSTS_DATA_FLAG,
|
||||
- host->ioaddr + SDHSTS);
|
||||
-
|
||||
- if (intmask & SDHSTS_BLOCK_IRPT) {
|
||||
- bcm2835_check_data_error(host, intmask);
|
||||
- host->irq_block = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
+ /* Handle wait for busy end */
|
||||
+ if (host->use_busy && (intmask & SDHSTS_BUSY_IRPT)) {
|
||||
+ writel(SDHSTS_BUSY_IRPT, host->ioaddr + SDHSTS);
|
||||
+ host->use_busy = false;
|
||||
+ bcm2835_finish_command(host);
|
||||
}
|
||||
|
||||
- if (intmask & SDHSTS_BUSY_IRPT) {
|
||||
- if (!bcm2835_check_cmd_error(host, intmask)) {
|
||||
- host->irq_busy = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
- } else {
|
||||
- result = IRQ_HANDLED;
|
||||
+ /* Handle PIO data transfer */
|
||||
+ if (host->data) {
|
||||
+ ret = bcm2835_transfer_pio(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+ host->blocks--;
|
||||
+ if (host->blocks == 0) {
|
||||
+ /* Wait for command to complete for real */
|
||||
+ ret = bcm2835_wait_transfer_complete(host);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+ /* Transfer complete */
|
||||
+ host->data = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
- /* There is no true data interrupt status bit, so it is
|
||||
- * necessary to qualify the data flag with the interrupt
|
||||
- * enable bit.
|
||||
- */
|
||||
- if ((intmask & SDHSTS_DATA_FLAG) &&
|
||||
- (host->hcfg & SDHCFG_DATA_IRPT_EN)) {
|
||||
- bcm2835_data_irq(host, intmask);
|
||||
- host->irq_data = true;
|
||||
- result = IRQ_WAKE_THREAD;
|
||||
- }
|
||||
-
|
||||
- return result;
|
||||
-}
|
||||
-
|
||||
-static irqreturn_t bcm2835_threaded_irq(int irq, void *dev_id)
|
||||
-{
|
||||
- struct bcm2835_host *host = dev_id;
|
||||
-
|
||||
- if (host->irq_block) {
|
||||
- host->irq_block = false;
|
||||
- bcm2835_block_irq(host);
|
||||
- }
|
||||
-
|
||||
- if (host->irq_busy) {
|
||||
- host->irq_busy = false;
|
||||
- bcm2835_busy_irq(host);
|
||||
- }
|
||||
-
|
||||
- if (host->irq_data) {
|
||||
- host->irq_data = false;
|
||||
- bcm2835_data_threaded_irq(host);
|
||||
- }
|
||||
-
|
||||
- return IRQ_HANDLED;
|
||||
-}
|
||||
-
|
||||
-static void bcm2835_irq_poll(struct bcm2835_host *host)
|
||||
-{
|
||||
- u32 intmask;
|
||||
-
|
||||
- while (1) {
|
||||
- intmask = readl(host->ioaddr + SDHSTS);
|
||||
- if (intmask & (SDHSTS_BUSY_IRPT | SDHSTS_BLOCK_IRPT |
|
||||
- SDHSTS_SDIO_IRPT | SDHSTS_DATA_FLAG)) {
|
||||
- bcm2835_irq(0, host);
|
||||
- bcm2835_threaded_irq(0, host);
|
||||
- return;
|
||||
- }
|
||||
- }
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock)
|
||||
@@ -864,8 +690,11 @@ static int bcm2835_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
|
||||
}
|
||||
|
||||
/* Wait for completion of busy signal or data transfer */
|
||||
- while (host->use_busy || host->data)
|
||||
- bcm2835_irq_poll(host);
|
||||
+ while (host->use_busy || host->data) {
|
||||
+ ret = bcm2835_transmit(host);
|
||||
+ if (ret)
|
||||
+ break;
|
||||
+ }
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@@ -1,32 +0,0 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFlTCCA32gAwIBAgIJAI6l4ha3dDFUMA0GCSqGSIb3DQEBCwUAMGExCzAJBgNV
|
||||
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMRcwFQYDVQQKDA5Ib21lLUFzc2lz
|
||||
dGFudDESMBAGA1UECwwJSGFzc0lPLU9TMRAwDgYDVQQDDAdoYXNzLmlvMB4XDTE4
|
||||
MDMxOTIyMDUxMVoXDTE4MDQxODIyMDUxMVowYTELMAkGA1UEBhMCQVUxEzARBgNV
|
||||
BAgMClNvbWUtU3RhdGUxFzAVBgNVBAoMDkhvbWUtQXNzaXN0YW50MRIwEAYDVQQL
|
||||
DAlIYXNzSU8tT1MxEDAOBgNVBAMMB2hhc3MuaW8wggIiMA0GCSqGSIb3DQEBAQUA
|
||||
A4ICDwAwggIKAoICAQDimsS43XuZnjiGn1liLeVzTHPzeJP3cqUpHfjfh5UWZ57Y
|
||||
oQqMTmsC9t/5cbjiGj7RoSdv8P9KJzYoaPNOST+nflR5k0RM3EK2t/5nlUNTFKQi
|
||||
83xyECWeeOLypQRrT4oHFeURBkIExQwjEGMs1a3hZcS2cVjAe8qUjDNmQR+3AYB9
|
||||
aCt26cRgYGowJAgZwv2GGQTMLHxI+LQV7odSKhxY8L+GheeoyNHVyzBhrPBtA0B1
|
||||
/EPtfFLBgarBFUQAzlF0aNGbrnlev1iohYhny7LPh+PUkshmouIIHp7Z7nL5Gg6f
|
||||
yONu4fFeeyL7CHRxrk+hA9v+x+UFdOd25kTjcMQgo/q4tfjZ+4NqqZpYGSHSIMOd
|
||||
AJpuWRcbPT1UaTLvPxgBNIGBL3WkyLj9QunIZSMYuqmKh+Oga5cBLKcgzCjIjDbI
|
||||
q8+4uPyZboGk6BIOzso+bRnRHe9U8XE3OxkOKyKA8+bpVlM8UoPvXbByJIq6z0dQ
|
||||
CBgjIpMzY0SmC4Pn0GnjnDnK6ME03PYbM2/xlZHk6TpD03SWWgW7aM4jGUDNeL9R
|
||||
YVFIEqnx5o1Mt0116SPu1E6pbpmqVgfNrRRxvxReBAWvY4Ogh4JAWDVxUAdXJz41
|
||||
GbUkJrgJJbaTapAnFzjlP3ZVq9nWWlZU1WUyXEnV+d10A9ChFzw8YLBiWtD50QID
|
||||
AQABo1AwTjAdBgNVHQ4EFgQUwRzVpE3ZkFlfr/S6nKhGegO+XAwwHwYDVR0jBBgw
|
||||
FoAUwRzVpE3ZkFlfr/S6nKhGegO+XAwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B
|
||||
AQsFAAOCAgEAVkAVey2nFYRaXYwqccFyo0er20vSzYgyPImYkj05zcZPkdYaTQqF
|
||||
AS5KV3tKGlrToOWNIYx3/M8hkZxQZhps1+Jh//gYwJCPM/zaKognYKHVjF9ZoZk3
|
||||
RJf1eA4brcjXkkKmHfRKgY3XGBfIoZbsVIzNMEH9rANIkiqoBzWz/7QKdKIRxqYO
|
||||
HVyNXVv7mzWnhxBqDFQ/ahRfXbiYHcdc7n1mc4S2qD0up/20feAp+uoVAXid2/aV
|
||||
L6jCJMpIlusGZI6wtxf2YaZsh5pNat6uzaZsWTY6j+Ly7VVfRtY70PqQjlANVDnZ
|
||||
IjA2c0qwh7ccl1MAYAO5umW8zxsgY3ZBnz5RsHJpVoEZrZOkpgvp9EsAutqUhkhM
|
||||
/760yqcn7NjtH7Yqp/uh7DockXMDELEd1aiErXcPisVJ18zVlVdD1VXexQOGJF8k
|
||||
E4GynpsH+pos8nvHMWCOLLEQ6i/itRqHKYiA36WMDKxpNcXXviWIT4Mmb8usBns8
|
||||
cdYUxebkvk2ISXuyRfD8Ch5+JnkbXvev/Gm1grA+DYrX2leyd7FvoLl8pLVgQO2q
|
||||
omds3iwcKoMnvRKf8xHhoeFoBlCGCiCUhUEutT30xjruiVVdT6mdMz1zLAkQ8QeZ
|
||||
b2gbVi7SXorVEGjpMkkGXI4LLX3R29yzTJb93wdWvf+MpqDiS9UBeCc=
|
||||
-----END CERTIFICATE-----
|
37
buildroot-external/rootfs-overlay/etc/rauc/system.conf
Normal file
37
buildroot-external/rootfs-overlay/etc/rauc/system.conf
Normal file
@@ -0,0 +1,37 @@
|
||||
[system]
|
||||
compatible=%COMPATIBLE%
|
||||
mountprefix=/run/rauc
|
||||
statusfile=/mnt/data/rauc.db
|
||||
bootloader=%BOOTLOADER%
|
||||
|
||||
[handlers]
|
||||
pre-install=/usr/lib/rauc/pre-install
|
||||
post-install=/usr/lib/rauc/post-install
|
||||
|
||||
[keyring]
|
||||
path=/etc/rauc/keyring.pem
|
||||
|
||||
[slot.boot.0]
|
||||
device=/dev/disk/by-partlabel/hassos-boot
|
||||
type=vfat
|
||||
|
||||
[slot.kernel.0]
|
||||
device=/dev/disk/by-partlabel/hassos-kernel0
|
||||
type=ext4
|
||||
bootname=A
|
||||
|
||||
[slot.kernel.1]
|
||||
device=/dev/disk/by-partlabel/hassos-kernel1
|
||||
type=ext4
|
||||
bootname=B
|
||||
|
||||
[slot.rootfs.0]
|
||||
device=/dev/disk/by-partlabel/hassos-system0
|
||||
type=raw
|
||||
parent=kernel.0
|
||||
|
||||
[slot.rootfs.1]
|
||||
device=/dev/disk/by-partlabel/hassos-system1
|
||||
type=raw
|
||||
parent=kernel.1
|
||||
|
@@ -1,6 +1,5 @@
|
||||
[Journal]
|
||||
Storage=auto
|
||||
Compress=yes
|
||||
SystemMaxUse=8M
|
||||
RuntimeMaxUse=8M
|
||||
|
||||
SystemMaxUse=12M
|
||||
RuntimeMaxUse=10M
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user