-
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
quintenvandamme
committed
Jan 30, 2024
0 parents
commit 50a0ef4
Showing
10 changed files
with
5,346 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
--- | ||
name: Bug report | ||
about: Create a report to help us improve the buildroot | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Describe the bug** | ||
A clear and concise description of what the bug is. | ||
|
||
**What kind of a bug is it?** | ||
Describe what kind of a bug it is. | ||
|
||
**To Reproduce** | ||
Steps to reproduce the behavior: | ||
1. Go to '...' | ||
2. Click on '....' | ||
3. Scroll down to '....' | ||
4. See error | ||
|
||
**Expected behavior** | ||
A clear and concise description of what you expected to happen. | ||
|
||
**Screenshots** | ||
If applicable, add screenshots to help explain your problem. | ||
|
||
**Desktop (please complete the following information):** | ||
- OS: [e.g. dahliaOS Linux, dahliaOS Zircon] | ||
- Device: [e.g. MacbookPro9,1, QEMU] | ||
|
||
|
||
**Additional context** | ||
Add any other context about the problem here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
blank_issues_enabled: false | ||
contact_links: | ||
- name: Help | ||
url: https://dahliaos.io/discord | ||
about: 'If you have a question or need help, join our Discord!' | ||
- name: Documentation issue | ||
url: https://github.com/dahliaos/documentation | ||
about: 'For documentation issues, suggest changes on our documentation repository.' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for buildroot | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Is your feature request related to a problem? Please describe.** | ||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] | ||
|
||
**Describe the solution you'd like** | ||
A clear and concise description of what you want to happen. | ||
|
||
**Describe alternatives you've considered** | ||
A clear and concise description of any alternative solutions or features you've considered. | ||
|
||
**Do you have an idea of how we would add it?** | ||
If you know how we would approach adding this feature, tell us how. | ||
|
||
**Why should we add it?** | ||
Explain to use how our project can benefit of your feature request. | ||
|
||
**Additional context** | ||
Add any other context or screenshots about the feature request here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
<p align="center"> | ||
<a href="https://dahliaos.io">Website</a> • | ||
<a href="https://dahliaos.io/discord">Discord</a> • | ||
<a href="https://dahliaos.io/download">Releases</a> • | ||
<a href="https://dahliaos.io/donate">Donate</a> • | ||
<a href="https://docs.dahliaos.io">Documentation</a> | ||
|
||
# OS | ||
|
||
This is the build system for dahliaOS. It is based on [Buildroot](https://buildroot.org/) and ran in a Docker container. | ||
|
||
This project is a fork from [AdvancedClimateSystems/docker-buildroot](https://github.com/AdvancedClimateSystems/docker-buildroot). | ||
- Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. | ||
- This tool compiles dahliaOS Linux-based builds. | ||
|
||
|
||
## Install Docker | ||
|
||
- We use Docker so that we don't have to install all sorts of packages, everything is already included in this Docker image. | ||
|
||
- You can find Docker installation instructions [here](https://docs.docker.com/get-docker/). | ||
|
||
## Usage | ||
|
||
1. Build dahliaOS WIP | ||
|
||
``` shell | ||
make build | ||
``` | ||
|
||
## Requirements | ||
|
||
It is recommended to have at miniumum an Ethernet connection (directly to thr router), a dual-core x86 CPU and at least 4GB of RAM when compiling. | ||
|
||
We personally recommend a 4C/8T or better CPU with 16GB of RAM for optimal speeds. | ||
|
||
You will also need a decent amount of hard drive space, we recommend around 50GB if you clear out the build directory often. | ||
|
||
It takes around 6 hours to build a full image from scratch on a Dell Optiplex 790 with a 3GHZ i5-2400 and 16GB of RAM. | ||
|
||
We are sure a Threadripper or a newer Xeon CPU could easily handle compiling. | ||
|
||
## Warning: | ||
|
||
- If you are using a laptop, make sure that you are aware of its temperature, some laptops easily heat up to 93-100c when compiling. | ||
|
||
## To do | ||
|
||
- [ ] Add flatpak | ||
|
||
- [ ] Add the Surface touchscreen patches to the kernel via Buildroot: https://github.com/linux-surface/linux-surface | ||
|
||
- [x] Add Nvidia support | ||
|
||
- [x] Add AMD support | ||
|
||
## Contribute | ||
|
||
If you're wondering how to contribute to the project, please refer to [CONTRIBUTING.md](../CONTRIBUTING.md) | ||
|
||
## License | ||
|
||
<p align="left"> | ||
<img width="30%" src="https://github.com/dahliaOS/brand/blob/main/dahliaOS/logotype/svg/logotype-dark.svg#gh-dark-mode-only"/> | ||
<img width="30%" src="https://github.com/dahliaOS/brand/blob/main/dahliaOS/logotype/svg/logotype-light.svg#gh-light-mode-only"/> | ||
</p> | ||
|
||
Copyright @ 2019-2024 - The dahliaOS Authors - [email protected] | ||
|
||
Copyright @ 2017 - Auke Willem Oosterhoff and [Advanced Climate Systems](https://acs-buildings.com/). | ||
|
||
This project is licensed under the [Mozilla Public License](/LICENSE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# Pull request template | ||
|
||
* Please make sure you read and fill this template out entirely | ||
* PRs that don't have the template filled out will be ignored | ||
|
||
## Description | ||
|
||
- Please include a summary of the change and which issue is fixed | ||
- Please also include relevant motivation and context (Why is this change required? What problem does it solve?) | ||
- List any dependencies that are required for this change | ||
- If it fixes an open issue, plase link to the issue here | ||
|
||
Fixes #(issue) | ||
|
||
## Screenshots (if appropriate): | ||
|
||
## Type of change | ||
|
||
Please tick the relevant option by putting an X inside the bracket | ||
|
||
- [ ] Bug fix (non-breaking change which fixes an issue) | ||
- [ ] New feature (non-breaking change which adds functionality) | ||
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) | ||
- [ ] This change requires a documentation update | ||
|
||
## Checklist: | ||
|
||
- [ ] My code follows the guidelines of this project | ||
- [ ] I have performed a self-review of my own code | ||
- [ ] I have commented my code, particularly in hard-to-understand areas | ||
- [ ] I have made corresponding changes to the documentation | ||
- [ ] My changes generate no new warnings | ||
- [ ] All current GitHub actions pass | ||
- [ ] Any dependent changes have been merged and published in downstream modules | ||
- [ ] I have checked my code and corrected any misspellings | ||
- [ ] I have read the [CONTRIBUTING](../CONTRIBUTING.md) document |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
name: Build and deploy linux buildroot docker image | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
pull_request: | ||
branches: [ "main" ] | ||
schedule: | ||
- cron: "0 1 * * 1" | ||
workflow_dispatch: | ||
|
||
jobs: | ||
Build_and_publish_dahliaOS_buildroot_docker_image: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: 'Checkout GitHub Action' | ||
uses: actions/checkout@main | ||
|
||
- name: 'Login to GitHub Container Registry' | ||
uses: docker/[email protected] | ||
with: | ||
registry: ghcr.io | ||
username: ${{github.actor}} | ||
password: ${{secrets.GITHUB_TOKEN}} | ||
|
||
- name: 'Build Docker Image' | ||
run: | | ||
docker build . --tag ghcr.io/dahliaos/linux:latest | ||
docker run ghcr.io/dahliaos/linux:latest | ||
docker push ghcr.io/dahliaos/linux:latest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
FROM ubuntu:latest | ||
|
||
RUN apt-get update && \ | ||
apt-get upgrade -y && \ | ||
apt-get install -y \ | ||
build-essential \ | ||
bash \ | ||
bc \ | ||
binutils \ | ||
bzip2 \ | ||
cpio \ | ||
g++ \ | ||
gcc \ | ||
git \ | ||
gzip \ | ||
locales \ | ||
libncurses5-dev \ | ||
libdevmapper-dev \ | ||
libsystemd-dev \ | ||
make \ | ||
mercurial \ | ||
whois \ | ||
patch \ | ||
perl \ | ||
python3 \ | ||
python3-dev \ | ||
rsync \ | ||
sed \ | ||
tar \ | ||
vim \ | ||
unzip \ | ||
zip \ | ||
wget \ | ||
curl \ | ||
bison \ | ||
flex \ | ||
file \ | ||
libssl-dev \ | ||
libfdt-dev \ | ||
libgtk-3-dev \ | ||
clang \ | ||
syslinux-utils \ | ||
libelf-dev | ||
|
||
# Sometimes Buildroot need proper locale, e.g. when using a toolchain | ||
# based on glibc. | ||
RUN locale-gen en_US.utf8 | ||
|
||
ENV USER root | ||
|
||
RUN git clone git://git.buildroot.net/buildroot --depth=1 --branch=master /root/buildroot | ||
|
||
# copy and run the flutter manager script | ||
COPY scripts/dahlia_flutter_manager.sh /root/dahlia_flutter_manager.sh | ||
RUN bash ./root/dahlia_flutter_manager.sh install | ||
|
||
COPY buildroot/.config /root/buildroot/.config | ||
# copy the config also to /buildroot_output because it will use that config to build | ||
COPY buildroot/.config /buildroot_output/ | ||
|
||
WORKDIR /root/buildroot | ||
|
||
RUN ["/bin/bash"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
OUTPUT_DIR=/buildroot_output | ||
|
||
DOCKER_RUN=docker run \ | ||
--security-opt seccomp=unconfined \ | ||
--rm \ | ||
-ti \ | ||
--volumes-from buildroot_output \ | ||
-v $(pwd)/images:$(OUTPUT_DIR)/images \ | ||
ghcr.io/dahliaos/linux:latest | ||
|
||
.PHONY: build | ||
|
||
pull: | ||
docker pull ghcr.io/dahliaos/linux:latest | ||
|
||
volumes: | ||
docker run -i --name buildroot_output ghcr.io/dahliaos/linux:latest /bin/true | ||
|
||
build: pull volumes | ||
@echo "make O=$(OUTPUT_DIR)" | ||
$(DOCKER_RUN) make O=$(OUTPUT_DIR) |
Oops, something went wrong.