This commit is contained in:
Gizzy
2024-12-20 13:12:39 +00:00
13 changed files with 553 additions and 100 deletions

View File

@@ -37,6 +37,15 @@ jobs:
- name: Build (arm64)
run: npm run build -- --arch arm64
- name: Download appimagelint and its deps
run: |
sudo apt install fuse -y
wget https://github.com/TheAssassin/appimagelint/releases/download/continuous/appimagelint-x86_64.AppImage
chmod +x appimagelint-x86_64.AppImage
- name: Check the appimage(s)
run: ./appimagelint-x86_64.AppImage dist/*.AppImage
- name: Upload Linux Artifacts
uses: actions/upload-artifact@v4
id: upload-artifact
@@ -56,78 +65,78 @@ jobs:
name: checksums
path: sha256sum.txt
# build-windows:
# name: Build bsky-desktop (Windows)
# runs-on: windows-latest
# env:
# ext: "exe"
# GITHUB_TOKEN: ${{ secrets.GHT }}
build-windows:
name: Build bsky-desktop (Windows)
runs-on: windows-latest
env:
ext: "exe"
GITHUB_TOKEN: ${{ secrets.GHT }}
# steps:
# - name: Checkout git repo
# uses: actions/checkout@v3
steps:
- name: Checkout git repo
uses: actions/checkout@v3
# - name: Setup node and npm
# uses: actions/setup-node@v3
# with:
# node-version: 16
- name: Setup node and npm
uses: actions/setup-node@v3
with:
node-version: 16
# - name: Install dependencies
# run: npm install
- name: Install dependencies
run: npm install
# - name: Build (x64)
# run: npm run build -- --arch x64
- name: Build (x64)
run: npm run build -- --arch x64
# - name: Build (arm64)
# run: npm run build -- --arch arm64
- name: Build (arm64)
run: npm run build -- --arch arm64
# - name: Upload Windows Artifacts
# uses: actions/upload-artifact@v4
# id: upload-artifact
# with:
# name: windows-artifacts
# path: |
# dist/*.exe
# dist/latest*.yml
- name: Upload Windows Artifacts
uses: actions/upload-artifact@v4
id: upload-artifact
with:
name: windows-artifacts
path: |
dist/*.exe
dist/latest*.yml
# build-macos:
# name: Build bsky-desktop (macOS)
# runs-on: macos-latest
# env:
# ext: "dmg"
# GITHUB_TOKEN: ${{ secrets.GHT }}
build-macos:
name: Build bsky-desktop (macOS)
runs-on: macos-latest
env:
ext: "dmg"
GITHUB_TOKEN: ${{ secrets.GHT }}
# steps:
# - name: Checkout git repo
# uses: actions/checkout@v3
steps:
- name: Checkout git repo
uses: actions/checkout@v3
# - name: Setup node and npm
# uses: actions/setup-node@v3
# with:
# node-version: 16
- name: Setup node and npm
uses: actions/setup-node@v3
with:
node-version: 16
# - name: Install dependencies
# run: npm install
- name: Install dependencies
run: npm install
# - name: Build (x64)
# run: npm run build -- --arch x64
- name: Build (x64)
run: npm run build -- --arch x64
# - name: Build (arm64)
# run: npm run build -- --arch arm64
- name: Build (arm64)
run: npm run build -- --arch arm64
# - name: Upload macOS Artifacts
# uses: actions/upload-artifact@v4
# id: upload-artifact
# with:
# name: macos-artifacts
# path: |
# dist/*.dmg
# dist/latest*.yml
- name: Upload macOS Artifacts
uses: actions/upload-artifact@v4
id: upload-artifact
with:
name: macos-artifacts
path: |
dist/*.dmg
dist/latest*.yml
release:
name: Create Release
runs-on: ubuntu-latest
needs: [build-linux]
needs: [build-linux, build-windows, build-macos]
outputs:
version_tag: ${{ steps.version.outputs.version }}
env:
@@ -147,17 +156,17 @@ jobs:
name: linux-artifacts
path: dist/linux
#- name: Download Windows Artifacts
# uses: actions/download-artifact@v4
# with:
# name: windows-artifacts
# path: dist/windows
- name: Download Windows Artifacts
uses: actions/download-artifact@v4
with:
name: windows-artifacts
path: dist/windows
#- name: Download macOS Artifacts
# uses: actions/download-artifact@v4
# with:
# name: macos-artifacts
# path: dist/macos
- name: Download macOS Artifacts
uses: actions/download-artifact@v4
with:
name: macos-artifacts
path: dist/macos
- name: Display structure of downloaded files
run: ls -R dist
@@ -165,7 +174,7 @@ jobs:
- name: Merge latest .ymls
uses: mikefarah/yq@v4.44.6
with:
cmd: yq ea '. as $item ireduce ({}; . * $item )' dist/*/*.yml > dist/combined.yml
cmd: yq eval-all '. as $item ireduce ({}; . * $item )' dist/*/*.yml > merged.yml
- name: Upload Release
id: create_release
@@ -176,9 +185,9 @@ jobs:
generate_release_notes: true
files: |
dist/linux/*.AppImage
# dist/windows/*.exe
# dist/macos/*.dmg
# dist/combined.yml
dist/windows/*.exe
dist/macos/*.dmg
merged.yml
aur:
name: Publish to AUR
@@ -191,31 +200,38 @@ jobs:
- name: Checkout git repo
uses: actions/checkout@v3
- name: Install jq
run: sudo apt-get update && sudo apt-get install jq -y
- name: Download checksums
uses: actions/download-artifact@v4
with:
name: checksums
path: ./sha256sum.txt
path: .
- name: List downloaded files
run: ls -R
- name: Show content of sha256sum.txt
run: cat sha256sum.txt
- name: Get app version
id: version
uses: pchynoweth/action-get-npm-version@1.1.1
- name: Extract checksum from sha256sum.txt and change build version
run: |
echo ${{ steps.version.outputs.version }}
new_checksum=$(awk 'NR==1 { print $1 }' ./sha256sum.txt)
sed -i "s|sha256sums=('SKIP' 'SKIP')|sha256sums=('$new_checksum' 'SKIP')|" ./build/PKGBUILD
sed -i "s/^pkgver=.*$/pkgver=${{ steps.version.outputs.version }}/" ./build/PKGBUILD
cat ./build/PKGBUILD
# - name: Publish AUR package
# if: false
# uses: KSXGitHub/github-actions-deploy-aur@3.0.1
# with:
# pkgname: bskydesktop
# pkgbuild: ./build/PKGBUILD
# commit_username: ${{ secrets.AUR_USERNAME }}
# commit_email: ${{ secrets.AUR_EMAIL }}
# ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
# commit_message: New Version
# ssh_keyscan_types: rsa,ecdsa,ed25519
- name: Publish AUR package
uses: KSXGitHub/github-actions-deploy-aur@v3.0.1
with:
pkgname: bskydesktop
pkgbuild: ./build/PKGBUILD
commit_username: ${{ secrets.AUR_USERNAME }}
commit_email: ${{ secrets.AUR_EMAIL }}
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
commit_message: New Version
ssh_keyscan_types: rsa,ecdsa,ed25519