mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-13 04:37:11 +02:00
This should get rid of a very nasty vector of misbehaving and quite a lot of code which is boilerplate over Wayland protocols at the price of losing support of niche features Most of things served by xcb code on X11 is served by portal code on Wayland, hopefully this tendention will continue and we will be fine just with glib which provides D-Bus and other basic APIs
124 lines
3.5 KiB
YAML
124 lines
3.5 KiB
YAML
name: Linux.
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- '**.md'
|
|
- 'changelog.txt'
|
|
- 'LEGAL'
|
|
- 'LICENSE'
|
|
- '.github/**'
|
|
- '!.github/workflows/linux.yml'
|
|
- 'snap/**'
|
|
- 'Telegram/build/**'
|
|
- 'Telegram/Resources/uwp/**'
|
|
- 'Telegram/Resources/winrc/**'
|
|
- 'Telegram/SourceFiles/platform/win/**'
|
|
- 'Telegram/SourceFiles/platform/mac/**'
|
|
- 'Telegram/Telegram/**'
|
|
- 'Telegram/configure.bat'
|
|
- 'Telegram/Telegram.plist'
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- '**.md'
|
|
- 'changelog.txt'
|
|
- 'LEGAL'
|
|
- 'LICENSE'
|
|
- '.github/**'
|
|
- '!.github/workflows/linux.yml'
|
|
- 'snap/**'
|
|
- 'Telegram/build/**'
|
|
- 'Telegram/Resources/uwp/**'
|
|
- 'Telegram/Resources/winrc/**'
|
|
- 'Telegram/SourceFiles/platform/win/**'
|
|
- 'Telegram/SourceFiles/platform/mac/**'
|
|
- 'Telegram/Telegram/**'
|
|
- 'Telegram/configure.bat'
|
|
- 'Telegram/Telegram.plist'
|
|
|
|
jobs:
|
|
|
|
linux:
|
|
name: Rocky Linux 8
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
matrix:
|
|
defines:
|
|
- ""
|
|
- "DESKTOP_APP_DISABLE_X11_INTEGRATION"
|
|
|
|
env:
|
|
UPLOAD_ARTIFACT: "true"
|
|
|
|
steps:
|
|
- name: Get repository name.
|
|
run: echo "REPO_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
|
|
|
|
- name: Clone.
|
|
uses: actions/checkout@v3.1.0
|
|
with:
|
|
submodules: recursive
|
|
path: ${{ env.REPO_NAME }}
|
|
|
|
- name: First set up.
|
|
run: |
|
|
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin
|
|
docker pull ghcr.io/$GITHUB_REPOSITORY/centos_env
|
|
docker tag ghcr.io/$GITHUB_REPOSITORY/centos_env tdesktop:centos_env
|
|
|
|
- name: Telegram Desktop build.
|
|
run: |
|
|
cd $REPO_NAME
|
|
|
|
DEFINE=""
|
|
if [ -n "${{ matrix.defines }}" ]; then
|
|
DEFINE="-D ${{ matrix.defines }}=ON"
|
|
echo Define from matrix: $DEFINE
|
|
echo "ARTIFACT_NAME=Telegram_${{ matrix.defines }}" >> $GITHUB_ENV
|
|
else
|
|
echo "ARTIFACT_NAME=Telegram" >> $GITHUB_ENV
|
|
fi
|
|
|
|
docker run --rm \
|
|
-v $PWD:/usr/src/tdesktop \
|
|
-e CONFIG=Debug \
|
|
tdesktop:centos_env \
|
|
/usr/src/tdesktop/Telegram/build/docker/centos_env/build.sh \
|
|
-D CMAKE_C_FLAGS_DEBUG="" \
|
|
-D CMAKE_CXX_FLAGS_DEBUG="" \
|
|
-D CMAKE_C_FLAGS="-Werror" \
|
|
-D CMAKE_CXX_FLAGS="-Werror" \
|
|
-D CMAKE_EXE_LINKER_FLAGS="-s" \
|
|
-D TDESKTOP_API_TEST=ON \
|
|
-D DESKTOP_APP_DISABLE_AUTOUPDATE=OFF \
|
|
-D DESKTOP_APP_DISABLE_CRASH_REPORTS=OFF \
|
|
$DEFINE
|
|
|
|
- name: Check.
|
|
run: |
|
|
filePath="$REPO_NAME/out/Debug/Telegram"
|
|
if test -f "$filePath"; then
|
|
echo "Build successfully done! :)"
|
|
|
|
size=$(stat -c %s "$filePath")
|
|
echo "File size of ${filePath}: ${size} Bytes."
|
|
else
|
|
echo "Build error, output file does not exist."
|
|
exit 1
|
|
fi
|
|
|
|
- name: Move artifact.
|
|
if: env.UPLOAD_ARTIFACT == 'true'
|
|
run: |
|
|
cd $REPO_NAME/out/Debug
|
|
sudo mkdir artifact
|
|
sudo mv {Telegram,Updater} artifact/
|
|
- uses: actions/upload-artifact@master
|
|
if: env.UPLOAD_ARTIFACT == 'true'
|
|
name: Upload artifact.
|
|
with:
|
|
name: ${{ env.ARTIFACT_NAME }}
|
|
path: ${{ env.REPO_NAME }}/out/Debug/artifact/
|