summaryrefslogtreecommitdiff
path: root/.github/workflows/snap.yml
blob: 4e9aa168cd1479d23bd499b6c01a84c70788b633 (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
on:
  workflow_dispatch:
    inputs:
      source-run-id:
        description: run id of the workflow that generated the artifact
        required: true
        type: string
      source-artifact-id:
        description: source tarball built during build-dist
        required: true
        type: string

name: Snap

jobs:
  build:
    strategy:
      fail-fast: false
      matrix:
        os:
          [namespace-profile-ghostty-snap, namespace-profile-ghostty-snap-arm64]
    runs-on: ${{ matrix.os }}
    timeout-minutes: 45
    env:
      ZIG_LOCAL_CACHE_DIR: /zig/local-cache
      ZIG_GLOBAL_CACHE_DIR: /zig/global-cache
    steps:
      - name: Download Source Tarball Artifacts
        uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
        with:
          run-id: ${{ inputs.source-run-id }}
          artifact-ids: ${{ inputs.source-artifact-id }}
          github-token: ${{ github.token }}

      - name: Extract tarball
        run: |
          mkdir dist
          tar --verbose --extract --strip-components 1 --directory dist --file ghostty-source.tar.gz

      - name: Setup Cache
        uses: namespacelabs/nscloud-cache-action@7baedde84bbf5063413d621f282834bc2654d0c1 # v1.2.18
        with:
          path: |
            /nix
            /zig

      - run: sudo apt install -y udev

      - run: sudo systemctl start systemd-udevd

      # Workaround until this is fixed: https://github.com/canonical/lxd-pkg-snap/pull/789
      - run: |
          _LXD_SNAP_DEVCGROUP_CONFIG="/var/lib/snapd/cgroup/snap.lxd.device"
          sudo mkdir -p /var/lib/snapd/cgroup
          echo 'self-managed=true' | sudo tee  "${_LXD_SNAP_DEVCGROUP_CONFIG}"

      - uses: snapcore/action-build@3bdaa03e1ba6bf59a65f84a751d943d549a54e79 # v1.3.0
        with:
          path: dist