Skip to content

Commit 88742fc

Browse files
committed
test snapcraft build #clean-2
1 parent 3edf4b0 commit 88742fc

File tree

1 file changed

+32
-20
lines changed

1 file changed

+32
-20
lines changed

.github/workflows/snap-build.yml

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -10,69 +10,81 @@ jobs:
1010
runs-on: ubuntu-latest
1111
strategy:
1212
matrix:
13-
arch: [amd64, arm64]
13+
include:
14+
- arch: amd64
15+
rust_target: x86_64-unknown-linux-gnu
16+
pkg_config_env: ""
17+
extra_deps: |
18+
libgtk-3-dev
19+
libwebkit2gtk-4.1-dev
20+
libayatana-appindicator3-dev
21+
librsvg2-dev
22+
pkg-config
23+
- arch: arm64
24+
rust_target: aarch64-unknown-linux-gnu
25+
pkg_config_env: "PKG_CONFIG_aarch64_unknown_linux_gnu=aarch64-linux-gnu-pkg-config"
26+
extra_deps: |
27+
gcc-aarch64-linux-gnu
28+
pkg-config-aarch64-linux-gnu
29+
libgtk-3-dev:arm64
30+
libwebkit2gtk-4.1-dev:arm64
31+
libayatana-appindicator3-dev:arm64
32+
librsvg2-dev:arm64
1433
1534
steps:
16-
- name: Checkout code
17-
uses: actions/checkout@v4
35+
- uses: actions/checkout@v4
1836

1937
- name: Install system dependencies
2038
run: |
2139
rm -rf src-tauri/target/release/bundle/deb/*.deb
2240
sudo apt-get update
2341
sudo apt-get install -y \
2442
snapd \
25-
libgtk-3-dev \
26-
libwebkit2gtk-4.1-dev \
27-
libayatana-appindicator3-dev \
28-
librsvg2-dev \
29-
pkg-config \
3043
build-essential \
3144
curl \
3245
gstreamer1.0-plugins-base \
3346
gstreamer1.0-plugins-good \
3447
gstreamer1.0-plugins-bad \
3548
gstreamer1.0-plugins-ugly \
3649
gstreamer1.0-libav \
37-
gstreamer1.0-vaapi
50+
gstreamer1.0-vaapi \
51+
${{ matrix.extra_deps }}
3852
sudo snap install snapcraft --classic
3953
4054
- name: Set up Bun
4155
uses: oven-sh/setup-bun@v2
4256
with:
4357
bun-version: latest
4458

45-
- name: Install Rust
59+
- name: Install Rust target
4660
run: |
4761
rustup default stable
48-
rustup target add x86_64-unknown-linux-gnu
49-
rustup target add aarch64-unknown-linux-gnu
62+
rustup target add ${{ matrix.rust_target }}
5063
5164
- name: Rust cache
5265
uses: swatinem/rust-cache@v2
5366
with:
5467
workspaces: 'src-tauri -> src-tauri/target'
5568

5669
- name: Export Tauri signing environment variables
57-
shell: bash
5870
run: |
5971
echo "TAURI_SIGNING_PRIVATE_KEY=${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}" >> $GITHUB_ENV
6072
echo "TAURI_SIGNING_PRIVATE_KEY_PASSWORD=${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}" >> $GITHUB_ENV
6173
6274
- name: Install dependencies
6375
run: bun install
6476

65-
- name: Build Linux Deb
77+
- name: Configure pkg-config
6678
run: |
67-
if [ "${{ matrix.arch }}" = "amd64" ]; then
68-
bun tauri build --bundles deb --target x86_64-unknown-linux-gnu
69-
else
70-
bun tauri build --bundles deb --target aarch64-unknown-linux-gnu
79+
if [ -n "${{ matrix.pkg_config_env }}" ]; then
80+
echo "${{ matrix.pkg_config_env }}" >> $GITHUB_ENV
7181
fi
7282
83+
- name: Build Linux Deb
84+
run: bun tauri build --bundles deb --target ${{ matrix.rust_target }}
85+
7386
- name: Build Snap package
74-
run: |
75-
sudo snapcraft pack --destructive-mode --target-arch=${{ matrix.arch }}
87+
run: sudo snapcraft pack --destructive-mode --target-arch=${{ matrix.arch }}
7688

7789
- name: Upload Snap artifact
7890
uses: actions/upload-artifact@v4

0 commit comments

Comments
 (0)