blob: a6cfbb4a94a172f3a1fa29990c74ac6b1d44b4dc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
container:
image: 'fedora:latest'
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install dependencies
run: |
dnf update -y
dnf install -y \
autoconf-archive \
clang \
clang-analyzer \
bison \
desktop-file-utils \
flex \
gcc \
git \
gmp-devel \
gtk3 \
libmpc-devel \
libxml2-devel \
make \
mate-common \
mate-desktop-devel \
mpfr-devel \
redhat-rpm-config \
curl \
which \
sha256sum
- name: Set up environment variables
run: |
export CPU_COUNT=$(nproc)
echo "CPU_COUNT=$CPU_COUNT" >> $GITHUB_ENV
echo "REPO_NAME=mate-calc" >> $GITHUB_ENV
echo "OWNER_NAME=mate-desktop" >> $GITHUB_ENV
- name: Generate build system
run: |
NOCONFIGURE=1 ./autogen.sh
- name: Configure
run: |
./configure --enable-compile-warnings=maximum
- name: Build
run: |
make -j $CPU_COUNT
- name: Create distribution archive
run: |
make distcheck
- name: Generate checksums
run: |
for file in mate-calc-*.tar.xz; do
if [ -f "$file" ]; then
sha256sum "$file" > "$file.sha256"
fi
done
- name: Notify release servers
run: |
# Notify MATE release servers (if configured)
if [ -n "${{ secrets.RELEASE_NOTIFY_TOKEN }}" ]; then
curl -X POST -H "Authorization: token ${{ secrets.RELEASE_NOTIFY_TOKEN }}" \
-d '{"tag":"${{ github.ref_name }}","repo":"mate-calc"}' \
https://release.mate-desktop.org/release || echo "Release notification failed"
fi
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
draft: false
prerelease: false
generate_release_notes: true
files: |
mate-calc-*.tar.xz
mate-calc-*.tar.xz.sha256
body: |
Release ${{ github.ref_name }} of MATE Calculator
This release includes the source distribution archive and checksums.
## Installation
Download the `mate-calc-*.tar.xz` file and verify it with the corresponding `.sha256` checksum file:
```bash
sha256sum -c mate-calc-*.tar.xz.sha256
```
Then extract and build:
```bash
tar -xf mate-calc-*.tar.xz
cd mate-calc-*
./configure
make
sudo make install
```
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|