Skip to content

Build Uhuru Image Yor #655

Build Uhuru Image Yor

Build Uhuru Image Yor #655

# I used https://github.com/soracqt/myarch as a reference.
# Thanks to soracqt(https://github.com/soracqt).
name: Build Uhuru Image Yor
on:
pull_request:
branches: [ dev ]
schedule:
- cron: '0 3 * * *'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
container:
image: manjarolinux/base:latest
volumes:
- /home/runner/work/uhurudir/uhurudir:/tmp/uhurudir
options: "--privileged"
steps:
- uses: actions/checkout@v3
- name: Update Mirrorlist
run: |
cp ./system/manjaro-mirrorlist.txt /etc/pacman.d/mirrorlist
- name: Install Required Packages
run: |
pacman -Syyu --noconfirm zsh wget git make sudo python3 base-devel cmake ninja qt5-base arch-install-scripts pyalpm squashfs-tools libisoburn dosfstools
- name: Install BlackArch keys and Fetch blackarch-mirrorlist
run: |
wget https://www.blackarch.org/keyring/blackarch-keyring.pkg.tar.xz && \
pacman --noconfirm -U blackarch-keyring.pkg.tar.xz
wget -P /etc/pacman.d/ https://blackarch.org/blackarch-mirrorlist
- name: Populate keyrings
run: |
pacman-key --init
pacman-key --populate manjaro blackarch
- name: Build UhuruOS Yor edition
run: ./build.sh -c zstd --noloopmod --noconfirm --cleanup xfce_yor
- name: Upload artifact
uses: actions/upload-artifact@v1
with:
name: uhuru_x86_64
path: out
release:
runs-on: ubuntu-latest
needs: [build]
steps:
- uses: actions/checkout@v2
- name: Get current date
id: date
run: echo "::set-output name=date::$(date +'%Y.%m.%d')_Yor"
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: uhuru_x86_64
- name: Install jq
run: sudo apt install jq
- name: Upload to anonfiles
id: uploadiso
run: echo "::set-output name=url::Please Download ISO from Github Actions Artifacts or $(curl -s --retry 3 -F file=@`echo UhuruOS-*-x86_64.iso` https://api.anonfiles.com/upload | jq .data.file.url.short )"
- name: Create release
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ steps.date.outputs.date }}
name: ${{ steps.date.outputs.date }}
body: ${{steps.uploadiso.outputs.url}}
draft: false
prerelease: false