You've already forked distribution
mirror of
https://github.com/armbian/distribution.git
synced 2026-01-06 10:34:06 -08:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
111526b33b | ||
|
|
4bc51fc8a3 | ||
|
|
df43c2ed69 | ||
|
|
469ce95c6e | ||
|
|
c589ed3b73 | ||
|
|
1441ca4c6e |
8
.github/Releases-wip.md
vendored
8
.github/Releases-wip.md
vendored
@@ -1,8 +0,0 @@
|
||||
<p align='center'>
|
||||
<a href='https://www.armbian.com'>
|
||||
<img src='https://raw.githubusercontent.com/armbian/.github/master/profile/tux-two.png' width='400' height='226' alt='Armbian Linux'></a>
|
||||
<br>
|
||||
<img src=https://raw.githubusercontent.com/armbian/.github/master/profile/progress.gif width=50>
|
||||
<br><br>
|
||||
<a href="https://github.com/armbian/build/actions">Build in progress</a></p>
|
||||
</p>
|
||||
163
.github/workflows/generate.yml
vendored
163
.github/workflows/generate.yml
vendored
@@ -1,163 +0,0 @@
|
||||
name: Software packs
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- images/**
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
|
||||
Prepare:
|
||||
|
||||
name: Prepare
|
||||
runs-on: ubuntu-latest
|
||||
#if: ${{ github.repository_owner == 'armbian' }}
|
||||
outputs:
|
||||
matrix: ${{steps.list_dirs.outputs.matrix}}
|
||||
board: ${{steps.list_dirs.outputs.board}}
|
||||
steps:
|
||||
|
||||
- name: Checkout build framework
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: armbian/build
|
||||
path: build
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: distribution
|
||||
|
||||
- name: Run changed-files with defaults on the dir1
|
||||
id: changed-files-for-dir1
|
||||
uses: tj-actions/changed-files@v19
|
||||
with:
|
||||
path: distribution/images
|
||||
|
||||
- name: Prepare matrix
|
||||
id: list_dirs
|
||||
run: |
|
||||
FILENAME="targets.conf"
|
||||
MATRIX="cat build/config/"${FILENAME}" | grep -v \"^$\" | grep -v \"^#\" | cut -f1 -d ' ' | sort | uniq"
|
||||
MATRIX="echo -en \"odroidn2\\nuefi-x86\""
|
||||
echo ::set-output name=board::$(for x in $(eval $MATRIX); do echo $x; done|jq -cnR '[inputs | select(length>0)]' | jq)
|
||||
echo ::set-output name=matrix::$(for x in $(find distribution/images -name SKIP -exec grep -l 'no' {} \; | cut -d"/" -f3); do echo $x; done|jq -cnR '[inputs | select(length>0)]' | jq)
|
||||
|
||||
Build:
|
||||
|
||||
needs: [ Prepare ]
|
||||
runs-on: [ubuntu-latest]
|
||||
if: ${{ needs.Prepare.outputs.matrix != '[]' && needs.Prepare.outputs.matrix != '' }}
|
||||
timeout-minutes: 480
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
node: ${{fromJson(needs.Prepare.outputs.matrix)}}
|
||||
board: ${{fromJson(needs.Prepare.outputs.board)}}
|
||||
steps:
|
||||
|
||||
- name: Checkout build framework
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: armbian/build
|
||||
path: build
|
||||
|
||||
- name: Checkout support scripts
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: armbian/scripts
|
||||
path: scripts
|
||||
|
||||
- name: Checkout software distribution
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: distribution
|
||||
|
||||
- name: Pull Docker image
|
||||
run: |
|
||||
sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION | cut -d"." -f1-2)"-$(dpkg --print-architecture)"
|
||||
|
||||
- name: Import GPG key
|
||||
uses: crazy-max/ghaction-import-gpg@v3
|
||||
with:
|
||||
|
||||
gpg-private-key: ${{ secrets.GPG_KEY1 }}
|
||||
passphrase: ${{ secrets.GPG_PASSPHRASE1 }}
|
||||
workdir: scripts
|
||||
git-user-signingkey: true
|
||||
git-commit-gpgsign: true
|
||||
|
||||
- name: Preparing
|
||||
run: |
|
||||
|
||||
mkdir -p build/userpatches
|
||||
sudo cp build/config/templates/* build/userpatches/
|
||||
sudo cp -R distribution/images/${{ matrix.node }}/overlay build/userpatches/
|
||||
sudo cp distribution/images/${{ matrix.node }}/customize-image.sh build/userpatches/
|
||||
sudo sed -i "s/^#DOCKER_FLAGS+=(--privileged)/DOCKER_FLAGS+=(--privileged)/" build/userpatches/config-docker.conf
|
||||
sudo sed -i "s/^VERSION=.*/VERSION=\$(cat \$SRC\/VERSION | cut -d\".\" -f1-2)\"-\$(dpkg --print-architecture)\"/" build/userpatches/config-docker.conf
|
||||
sudo sed -i "s/^BASE_IMAGE=.*/BASE_IMAGE=\"ubuntu:jammy\"/" build/userpatches/config-docker.conf
|
||||
sudo sed -i 's/armbian:/ghcr.io\/armbian\/build:/g' build/userpatches/config-docker.conf
|
||||
sudo sed -i "s/ -it/ -i/" build/userpatches/config-docker.conf
|
||||
OLD="ghcr.io/armbian/build:$(cat build/VERSION | cut -d"." -f1-2)"-$(dpkg --print-architecture)
|
||||
sudo cp scripts/VERSION build/VERSION
|
||||
sudo docker tag $OLD ghcr.io/armbian/build:$(cat build/VERSION | cut -d"." -f1-2)-$(dpkg --print-architecture)
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
|
||||
BOARD=${{ matrix.board }}
|
||||
APP=${{ matrix.node }}
|
||||
VERSION=$(cat build/VERSION)
|
||||
RELEASE=$(cat distribution/images/${APP}/RELEASE)
|
||||
SKIP=$(cat distribution/images/${APP}/SKIP)
|
||||
|
||||
if [[ "$SKIP" != "yes" ]]; then
|
||||
cd build
|
||||
sudo touch .ignore_changes
|
||||
./compile.sh docker \
|
||||
BETA="no" \
|
||||
RELEASE="${RELEASE}" \
|
||||
BUILD_DESKTOP="no" \
|
||||
BUILD_MINIMAL="yes" \
|
||||
KERNEL_ONLY="no" \
|
||||
VENDOR="Armbian_${APP^}" \
|
||||
KERNEL_CONFIGURE="no" \
|
||||
COMPRESS_OUTPUTIMAGE="xz" \
|
||||
FORCE_USE_RAMDISK="yes" \
|
||||
FAST_CREATE_IMAGE="yes" \
|
||||
BOARD="${BOARD}" \
|
||||
USE_TORRENT="yes" \
|
||||
USE_MAINLINE_GOOGLE_MIRROR="yes" \
|
||||
BRANCH="current" \
|
||||
SKIP_EXTERNAL_TOOLCHAINS="yes" \
|
||||
OFFLINE_WORK="yes" \
|
||||
BSPFREEZE="yes" \
|
||||
REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-bsp,armbian-firmware" \
|
||||
EXPERT="yes"
|
||||
|
||||
cd output/images
|
||||
mv *.xz "${APP^}"_"${BOARD^}"_Armbian_"${VERSION}".img.xz
|
||||
sha256sum "${APP^}"_"${BOARD^}"_Armbian_"${VERSION}".img.xz > "${APP^}"_"${BOARD^}"_Armbian_"${VERSION}".img.xz.sha
|
||||
echo ${{ secrets.GPG_PASSPHRASE1 }} | gpg --passphrase-fd 0 --armor --detach-sign --pinentry-mode loopback --batch --yes *.img.xz
|
||||
fi
|
||||
|
||||
- name: Declare vars
|
||||
id: vars
|
||||
shell: bash
|
||||
run: |
|
||||
cd build
|
||||
echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
|
||||
echo "::set-output name=timenow::$(date +'%Y-%m-%d')"
|
||||
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
body_path: distribution/README.md
|
||||
tag_name: ${{ matrix.board }}/apps
|
||||
files: build/output/images/*_Armbian_*
|
||||
draft: false
|
||||
prerelease: false
|
||||
name: "Armbian turnkey applications for ${{ matrix.board }}"
|
||||
37
.github/workflows/sync.yml
vendored
37
.github/workflows/sync.yml
vendored
@@ -1,37 +0,0 @@
|
||||
name: Sync
|
||||
on:
|
||||
# schedule:
|
||||
# - cron: '0 1 * * *'
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
Adjust:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Add
|
||||
run: |
|
||||
|
||||
echo '<h3 align=center><a href="#build-tools"><img src="https://raw.githubusercontent.com/armbian/build/master/.github/armbian-logo.png" alt="Armbian logo" width="144"></a><br>applications distribution</h3>' > README.md
|
||||
echo -en "<p align=right> </p>\n" >> README.md
|
||||
echo -en "WIP with hardcoded values for targets\n" >> README.md
|
||||
|
||||
- name: Add
|
||||
run: |
|
||||
|
||||
git pull
|
||||
git add README.md
|
||||
|
||||
- name: Commit files
|
||||
run: |
|
||||
git config --local user.email "info@armbian.com"
|
||||
git config --local user.name "Armbianworker"
|
||||
git commit --allow-empty -m "Update github actions" -a
|
||||
- name: Push changes
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
branch: ${{ github.ref }}
|
||||
51
.github/workflows/test.yml
vendored
51
.github/workflows/test.yml
vendored
@@ -1,51 +0,0 @@
|
||||
name: Make index
|
||||
#
|
||||
# Generates index
|
||||
#
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
workflow_run:
|
||||
workflows: ["Build train"]
|
||||
types:
|
||||
- completed
|
||||
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Make build list
|
||||
run: |
|
||||
|
||||
sudo npm install --location=global json || true
|
||||
truncate README.me --size=0 || true
|
||||
echo "| Image | GPG | SHA | Release | Branch | Variant | Kernel |" >> README.tmp
|
||||
echo "| --- | :--: | :--: | :--: | :--: | :--: | --- |" >> README.tmp
|
||||
gh release view $(gh release list | awk '{print $1}' | head -1) --json assets 2>/dev/null | python3 -mjson.tool | sed '1,2d;$d' | json -ga name url -d, | sort | (
|
||||
while read -r line; do
|
||||
name=$(echo $line | cut -d"," -f1)
|
||||
url=$(echo $line | cut -d"," -f2)
|
||||
if [ "${name: -3}" == ".xz" ]; then
|
||||
out_name=$(echo $name | cut -d"_" -f3)
|
||||
out_release=$(echo $name | cut -d"_" -f4)
|
||||
out_branch=$(echo $name | cut -d"_" -f5)
|
||||
out_kernel=$(echo $name | cut -d"_" -f6-7 | cut -d"." -f1-3 | cut -d"_" -f1)
|
||||
out_desktop=$(echo $name | cut -d"_" -f7)
|
||||
out_desktop=${out_desktop:-cli}
|
||||
echo -ne "| [$out_name]($url) | [:file_folder:]($url".asc") | [:file_folder:]($url".sha") | $out_release | $out_branch | $out_desktop | $out_kernel |\n" >> README.tmp
|
||||
fi
|
||||
done
|
||||
)
|
||||
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
path: README.tmp
|
||||
name: assets
|
||||
if-no-files-found: ignore
|
||||
13
README.md
13
README.md
@@ -1,3 +1,10 @@
|
||||
<h3 align=center><a href="#build-tools"><img src="https://raw.githubusercontent.com/armbian/build/master/.github/armbian-logo.png" alt="Armbian logo" width="144"></a><br>applications distribution</h3>
|
||||
<p align=right> </p>
|
||||
WIP with hardcoded values for targets
|
||||
<p align="center">
|
||||
<a href="#">
|
||||
<img src="https://raw.githubusercontent.com/armbian/build/master/.github/armbian-logo.png" alt="Armbian logo" width="144">
|
||||
</a><br>
|
||||
<strong>Armbian Linux Applications Images</strong>
|
||||
<h2 align=center><a href=https://github.com/armbian/distribution/releases/latest><img src="https://img.shields.io/badge/Download%20latest%20images%3F-white?style=for-the-badge&color=green"></a> </h2>
|
||||
</p>
|
||||
|
||||
- 12.1.2024 [Home Assistant](https://www.home-assistant.io/) supervised appliance
|
||||
- 2.2.2024 [Kali Linux](https://www.kali.org/) (Debian Trixie with pre-enabled Kali repository)
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
bullseye
|
||||
@@ -1 +0,0 @@
|
||||
yes
|
||||
@@ -1,26 +0,0 @@
|
||||
apt-get install --yes gnupg
|
||||
wget -O "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc" https://packages.openmediavault.org/public/archive.key
|
||||
apt-key add "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc"
|
||||
cat <<EOF >> /etc/apt/sources.list.d/openmediavault.list
|
||||
deb https://packages.openmediavault.org/public shaitan main
|
||||
# deb https://downloads.sourceforge.net/project/openmediavault/packages shaitan main
|
||||
## Uncomment the following line to add software from the proposed repository.
|
||||
# deb https://packages.openmediavault.org/public shaitan-proposed main
|
||||
# deb https://downloads.sourceforge.net/project/openmediavault/packages shaitan-proposed main
|
||||
## This software is not part of OpenMediaVault, but is offered by third-party
|
||||
## developers as a service to OpenMediaVault users.
|
||||
# deb https://packages.openmediavault.org/public shaitan partner
|
||||
# deb https://downloads.sourceforge.net/project/openmediavault/packages shaitan partner
|
||||
EOF
|
||||
export LANG=C.UTF-8
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
export APT_LISTCHANGES_FRONTEND=none
|
||||
apt-get update
|
||||
apt-get --yes --auto-remove --show-upgraded \
|
||||
--allow-downgrades --allow-change-held-packages \
|
||||
--no-install-recommends \
|
||||
--option DPkg::Options::="--force-confdef" \
|
||||
--option DPkg::Options::="--force-confold" \
|
||||
install openmediavault-keyring openmediavault
|
||||
|
||||
omv-confdbadm populate
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
jammy
|
||||
@@ -1 +0,0 @@
|
||||
yes
|
||||
@@ -1,23 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "Read / only rootfs"
|
||||
apt-get -y install overlayroot docker.io cgroup-lite
|
||||
sed -i "s/^overlayroot=.*/overlayroot=\"tmpfs\"/" /etc/overlayroot.conf
|
||||
sed -i "s/^overlayroot_cfgdisk=.*/overlayroot_cfgdisk=\"enabled\"/" /etc/overlayroot.conf
|
||||
echo "Openhab"
|
||||
groupadd -g 9001 openhab
|
||||
useradd -g 9001 openhab
|
||||
usermod -aG docker openhab
|
||||
su openhab
|
||||
docker run \
|
||||
--privileged \
|
||||
--name openhab \
|
||||
--net=host \
|
||||
-v /etc/localtime:/etc/localtime:ro \
|
||||
-v /etc/timezone:/etc/timezone:ro \
|
||||
-v openhab_addons:/openhab/addons \
|
||||
-v openhab_conf:/openhab/conf \
|
||||
-v openhab_userdata:/openhab/userdata \
|
||||
-d \
|
||||
--restart=always \
|
||||
openhab/openhab:3.2.0
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
jammy
|
||||
@@ -1 +0,0 @@
|
||||
no
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
echo "Read / only rootfs"
|
||||
apt-get -y
|
||||
echo -e "deb https://downloads.plex.tv/repo/deb public main" > /etc/apt/sources.list.d/plex.list
|
||||
wget -q -O - https://downloads.plex.tv/plex-keys/PlexSign.key | apt-key add - >/dev/null 2>&1
|
||||
apt-get update
|
||||
apt-get -y install plexmediaserver
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
Reference in New Issue
Block a user