Skip to content

3.0.2

3.0.2 #30

Workflow file for this run

name: Alpine-appimage
on:
release:
types: [created] # Triggers on release created
workflow_dispatch:
jobs:
build-and-create-appimage:
runs-on: ubuntu-latest
container:
image: alpine:latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install build essentials and dependencies
run: |
apk update
apk add --no-cache \
build-base \
taglib-dev \
fftw-dev \
chafa-dev \
opus-dev \
opusfile-dev \
libvorbis-dev \
libogg-dev \
glib-dev \
wget git desktop-file-utils \
squashfs-tools \
patchelf \
musl \
musl-dev \
gcompat
- name: Build code with static linking
run: |
# export CC=musl-gcc
# export LDFLAGS="-static -Wl,-z,relro,-lz"
make
- name: Prepare AppDir
run: |
mkdir -p appdir/usr/bin
chmod +x ./kew
mv ./kew appdir/usr/bin/
mkdir -p appdir/usr/lib
- name: Download uploadtool
run: |
wget -q https://github.com/probonopd/uploadtool/raw/master/upload.sh
chmod +x upload.sh
mv upload.sh /usr/local/bin/uploadtool
- name: Download and prepare appimagetool
run: |
wget -O appimagetool-x86_64.AppImage -c https://github.com/$(wget -q https://github.com/probonopd/go-appimage/releases/expanded_assets/continuous -O - | grep "appimagetool-.*-x86_64.AppImage" | head -n 1 | cut -d '"' -f 2)
if [ ! -f appimagetool-*.AppImage ]; then
echo "appimagetool download failed"; exit 1;
fi
chmod +x appimagetool-x86_64.AppImage
- name: Use appimagetool with --appimage-extract-and-run
run: |
./appimagetool-x86_64.AppImage --appimage-extract-and-run deploy appdir/usr/share/applications/kew.desktop
- name: Create AppImage
run: |
mkdir -p output
APPIMAGE_EXTRACT_AND_RUN=1 \
ARCH=$(uname -m) \
VERSION=$(./appdir/usr/bin/kew --version | awk -F": " 'FNR==6 {printf $NF}') \
./appimagetool-*.AppImage ./appdir
- name: Move and Rename kew AppImage
run: |
mv kew*.AppImage output/kew
chmod +x output/kew
- name: Release
uses: marvinpinto/action-automatic-releases@latest
with:
title: kew appImage (musl systems)
automatic_release_tag: stable-musl
prerelease: false
draft: true
files: |
output/kew
repo_token: ${{ secrets.GITHUB_TOKEN }}