mirror of
https://github.com/blacktop/ipsw.git
synced 2026-05-08 12:22:26 +00:00
138 lines
4.4 KiB
YAML
138 lines
4.4 KiB
YAML
name: Release
|
|
on:
|
|
push:
|
|
tags:
|
|
- v*.*.*
|
|
# pull_request:
|
|
# branches:
|
|
# - master
|
|
|
|
permissions:
|
|
contents: write
|
|
actions: read
|
|
|
|
jobs:
|
|
goreleaser:
|
|
strategy:
|
|
matrix:
|
|
# platform: [ubuntu-latest, windows-latest, macos-13]
|
|
platform: [ubuntu-latest]
|
|
|
|
runs-on: ${{ matrix.platform }}
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Fetch all tags
|
|
run: git fetch --force --tags
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v6
|
|
with:
|
|
go-version: "1.26"
|
|
|
|
- # LINUX ################################################################
|
|
if: matrix.platform == 'ubuntu-latest'
|
|
name: linux-deps
|
|
run: |
|
|
sudo apt-get -yq install gcc-aarch64-linux-gnu cmake pkg-config jq libusb-1.0-0-dev
|
|
- if: matrix.platform == 'ubuntu-latest'
|
|
name: install-unicorn
|
|
run: |
|
|
cd /tmp
|
|
git clone https://github.com/unicorn-engine/unicorn.git
|
|
cd unicorn
|
|
mkdir build; cd build
|
|
# cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc-aarch64-linux-gnu -DUNICORN_ARCH=aarch64
|
|
cmake .. -DCMAKE_BUILD_TYPE=Release -DUNICORN_ARCH=aarch64
|
|
make
|
|
sudo make install
|
|
# -
|
|
# if: matrix.platform == 'ubuntu-latest'
|
|
# name: setup-snapcraft
|
|
# # FIXME: the mkdirs are a hack for https://github.com/goreleaser/goreleaser/issues/1715
|
|
# run: |
|
|
# sudo apt-get update
|
|
# sudo apt-get -yq --no-install-suggests --no-install-recommends install snapcraft
|
|
# mkdir -p $HOME/.cache/snapcraft/download
|
|
# mkdir -p $HOME/.cache/snapcraft/stage-packages
|
|
# -
|
|
# name: snapcraft-login
|
|
# if: matrix.platform == 'ubuntu-latest'
|
|
# run: snapcraft login --with <(echo "${{ secrets.SNAPCRAFT_LOGIN }}")
|
|
- if: matrix.platform == 'ubuntu-latest'
|
|
name: Run GoReleaser
|
|
uses: goreleaser/goreleaser-action@v7
|
|
with:
|
|
distribution: goreleaser
|
|
version: latest
|
|
args: release --clean -f hack/goreleaser/linux.yml
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- if: matrix.platform == 'ubuntu-latest'
|
|
name: Upload assets
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: ipsw_linux
|
|
path: dist/*
|
|
|
|
# - # WINDOWS ################################################################
|
|
# if: matrix.platform == 'windows-latest'
|
|
# name: windows-deps
|
|
# run: |
|
|
# choco install zig
|
|
# dir C:\ProgramData\chocolatey\bin
|
|
# dir C:\ProgramData\chocolatey\lib\zig\tools
|
|
# -
|
|
# if: matrix.platform == 'windows-latest'
|
|
# name: Run GoReleaser
|
|
# uses: goreleaser/goreleaser-action@v7
|
|
# with:
|
|
# distribution: goreleaser
|
|
# version: latest
|
|
# args: release --clean -f hack/goreleaser/windows.yml
|
|
# env:
|
|
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
# SCOOP_TAP_GITHUB_TOKEN: ${{ secrets.GH_SCOOP }}
|
|
# -
|
|
# if: matrix.platform == 'ubuntu-latest'
|
|
# name: Upload assets
|
|
# uses: actions/upload-artifact@v7
|
|
# with:
|
|
# name: disass_linux
|
|
# path: dist/*
|
|
# -
|
|
# if: matrix.platform == 'windows-latest'
|
|
# name: Upload assets
|
|
# uses: actions/upload-artifact@v7
|
|
# with:
|
|
# name: ipsw_windows
|
|
# path: dist/*
|
|
|
|
# - # MACOS ################################################################
|
|
# if: matrix.platform == 'macos-13'
|
|
# name: macos-deps
|
|
# run: |
|
|
# brew tap anchore/syft
|
|
# brew install libusb unicorn syft
|
|
# # arch -arch arm64 brew install libusb unicorn
|
|
# # arch -arch x86_64 brew install libusb unicorn
|
|
# -
|
|
# if: matrix.platform == 'macos-13'
|
|
# name: Run GoReleaser
|
|
# uses: goreleaser/goreleaser-action@v7
|
|
# with:
|
|
# distribution: goreleaser
|
|
# version: latest
|
|
# args: release --clean -f hack/goreleaser/darwin.yml
|
|
# env:
|
|
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
# SCOOP_TAP_GITHUB_TOKEN: ${{ secrets.GH_SCOOP }}
|
|
# -
|
|
# if: matrix.platform == 'macos-13'
|
|
# name: Upload assets
|
|
# uses: actions/upload-artifact@v7
|
|
# with:
|
|
# name: ipsw_macos
|
|
# path: dist/*
|