@@ -80,66 +80,29 @@ jobs:
8080 with :
8181 fetch-depth : 0
8282
83- - name : Setup Bun
84- uses : oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
85- with :
86- bun-version : latest
87-
88- - name : Cache Bun dependencies
89- uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
90- with :
91- path : ~/.bun/install/cache
92- key : bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
93- restore-keys : bun-${{ runner.os }}-
94-
95- - name : Setup Rust (android targets)
96- uses : dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable
97- with :
98- toolchain : stable
99- targets : aarch64-linux-android,x86_64-linux-android
100-
101- - name : Install cargo-ndk
102- uses : taiki-e/install-action@15449e3094499af05d8d964a1c884208e4b8b595 # v2
103- with :
104- tool : cargo-ndk
105-
106- - name : Setup Go
107- uses : actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5
83+ - name : Install Nix
84+ uses : DeterminateSystems/nix-installer-action@da36cb69b1c3247ad7a1f931ebfd954a1105ef14 # v14
10885 with :
109- go-version : ' 1.26 '
110- cache : false
86+ extra-conf : |
87+ accept-flake-config = true
11188
112- - name : Cache Go build & modules
113- uses : actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
89+ - name : Cachix
90+ uses : cachix/cachix-action@5f2d7c5294214f71b873db4b969586b980625e71 # v17
11491 with :
115- path : |
116- ~/.cache/go-build
117- ~/go/pkg/mod
118- key : go-${{ runner.os }}-geodat2srs
119- restore-keys : go-${{ runner.os }}-
92+ name : kasumi-proxy
93+ authToken : ${{ secrets.CACHIX_AUTH_TOKEN }}
12094
121- - name : Setup NDK
122- id : setup-ndk
123- uses : nttld/setup-ndk@ed92fe6cadad69be94a966a7ee3271275e62f779 # v1
124- with :
125- ndk-version : r28
126-
127- - name : Install UI dependencies
128- # bun workspace rooted at the repo — install from root against the single bun.lock.
129- run : bun install --frozen-lockfile
130-
131- - name : Lint & test
95+ - name : Install, lint & test
13296 run : |
133- bunx biome check
134- bun run frontend/scripts/check-i18n.ts
135- ( cd frontend && bunx vitest run )
97+ nix develop .#android --command bash -euo pipefail -c '
98+ bun install --frozen-lockfile
99+ bunx biome check
100+ bun run frontend/scripts/check-i18n.ts
101+ ( cd frontend && bunx vitest run )
102+ '
136103
137104 - name : Build debug zip
138- env :
139- NDK_ROOT : ${{ steps.setup-ndk.outputs.ndk-path }}
140- # package-release.sh names the zip itself (artifact-name.sh); the run's
141- # commit is carried by the upload artifact name below.
142- run : scripts/package-release.sh
105+ run : nix develop .#android --command bash -euo pipefail -c 'scripts/package-release.sh'
143106
144107 - name : Upload artifact
145108 uses : actions/upload-artifact@v4
0 commit comments