Bluesky app fork with some witchin' additions 💫
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

add build workflow

+42 -23
+42 -23
.tangled/workflows/build-android.yml
··· 1 1 when: 2 - - event: ["manual"] 2 + - event: ["push", "manual"] 3 3 branch: ["main"] 4 4 5 5 engine: "nixery" ··· 7 7 dependencies: 8 8 nixpkgs: 9 9 - nodejs-slim_20 10 - - yarn 10 + - pnpm 11 11 - temurin-jre-bin-17 12 12 - gradle 13 13 - androidenv.androidPkgs.ndk-bundle 14 14 - justbuild 15 + 16 + environment: 17 + NODE_ENV: "production" 18 + EXPO_PUBLIC_ENV: "production" 19 + REPO_RKEY: "3mgbgng5sgv22" 15 20 16 21 steps: 17 - - name: Install dependencies 18 - command: "yarn install --frozen-lockfile" 22 + - name: install dependencies 23 + command: "pnpm i --frozen-lockfile" 19 24 20 - - name: Copy example build settings 21 - command: | 22 - cp .env.example .env 23 - cp google-services.json.example google-services.json 25 + - name: copy google-services.json 26 + command: "cp google-services.json.example google-services.json" 27 + 28 + - name: update translations 29 + command: "just intl" 24 30 25 - - name: Build 31 + - name: build app 26 32 command: "just dist-build-android-gradle" 27 33 28 - - name: Rename APK 34 + - name: install goat 35 + command: "go install github.com/bluesky-social/goat@latest" 36 + 37 + - name: upload apk as tangled artifact 29 38 command: | 30 - mv android/app/build/outputs/apk/release/app-release.apk android/app/build/outputs/apk/release/witchsky-v${{ github.run_number }}.apk 39 + export REPO_URL="at://${TANGLED_REPO_DID}/sh.tangled.repo/${REPO_RKEY}" 40 + export TAG_BYTES=$(git rev-parse "latest"^{tag} | xxd -r -p | base64 | tr -d '=') 41 + 42 + goat account login -u "${TANGLED_REPO_DID}" -p "${APP_PASSWORD}" 31 43 32 - - name: Upload artifact 33 - uses: actions/upload-artifact@v4 34 - with: 35 - name: android 36 - path: android/app/build/outputs/apk/release/witchsky-v${{ github.run_number }}.apk 44 + export BLOB_JSON=$(goat blob upload android/app/build/outputs/apk/release/app-release.apk) 45 + echo "$BLOB_JSON" 37 46 38 - - name: Publish release 39 - uses: softprops/action-gh-release@v2 40 - if: github.ref == 'refs/heads/main' 41 - with: 42 - name: Witchsky v${{ github.run_number }} 43 - tag_name: witchsky-v${{ github.run_number }} 44 - files: android/app/build/outputs/apk/release/witchsky-v${{ github.run_number }}.apk 47 + cat > artifact.json <<-EOF 48 + { 49 + "$type": "sh.tangled.repo.artifact", 50 + "artifact": ${BLOB_JSON}, 51 + "createdAt": "$(date -Iseconds)", 52 + "name": "app-release.apk", 53 + "repo": "at://${TANGLED_REPO_DID}/sh.tangled.repo/${REPO_RKEY}", 54 + "repoDid": "did:plc:jxyet52fsuehatdast6y3zus", 55 + "tag": { 56 + "$bytes": "${TAG_BYTES}" 57 + } 58 + } 59 + EOF 60 + cat artifact.json 61 + 62 + goat record delete --collection sh.tangled.repo.artifact --rkey witchsky-latest-apk 63 + goat record create --rkey witchsky-latest-apk artifact.json