168 lines
12 KiB
YAML
168 lines
12 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
# Copyright (C) 2021-present 351ELEC
|
|
# Copyright (C) 2022-present Fewtarius
|
|
|
|
### Based on work by @pkegg
|
|
|
|
name: build-main
|
|
on:
|
|
repository_dispatch:
|
|
types: [release-main]
|
|
|
|
concurrency:
|
|
group: main
|
|
|
|
jobs:
|
|
build:
|
|
timeout-minutes: 1440
|
|
runs-on: main
|
|
steps:
|
|
- uses: hmarr/debug-action@v2
|
|
name: debug
|
|
- name: get current branch as it may not be 'default branch;
|
|
id: branch
|
|
run: |
|
|
branch_arg="${{ github.event.client_payload.branch }}"
|
|
if [[ -z "$branch_arg" ]]; then
|
|
branch_arg="$GITHUB_REF_NAME"
|
|
fi
|
|
echo "branch=$branch_arg" >> $GITHUB_OUTPUT
|
|
- uses: actions/checkout@v3
|
|
name: checkout
|
|
with:
|
|
clean: false
|
|
ref: "${{ steps.branch.outputs.branch }}"
|
|
- name: Get date for artifacts
|
|
id: date
|
|
run: echo "date=$(date +'%Y%m%d')" >> $GITHUB_OUTPUT
|
|
- name: Get short SHA for artifacts
|
|
id: sha
|
|
run: echo "sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
|
|
- name: Get version
|
|
id: version
|
|
run: |
|
|
set -e
|
|
echo "full name: ${{ github.event.repository.full_name }}"
|
|
if [[ "${{ github.event.client_payload.release_tag }}" != "" ]]; then
|
|
echo "version=${{ github.event.client_payload.release_tag }}" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "version=${{ steps.date.outputs.date }}-${{ steps.sha.outputs.sha }}" >> $GITHUB_OUTPUT
|
|
fi
|
|
- name: Build World
|
|
run: |
|
|
set -e
|
|
CUSTOM_VERSION="${{ steps.version.outputs.version }}" DOCKER_WORK_DIR="/work" DOCKER_EXTRA_OPTS="-v /buildroot:/buildroot" make docker-world
|
|
- name: Create release as draft at first to hide during uploads
|
|
if: github.event.action == 'release-main'
|
|
uses: ncipollo/release-action@v1
|
|
with:
|
|
tag: "${{ steps.version.outputs.version }}"
|
|
body: |
|
|
<img src="https://raw.githubusercontent.com/JustEnoughLinuxOS/distribution/dev/distributions/JELOS/logos/jelos-logo.png" width=192> [![Latest Version](https://img.shields.io/github/release/JustEnoughLinuxOS/distribution.svg?color=5998FF&label=latest%20version&style=flat-square)](https://github.com/JustEnoughLinuxOS/distribution/releases/latest) [![Activity](https://img.shields.io/github/commit-activity/m/JustEnoughLinuxOS/distribution?color=5998FF&style=flat-square)](https://github.com/JustEnoughLinuxOS/distribution/commits) [![Pull Requests](https://img.shields.io/github/issues-pr-closed/JustEnoughLinuxOS/distribution?color=5998FF&style=flat-square)](https://github.com/JustEnoughLinuxOS/distribution/pulls) [![Discord Server](https://img.shields.io/discord/948029830325235753?color=5998FF&label=chat&style=flat-square)](https://discord.gg/seTxckZjJy)
|
|
#
|
|
Just Enough Linux Operating System (JELOS) is a community developed Linux distribution for handheld gaming devices. Our goal is to produce an operating system that has the features and capabilities that we need, and to have fun as we develop it.
|
|
|
|
## Licenses
|
|
JELOS is a Linux distribution that is made up of many open-source components. Components are provided under their respective licenses. This distribution includes components licensed for non-commercial use only.
|
|
|
|
### JELOS Branding
|
|
JELOS branding and images are licensed under a [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-nc-sa/4.0/).
|
|
|
|
#### You are free to
|
|
* Share — copy and redistribute the material in any medium or format
|
|
* Adapt — remix, transform, and build upon the material
|
|
|
|
#### Under the following terms
|
|
* Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
|
|
* NonCommercial — You may not use the material for commercial purposes.
|
|
* ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
|
|
|
|
### JELOS Software
|
|
Copyright 2021-present Fewtarius
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
|
|
## Installation
|
|
* Download the latest version of JELOS.
|
|
* Decompress the image.
|
|
* Write the image to an SDCARD using an imaging tool. Common imaging tools include [Balena Etcher](https://www.balena.io/etcher/), [Raspberry Pi Imager](https://www.raspberrypi.com/software/), and [Win32 Disk Imager](https://sourceforge.net/projects/win32diskimager/). If you're skilled with the command line, dd works fine too.
|
|
|
|
### Installation Package Downloads
|
|
|**Device/Platform**|**Download Package**|**Documentation**|
|
|
|----|----|----|
|
|
|**Anbernic RG351P/M, ODROID Go Advance, ODROID Go Super**|[JELOS-RK3326.aarch64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3326.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/RK3326/)|
|
|
|**Anbernic RG353P/M/V/VS, RG503, Powkiddy RK2023, RGB30**|[JELOS-RK3566.aarch64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3566.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/RK3566/)|
|
|
|**Anbernic RG552**|[JELOS-RK3399.aarch64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3399.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/RK3399/)|
|
|
|**Atari VCS, AOKZOE, Ayaneo, Ayn, GPD, and other x86_64 devices**|[JELOS-AMD64.x86_64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-AMD64.x86_64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/AMD64/)|
|
|
|**Hardkernel ODROID Go Ultra, Powkiddy RGB10 Max 3 Pro**|[JELOS-S922X.aarch64-${{ steps.version.outputs.version }}-Odroid_GOU.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-S922X.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/S922X/)|
|
|
|**Hardkernel ODROID N2/N2+**|[JELOS-S922X.aarch64-${{ steps.version.outputs.version }}-Odroid_N2.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-S922X.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/S922X/)|
|
|
|**Orange Pi 5, and Indiedroid Nova**|[JELOS-RK3588.aarch64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3588.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/RK3588/)|
|
|
|**Powkiddy x55**|[JELOS-RK3566-X55.aarch64-${{ steps.version.outputs.version }}.img.gz](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3566-X55.aarch64-${{ steps.version.outputs.version }}.img.gz)|[documentation](/documentation/PER_DEVICE_DOCUMENTATION/RK3566-X55/)|
|
|
|
|
## Upgrading
|
|
* Download and install the update online via the System Settings menu.
|
|
* If you are unable to update online
|
|
* Download the latest version of JELOS from Github
|
|
* Copy the update to your device over the network to your device's update share.
|
|
* Reboot the device, and the update will begin automatically.
|
|
|
|
### Update Package Downloads
|
|
|**Device/Platform**|**Download Package**|
|
|
|----|----|
|
|
|**Anbernic RG351P/M, ODROID Go Advance, ODROID Go Super**|[JELOS-RK3326.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3326.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|**Anbernic RG353P/M/V/VS, RG503, Powkiddy RK2023, RGB30**|[JELOS-RK3566.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3566.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|**Anbernic RG552**|[JELOS-RK3399.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3399.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|****Atari VCS, AOKZOE, Ayaneo, Ayn, GPD, and other x86_64 devices****|[JELOS-AMD64.x86_64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-AMD64.x86_64-${{ steps.version.outputs.version }}.tar)|
|
|
|**Hardkernel ODROID Go Ultra, N2/N2+, Powkiddy RGB10 Max 3 Pro**|[JELOS-S922X.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-S922X.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|**Orange Pi 5, and Indiedroid Nova**|[JELOS-RK3588.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3588.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|**Powkiddy x55**|[JELOS-RK3566-X55.aarch64-${{ steps.version.outputs.version }}.tar](https://github.com/JustEnoughLinuxOS/distribution/releases/download/${{ steps.version.outputs.version }}/JELOS-RK3566-X55.aarch64-${{ steps.version.outputs.version }}.tar)|
|
|
|
|
## Documentation
|
|
|
|
### Contribute
|
|
|
|
* [Building JELOS](https://jelos.org/contribute/build/)
|
|
* [Code of Conduct](https://jelos.org/contribute/code-of-conduct/)
|
|
* [Contributing to JELOS](https://jelos.org/contribute/)
|
|
* [Modifying JELOS](https://jelos.org/contribute/modify/)
|
|
* [Adding Hardware Quirks](https://jelos.org/contribute/quirks/)
|
|
* [Creating Packages](https://jelos.org/contribute/packages/)
|
|
* [Pull Request Template](/PULL_REQUEST_TEMPLATE.md)
|
|
|
|
### Play
|
|
|
|
* [Installing JELOS](https://jelos.org/play/install/)
|
|
* [Updating JELOS](https://jelos.org/play/update/)
|
|
* [Controls](https://jelos.org/play/controls/)
|
|
* [Netplay](https://jelos.org/play/netplay/)
|
|
* [Configuring Moonlight](https://jelos.org/systems/moonlight/)
|
|
* [Device Specific Documentation](/documentation/PER_DEVICE_DOCUMENTATION)
|
|
|
|
### Configure
|
|
|
|
* [Optimizations](https://jelos.org/configure/optimizations/)
|
|
* [Shaders](https://jelos.org/configure/shaders/)
|
|
* [Cloud Sync](https://jelos.org/configure/cloud-sync/)
|
|
* [VPN](https://jelos.org/configure/vpn/)
|
|
|
|
### Other
|
|
|
|
* [Frequently Asked Questions](https://jelos.org/faqs/)
|
|
* [Donating to JELOS](https://jelos.org/donations/)
|
|
|
|
artifacts: "release/*"
|
|
prerelease: false
|
|
draft: true
|
|
token: ${{ secrets.REPO_ACCESS }}
|
|
owner: JustEnoughLinuxOS
|
|
repo: distribution
|