This commit is contained in:
Merlin Jehli 2024-04-19 17:58:16 +02:00
commit fbe1ac940a
Signed by: FML128
GPG key ID: 76DE785F9DC31C59
10 changed files with 121 additions and 0 deletions

View file

@ -0,0 +1,53 @@
name: Build Image
on:
push:
branches:
- main
concurrency:
group: build-image-${{ github.repository }}
cancel-in-progress: true
jobs:
build-image:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Create Version
id: version
run: |
echo "RELEASE_VERSION=${GITHUB_RUN_NUMBER}${GITHUB_RUN_ATTEMPT}"
echo "RELEASE_VERSION=${GITHUB_RUN_NUMBER}${GITHUB_RUN_ATTEMPT}" >> "${GITHUB_OUTPUT}"
#TODO: implement better versioning
- name: Build or Restore aur
if: steps.cache-aur-restore.outputs.cache-hit != 'true'
uses: https://git.fml128.ch/FML128/idkyet-builder-action/aur@main
with:
layer_config_file: layers_config.yml
- name: Build images
uses: https://git.fml128.ch/FML128/idkyet-builder-action/builder@main
with:
layer_config_file: layers_config.yml
out_dir: ${{ gitea.workspace }}/out
version: ${{ steps.version.outputs.RELEASE_VERSION }}
sb_db_pem: ${{ secrets.SB_DB_PEM }}
sb_db_key: ${{ secrets.SB_DB_KEY }}
api_auth_token: ${{ secrets.API_AUTH_TOKEN }}
- name: Upload Packages
run: |
cd ${{ gitea.workspace }}/out
for f in *;do
echo "Uploading $f"
du -sh $f
curl --user "${{ gitea.actor }}:${{ secrets.PACKET_TOKEN }}" \
--upload-file "$f" \
"https://git.fml128.ch/api/packages/${{ github.repository_owner }}/generic/${GITHUB_REPOSITORY#*/}/${{ steps.version.outputs.RELEASE_VERSION }}/$f"
done
- name: If failure delete packages
if: failure()
run: |
curl --user "${{ gitea.actor }}:${{ secrets.PACKET_TOKEN }}" \
-X DELETE \
"https://git.fml128.ch/api/packages/${{ github.repository_owner }}/generic/${GITHUB_REPOSITORY#*/}/${{ steps.version.outputs.RELEASE_VERSION }}"

10
README.md Normal file
View file

@ -0,0 +1,10 @@
# IDKYET Linux
## Introduction
This is a template for use in the IDKYET Linux project. It is a simple template that can be used to create a new project.
## Usage
To use this template, simply fork the contents of this repository into a new repository.
TBW

View file

@ -0,0 +1,7 @@
# yaml-language-server: $schema=https://git.fml128.ch/FML128/idkyet-builder/raw/branch/main/schemas/layer.json
id: example_pc
previous_layer_id: generic_kde
build_mode: 2
secure_boot: true
packets:
- steam

View file

@ -0,0 +1 @@
example_pc

View file

@ -0,0 +1,3 @@
set -e
chmod 644 ./etc/hostname

View file

@ -0,0 +1,2 @@
set -e

View file

@ -0,0 +1,8 @@
# Add secure boot public keys here
This is for systemd-boot's automatic key loading feature. Place your keys here to have them automatically loaded by
systemd-boot.
- db.auth
- KEK.uth
- PK.auth

View file

@ -0,0 +1,13 @@
# yaml-language-server: $schema=https://git.fml128.ch/FML128/idkyet-builder/raw/branch/main/schemas/layer.json
id: generic_kde
previous_layer_id: https://git.fml128.ch/FML128/idkyet-base/kde:2024.04.150200
packets:
- element-desktop
- owncloud-client
aur_packets:
- brave-bin
- jellyfin-media-player
- jetbrains-toolbox
post_tasks:
- echo FMLUPDATE_PACKET_NAME=REPONAME >> /usr/lib/os-release # TODO: replace REPONAME with the name of your repository
- echo FMLUPDATE_USERNAME=GITUSERNAME >> /usr/lib/os-release # TODO: replace GITUSERNAME with your git username

4
layers_config.yml Normal file
View file

@ -0,0 +1,4 @@
# yaml-language-server: $schema=https://git.fml128.ch/FML128/idkyet-builder/raw/branch/main/schemas/builder.json
layer_files:
- generic_kde/generic_kde.yml
- example_pc/example_pc.yml

20
renovate.json Normal file
View file

@ -0,0 +1,20 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"local>FML128/renovate-config"
],
"customManagers": [
{
"description": "idkyet updater",
"customType": "regex",
"fileMatch": [
"^.+\\.ya?ml$"
],
"matchStrings": [
"previous_layer_id:\\s(?<registryUrl>https?://[^/:]+)/(?<depName>[^:]+\\/[^:]+)\\/[^:]+:(?<currentValue>\\S+)"
],
"datasourceTemplate": "gitea-tags",
"versioningTemplate": "loose"
}
]
}