mirror of
https://github.com/xiaoyifang/goldendict-ng.git
synced 2024-11-28 07:54:06 +00:00
530e2c1545
autotag maybe failed if other workflow has already created the same tag. use version variable to concat the tag version.
115 lines
4.5 KiB
YAML
115 lines
4.5 KiB
YAML
name: Ubuntu
|
|
# Qt官方没有linux平台的x86包
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- dev
|
|
- staged
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- ".github/**"
|
|
- "howto/**"
|
|
- "*.md"
|
|
- ".clang-format"
|
|
pull_request:
|
|
branches:
|
|
- dev
|
|
- staged
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- ".github/**"
|
|
- "howto/**"
|
|
- "*.md"
|
|
jobs:
|
|
build:
|
|
name: Build
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-20.04]
|
|
qt_ver: [5.15.2]
|
|
qt_arch: [gcc_64]
|
|
steps:
|
|
- name: Install Qt
|
|
uses: jurplel/install-qt-action@v2.13.0
|
|
with:
|
|
version: ${{ matrix.qt_ver }}
|
|
cached: 'false'
|
|
modules: qtwebengine
|
|
- name: ubuntu install thirdparty dependencies
|
|
run: |
|
|
sudo apt-get install git pkg-config build-essential qt5-qmake
|
|
sudo apt-get install libvorbis-dev zlib1g-dev libhunspell-dev x11proto-record-dev
|
|
sudo apt-get install qtdeclarative5-dev libxtst-dev liblzo2-dev libbz2-dev
|
|
sudo apt-get install libao-dev libavutil-dev libavformat-dev libtiff5-dev libeb16-dev
|
|
sudo apt-get install libqt5webkit5-dev libqt5svg5-dev libqt5x11extras5-dev qttools5-dev
|
|
sudo apt-get install qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins doxygen libzstd-dev #libopencc-dev
|
|
sudo ln -sf /usr/bin/x86_64-linux-gnu-ld.gold /usr/bin/ld
|
|
git clone https://github.com/BYVoid/OpenCC
|
|
pwd
|
|
cd OpenCC/
|
|
make PREFIX=/usr -j$(nproc)
|
|
sudo make install
|
|
cd ..
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Set outputs
|
|
id: githash
|
|
run: |
|
|
echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
|
|
- uses: Klemensas/action-autotag@stable
|
|
id: autotag
|
|
with:
|
|
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
|
tag_prefix: "v"
|
|
tag_suffix: "-${{ steps.githash.outputs.sha_short }}"
|
|
- name: build goldendict
|
|
run: |
|
|
qmake CONFIG+=release PREFIX=/usr CONFIG+=zim_support CONFIG+=chinese_conversion_support
|
|
make INSTALL_ROOT=appdir -j`nproc` install; find appdir/
|
|
ls -al
|
|
- name: Build AppImage
|
|
run: |
|
|
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage"
|
|
chmod a+x linuxdeploy-plugin-qt-x86_64.AppImage
|
|
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage"
|
|
chmod a+x linuxdeploy-x86_64.AppImage
|
|
./linuxdeploy-x86_64.AppImage --appdir appdir --output appimage --plugin qt -i redist/icons/goldendict.png -d redist/org.goldendict.GoldenDict.desktop
|
|
- uses: actions/upload-artifact@v2
|
|
with:
|
|
name: AppImage
|
|
path: './*.AppImage*'
|
|
- name: Set outputs
|
|
id: vars
|
|
run: |
|
|
echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
|
|
echo "::set-output name=release_date::$(date +'%Y%m%d')"
|
|
echo "::set-output name=release_time::$(date +'%H%M%S')"
|
|
echo "::set-output name=release_time_clock::$(date +'%H:%M:%S')"
|
|
echo "::set-output name=appname::$(ls *.AppImage*)"
|
|
- name: uploadRelease
|
|
# if: startsWith(github.event.ref, 'refs/tags/')
|
|
uses: svenstaro/upload-release-action@v2
|
|
with:
|
|
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
|
file: ${{ steps.vars.outputs.appname }}
|
|
asset_name: ${{ steps.vars.outputs.appname }}
|
|
tag: v${{ steps.autotag.outputs.version }}-${{ steps.vars.outputs.sha_short }}
|
|
overwrite: true
|
|
release_name: win-ubuntu-macos-${{ github.ref_name }}-${{steps.vars.outputs.release_date}}
|
|
prerelease: true
|
|
body: |
|
|
release on date: ${{steps.vars.outputs.release_date}} time: ${{steps.vars.outputs.release_time_clock}}
|
|
branch: ${{ github.ref_name }}
|
|
commit: ${{ steps.vars.outputs.sha_short }}
|
|
Qt version: ${{ matrix.qt_ver }} ${{ matrix.qt_arch }}
|
|
Windows built with: msvc64 Visual studio 2019
|
|
AppImage built with: Ubuntu-20.04 ,latest gcc
|
|
|
|
This is a prerelease version ,auto build by github action. use on your on risk:-)
|